Skip to content

RELEASE Scylla 0.13 Beta

Tzach Livyatan edited this page Dec 15, 2015 · 4 revisions

The Scylla team is pleased to announce the release of Scylla version 0.13

Scylla is an open source, Cassandra-compatible NoSQL database, with superior performance and consistent low latency This version is an incremental improvement release on the beta series, focus on stability and bug fix. Some of the noteworthy additions are:

  • Add and remove node procedures are now supported with: nodetool decommission, nodetool removenode
  • Additional nodetool operations: nodetool getendpoints, gossipinfo
  • Move to latest release of seastar and scylla-jmx. Full list of scylla, scylla-jmx contributions below.

Downloads binary distributions or launch EC2 AMI : http://www.scylladb.com/download/

Please let us know if you encounter any problem.

Known issues

  • scylla-jmx will not connect to scylla process when installing scylla from packages and updating scylla listen address. To bypass this issue, update scylla listen address to the line starting with ADDR= in file /etc/sysconfig/scylla-jmx, and restart the service with sudo service scylla-jmx restart. The problem does not exist when using the scylla AMI More on this issue here and here

Cheers

Scylla Contributions

Amnon Heiman (11):
      API: add compaction info object
      API: Stubing the compaction manager - workaround
      API: failure_detector modify the get_all_endpoint_states
      API: get snapshot size
      latency: Switch to steady_clock
      histogram: Add started counter
      Estimated histogram: Clean the add interface
      API: Add the get_version implementation to messaging service
      API: Add the get_version to messaging_service swagger definition file
      API: Change the compaction summary to use an object
      column_family: get_snapshot_details should return empty map for no snapshots

Asias He (51):
      migration_manager: Introduce is_ready_for_bootstrap
      storage_service: Enable is_ready_for_bootstrap in join_token_ring
      gossip: Favor newly added node in do_gossip_to_live_member
      storage_service: Detect other bootstrapping/leaving/moving nodes during bootstrap
      streaming: Ignore remote no_such_column_family for stream_transfer_task
      gossip: Fix STATUS field in nodetool gossipinfo
      config: Enable consistent_rangemovement option
      config: Enable join_ring option
      config: Enable load_ring_state option
      config: Enable replace_node option
      config: Enable replace_token option
      config: Enable replace_address and replace_address_first_boot option
      storage_service: Implement is_replacing
      utils: Add get_broadcast_rpc_address and set_broadcast_rpc_address helper
      config: Enable broadcast_rpc_address option
      config: Add more document for options
      storage_service: Remove RPC client in on_dead
      storage_service: Fix MOVED_NODE client event (CASSANDRA-8516)
      transport: Fix wrong message for UP and DOWN event
      transport: Fix duplicate up/down messages sent to native clients
      failure_detector: Improve FD logging when the arrival time is ignored
      storage_service: Fix failed bootstrap/replace attempts being persisted in system.peers
      storage_service: Relax bootstrapping/leaving/moving nodes check in join_token_ring
      storage_service: Relax bootstrapping/leaving/moving nodes check in check_for_endpoint_collision
      database: Move is_replacing and get_replace_address to database class
      range_streamer: Kill FIXME for is_replacing
      range_streamer: Kill one leftover comment
      range_streamer: Simplify multiple_map to map conversion in add_ranges
      range_streamer: Kill FIXME in use_strict_consistency for consistent_rangemovement
      storage_service: Update pending ranges immediately after update of normal tokens
      token_metadata: Add print_pending_ranges for debug print
      failure_detector: Print application_state properly
      failure_detector: Enable phi_convict_threshold option
      gossip: Add shutdown gossip state
      gossip: Do not print node is now part of the cluster during gossip shadow round
      failure_detector: Failure detector detects and ignores local pauses
      failure_detector: Don't mark nodes down before the max local pause interval once paused
      storage_service: Refuse to decommission if not in state NORMAL
      storage_service: Fix transition from write survey to normal mode
      failure_detector: Print versions for gossip states in gossipinfo
      gossip: Mark node as dead even if already left
      Update ORIGIN for gossip and storage_service
      storage_service: Run confirm_replication on cpu zero
      storage_service: Do not ignore future in remove_node
      storage_service: Warn lost of data when remove a node
      failure_detector: Use a standalone logger name
      gossip: Make log message in mark_dead stick to cassandra
      gossip: Fix Assertion `local_is_initialized()' failed
      gossip: Get rid of the handler helper
      gossip: Rename start to start_gossiping
      storage_service: Fix debug build

Avi Kivity (15):
      big_decimal: add default constructor
      Merge seastar upstream
      README: instructions for contributing
      types: introduce emptyable<> template
      types: introduce maybe_empty<T> type alias
      types: empty value support for non-container types
      Merge "optimize the sstable loading step of boot" from Raphael
      types: fix up confusion around empty serialized representation
      Merge "Fix race between population and update in row cache" from Tomasz
      Update scylla-ami submodule
      Merge "Commit log replay - handle corrupted data silently, as non-fatal"
      Merge "backport gosisp and storage_service fix" from Asias
      Merge "API: Stubing the compaction manager" from Amnon
      Merge "nodetool removenode fix + cleanup" from Asias
      Merge "Convert serialization of query::result to use db::serializer<>" from Tomasz

Calle Wilund (5):
      commitlog: Make reading segments with crc/data errors non-fatal
      commitlog_replayer: Handle replay data errors as non-fatal
      commitlog: Add get_flush_count method (for testing)
      commitlog_tests: test cleanup
      commitlog_tests: Add segment corruption tests

Glauber Costa (2):
      commitlog: fix but preventing flushing with default max_size value
      scylla-setup: do not add discard to the command line

Gleb Natapov (10):
      cql transport: catch all exceptions
      messaging: do not kill live connection needlessly
      storage_proxy: filter out natural endpoints from pending endpoint
      cql server: add missing gate during connection access
      cql server: remove connection from notifiers earlier
      storage_proxy: catch exception thrown by mutate_locally in mutate verb handler
      storage_proxy: introduce unique_response_handler object to prevent write request leaks
      storage_proxy: remove unneeded continuation
      storage_proxy: simplify error handling by using this/handle_exception
      messaging: log connection dropping event

Paweł Dziepak (7):
      lsa: fix eviction of large blobs
      scylla-gdb.py: show free, used and total memory
      scylla-gdb.py: show lsa statistics and regions
      lsa: add counters for memory used by large objects
      lsa: add no-op default constructor for segment
      lsa: guarantee that segment_heap doesn't throw
      lsa: fix printing object_descriptor::_alignment

Pekka Enberg (8):
      Merge "Enable more config options" from Asias
      cql3: Add TRUNCATE TABLE alias for TRUNCATE
      Merge "CQL notification + storage_service fix" from Asias
      transport/server: Remove CQL text type from encoding
      Merge "range_streamer fix and cleanup" from Asias
      Merge "Relax bootstrapping/leaving/moving nodes check" from Asias
      types: Fix 'varint' type value compatibility check
      release: prepare for 0.13

Raphael S. Carvalho (7):
      db: introduce parallelism to sstable loading
      sstables: introduce function to return sstable key range
      db: introduce belongs_to_current_shard
      sstables: introduce mark_sstable_for_deletion
      db: optimize the sstable loading process
      sstables: change buf size in read_simple to 128k
      enable more logging for leveled compaction strategy

Takuya ASADA (11):
      dist: use /var/lib/scylla instead of /data on ami
      dist: setup rps on scylla_prepare, not on scylla_run
      dist: support Ubuntu 15.10
      dist: re-initialize RAID on ephemeral disk when stop/restart AMI instance
      dist: use distribution version of antlr3, on Ubuntu 15.10
      dist: fix typo on scylla_prepare
      dist: check supported Ubuntu release
      dist: generate correct distribution codename on debian/changelog
      dist: add swagger-ui and api-doc on rpm package
      dist: add swagger-ui and api-doc on ubuntu package
      dist: use /etc/scylla as SCYLLA_CONF directory on AMI

Tomasz Grabiec (27):
      scylla-gdb.py: Fix scylla column_families command
      storage_proxy: Avoid potential use after move on schema_ptr
      Merge tag 'empty/v3' from https://github.com/avikivity/scylla
      Merge branch 'pdziepak/random-lsa-patches/v3' from seastar-dev.git
      storage_proxy: Remove dead signature
      db: Fix handling of missing column family
      utils: Introduce phased_barrier
      row_cache: Wait for in-flight populations on update
      memtable: Introduce apply(memtable&)
      mutation: Introduce ring_position()
      row_cache: Add default value for partition range in make_reader()
      tests: Avoid potential use after free on partition range
      tests: Add test for populate and update race
      schema_tables: Fix "comment" property not being loaded from storage
      Merge branch 'dev/amnon/latency_clock_v2'
      Relax header dependencies
      Merge tag 'asias/gossip_start_stop/fix/v1' from seastar-dev.git
      bytes_ostream: Make size_type and value_type public
      query: Convert serialization of query::result to use db::serializer<>
      schema_tables: Replace schema_result::value_type with equivalent movable type
      Introduce noexcept_traits
      thrift: Make with_cob() handle not nothrow move constructible types
      Mark move constructors noexcept when possible
      commitlog: Wrap subscription in a unique_ptr<> to make it nothrow movable
      api: Make histogram reduction work on domain value instead of json objects
      Move seastar submodule head
      Merge tag 'tgrabiec/make-future-values-nothrow-move-constructible-v3' from seastar-dev.git

Vlad Zolotarov (2):
      types: map::to_string() - non-empty implementation
      gms::versioned_value: don't use to_sstring_sprintf() directly

Scylla JMX contributions

Amnon Heiman (11):
      Import ApplicationState, EndpointState and HeartBeatState from origin
      FailureDetector: Change getAllEndpointStates implementation
      APIClient: Support Empty histogram
      EstimatedHistogram: Support empty histogram
      RecentEstimatedHistogram: Support empty histogram
      ColumnFamilyStore: Use the combine API with metrics
      ColumnFamilyStore: getSSTableCountPerLevel should return null not empty array
      createColumnFamilyGauge to support double values return from the API
      Import the GCInspectorMXBean from origin
      Main: call the GCInspector register method
      StorageService: Fix a typo in the get snapshots API

Pekka Enberg (6):
      Merge "FailureDetector getAllEndpointStates to use the updated API" from Amnon
      Merge "Support empty histogram from the API" from Amnon
      Merge "Ubuntu package cleanups" from Takuya
      Merge "Adding the GCInspectorMBean" from Amnon
      Merge "Add SCYLLA_HOME, SCYLLA_CONF for systemd/upstart" from Takuya
      release: prepare for 0.13

Takuya ASADA (13):
      dist: support ./SCYLLA-VERSION-GEN on ubuntu package
      dist: specify maven repo directory
      dist: make ubuntu package as 'debian non-native package'
      dist: fix 'missing-license-paragraph-in-dep5-copyright' message on building ubuntu package
      dist: fix 'extended-description-line-too-long' message on building ubuntu package
      dist: fix 'extra-license-file usr/share/doc/scylla-jmx/LICENSE.AGPL.gz' message on building ubuntu package
      dist: cleanup dependency-reduced-pom.xml when rebuilding ubuntu package
      dist: fix 'init.d-script-not-included-in-package etc/init.d/scylla-jmx' message on building ubuntu package
      dist: fix 'ancient-standards-version 3.9.2 (current is 3.9.5)' message on building ubuntu package
      dist: specify maven repo directory
      dist: drop dist/common/scripts/jmx_run, use scripts/scylla-jmx
      dist: export SCYLLA_HOME, SCYLLA_CONF
      dist: do not overwirte sysconfig file on 'yum update'
Clone this wiki locally