RELEASE Scylla 0.17 Beta
Tzach Livyatan edited this page Feb 8, 2016
·
2 revisions
The Scylla team is pleased to announce the release of Scylla version 0.17
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 fixes.
Some of the noteworthy updates are:
-
Support for incremental backups
-
Support for nodetool stop compaction
-
Move to latest release of seastar and scylla-jmx Full list of scylla, scylla-jmx contributions below.
Get started with Scylla 0.17 here.
If you have any questions about the new release, please post to the scylladb-users mailing list.
Scylla Contributions
Amnon Heiman (17):
API: Add version to application state in failure_detection
migration_task: rename logger name
API: storage_service get_logging_level
Add code generation for serializer and deserializer
endpoint_state adds a constructor for all serialized parameters
Changes the versioned_value to make serializeble
Add a constructor to inet_address from uint32_t
A schema definition for gossip_digest_ack
configure.py Add serializer code generation from schema
Adding the serializer decleration and implementation files.
Adding a sepcific template initialization in messaging_service to use the serializer
README.md: Add dependency for pyparsing python3
Add an IDL definition file
idl-compiler: Fix an issue with default values
Breaking the API initialization into stages
Fix API init process
idl-compiler: split the idl list
Asias He (69):
gossip: Enable debug msg for convcit
gossip: Print node status in handle_major_state_change
gossip: cleanup application_state
cql_server: Fix connection shutdown
streaming: Remove the _handlers helper
streaming: Remove unused verb handlers
gossip: Wait for gossip timer callback to finish in do_stop_gossiping
streaming: Add more debug info
streaming: Simplify send_complete_message
streaming: Fail the session if fails to send COMPLETE_MESSAGE
messaging_service: Fix send_message_timeout_and_retry
idl: Add gossip_digest_ack2
idl: Add gossip_digest_syn
messaging_service: Add gossip_digest_syn implementation
messaging_service: Add gossip_digest_ack2 implementation
gossip: Drop unused serialization code
messaging_service: Add gossip_digest implementation
gossip: Drop unused serialization code
messaging_service: Add versioned_value implementation
messaging_service: Add gossip::endpoint_state implementation
gossip: Drop unused serialization code
gossip: Drop unused serialization code
messaging_service: Add heart_beat_state implementation
gossip: Drop unused serialization code
streaming: Drop unused parameters
streaming: Drop streaming/messages/complete_message
streaming: Drop streaming/streaming.cc
streaming: Drop streaming/messages/received_message
streaming: Drop streaming/messages/retry_message
streaming: Drop streaming/messages/incoming_file_message
streaming: Drop streaming/messages/session_failed_message
streaming: Drop unnecessary parameters in stream_init_message
streaming: Drop the get_or_create_session_by_id interafce
streaming: Refactor host_streaming_data
streaming: Rename get_or_create_next_session to get_or_create_session
streaming: Rename stream_result_future::init to ::init_sending_side
streaming: Kill stream_result_future::create_and_register
tests: Stop gossip during shutdown in cql_test_env
streaming: Do not print session_index in handle_session_prepared
streaming: Get rid of stream_init_message
streaming: Always return zero for session_index in api/stream_manager
streaming: Get rid of the stream_index
streaming: Get rid of keep_ss_table_level
streaming: Remove unused serialization code for file_message_header
streaming: Remove stream_session::file_sent
streaming: Get rid of file_message_header
gossip: Rename echo verb to gossip_echo
messaging_service: Drop STREAM_INIT_MESSAGE
streaming: Drop unused repaired_at in stream_request
idl: Add streaming.idl.hh
messaging_service: Add streaming implementation for idl
streaming: Drop unused serialization code
streaming: Drop unused compression_info
streaming: Remove stream_message
streaming: Flatten streaming messages class namespace
streaming: Cleanup outgoing_file_message
streaming: Cleanup prepare_message
api: Fix get_{all}total_outgoing_byte in stream_manager
streaming: Add get_peer_session_info
api: Fix peer -> streaming_plan id in stream_manager
configure: Fix idl indentation
config: Introduce shutdown_announce_in_ms option
storage_service: Call drain inside handle_state_removing
storage_service: Add drain on shutdown logic
storage_service: Shutdown messaging_service in decommission
streaming: Add get_all_streams in stream_manager
api: Fix stream_manager total_incoming/outgoing bytes
streaming: Account number of bytes sent and received per session
api: Use get_bytes_{received,sent} in stream_manager
Avi Kivity (17):
Merge seastar upstream
README: add hwloc and numactl to install recommendations
README: add libxml2 and libpciaccess packages to list or required packages
Merge seastar upstream
Merge seastar upstream
storage_proxy: make MUTATION and MUTATION_DONE verbs sychronous at the server side
messaging service: limit rpc server resources
Merge seastar upstream
Merge seastar upstream
Update ami submodule
Merge seastar upstream
Update test/message.cc for MESSAGE verb rename
Update scylla-ami submodule
Merge seastar upstream
main: exit with code 0 on shutdown
Merge seastar upstream
Merge "Sstable cleanup fixes" from Tomasz
Calle Wilund (14):
query_pagers: fix log message in requires_paging
select_statement: Make sure all aggregate queries use paging
auth_test: workaround ASan false error
auth_test: workaround ASan false error
commitlog_replayer: Modify logging to more match origin
commitlog_replayer: Modify logging to more match origin
auth_test: Modify yet another case to use "normal" continuation.
auth: Add a simplistic "schedule" for auth db setup
commitlog: minor cleanup - remove red squiggles in eclipse
commitlog: split write/flush counters
commitlog: Add some feedback/measurement methods
commitlog: Add write/flush limits
commitlog: wait for writes (if needed) on new segment as well
commitlog bugfix: Fix batch mode
Erich Keane (1):
Replace deprecated BOOST_MESSAGE with BOOST_TEST_MESSAGE
Glauber Costa (11):
sstables: don't repeat file_writer creation all the time
sstables: always use a file_*_stream_options in our readers and writes
mutation_source: turn it into a class
key_source: turn it into a class
sstables: mandate a buffer size parameter for data_stream_at
sstables: wire priority for write path
sstables: wire priority for read path
add a priority class to mutation readers
introduce a priority manager
mark I/O operations with priority classes
use auto&& instead of auto& for priority classes.
Gleb Natapov (28):
fix batch size checking
storage_proxy: remove batchlog synchronously
cleanup gossip_digest.idl
Reorder bool and uint8_t serializers
Add serializers for more basic types.
Add idl files for more types.
Make constructor from bytes for partition_key and clustering_key_prefix public
Prepare partition_slice to be used by serializer.
Move specific_ranges to .hh and un-nest it.
un-nest range::bound class.
Fix read_command constructor to not copy parameters.
Add ring_position constructor needed by serializer.
Add serializer overload for query::read_command.
Add serializer overload for query::partition_range.
Remove no longer used serializers.
Add bytes_ostream serializer.
Move query::result to use idl.
Remove old query::result serializer
Remove redundant vector serialization code.
Move smart pointer serialization helpers to .cc file.
Move reconcilable_result and frozen_mutation to idl
Remove old serializer for frozen_mutation and reconcilable_result
messaging_service: log rpc errors
Make serializer use new simple stream location
messaging_service: replace rpc::type with boost::type
idl: add missing header to serializer.hh
Add serialization helper to use outside of rpc.
Move paging_state to use idl
Nadav Har'El (2):
repair: forbid repair with "-dc" not including the current host
repair: try harder to repair, even when some nodes are unreachable
Paweł Dziepak (30):
commitlog: introduce entry_writer
commitlog: keep track of schema versions
commitlog: add commitlog entry writer and reader
commitlog: allow adding entries using commitlog_entry_writer
commitlog: use commitlog entry writer and reader
commitlog: do not skip entries inside a chunk
commitlog: learn about schema versions during replay
commitlog: upgrade mutations during commitlog replay
sstables: ignore data belonging to dropped columns
sstable: handle multi-cell vs atomic incompatibilities
tests/sstable: add test for multi schema
schema: keep track of removed collections
schema: use _raw._collections to generate comparator name
type_parser: accept sstring_view
schema: read collections from comparator
cql3: forbid re-adding collection with incompatible type
tests: allow any future in assert_that_failed()
tests/cql3: add tests for ALTER TABLE validation
schema: fix comparator parsing
schema: add _raw._collections check to operator==()
schema: print collection info
types: fix compatibility for text types
tests/type: add test for simple type compatibility
tests/cql3: add tests for ALTER TABLE with multiple collections
types: use correct name for date_type
types: add date type to parse_type()
types: make timestamp_type and date_type compatible
tests/types: add test for timestamp and date compatibility
sstables: do not drop row marker when reading mutation
row_cache: protect against stale entries
Pekka Enberg (6):
service/storage_service: Fix typos in logger messages
api/messaging_service: Fix heap-buffer-overflows in set_messaging_service()
streaming/stream_session: Don't stop stream manager
Update scylla-ami submodule
db/commitlog: Fix debug log format string in commitlog_replayer::recover()
release: prepare for 0.17
Raphael S. Carvalho (23):
db: move generation calculation code to a function
db: move code that rebuilds sstable list to a function
sstables: prepare compact_sstables to work with cleanup
tests: add test to a sstable rewrite
compaction: move compaction execution from strategy to manager
compaction: filter out compacting sstables
db: add support to clean up a column family
api: implement force_keyspace_cleanup
compaction: filter out mutation that doesn't belong to shard
compaction: rename compaction_stats to compaction_info
compaction: add ability to stop an ongoing compaction
api: fix paramType of parameter of stop_compaction
api: implement stop_compaction
sstables: fix sstable::data_stream_at
sstables: fix make_checksummed_file_output_stream
move compaction manager from /utils to /sstables
compaction_manager: introduce signal_less_busy_task
compaction_manager: introduce can_submit
change abstract_replication_strategy::get_ranges to not return wrap-arounds
compaction: remove code to sort local ranges
compaction: pass dht::token by reference
api: print proper compaction type
compaction: delete generated sstables in event of an interrupt
Shlomi Livne (1):
Fix test.py invocation of sstable_test
Takuya ASADA (29):
dist: add missing build time dependency for thrift package on Ubuntu
dist: resolve build time dependency by mk-build-deps command, do not install them manually
dist: use gdebi to resolve install-time dependencies
dist: add missing dependency (xfslibs-dev) for Ubuntu
dist: prevent use abrt with scylla
dist: preserve environment variable when running scylla_prepare on sudo
dist: extend coredump size limit
dist: disable SELinux only when it enabled
dist: stop ntpd before running ntpdate
dist: use our own CentOS7 Base image
dist: add 'scylla-gdb' package for CentOS
dist: fetch CentOS dependencies from koji, update them to latest version
main: support supervisor_notify() on Ubuntu
dist: remove mdadm,xfsprogs from dependencies, install it when constructing RAID by scylla_raid_setup
dist: remove abrt from AMI, since it's not able to work with Scylla
dist: don't depends on libvirtd, since we are not using it
dist: add missing dependencies for scylla-gdb
dist: add pyparsing on Fedora build time dependency
dist: add pyparsing on Ubuntu build time dependency
dist: add pyparsing on CentOS build time dependency CentOS
dist: support CentOS AMI on scylla_ntp_setup
dist: fix scylla_bootparam_setup for Ubuntu
dist: use nightly for prebuilt 3rdparty packages (CentOS)
main: autodetect systemd/upstart
dist: set ulimit in upstart job
dist: run upstart job as 'scylla' user
main: raise SIGSTOP only when scylla become ready
dist: eliminate startup script
dist: enable collectd client by default
Tomasz Grabiec (18):
config: Add 'experimental' switch
tests: cql_test_env: Enable experimental features
cql3: Disable ALTER TABLE unless experimental features are on
config: Set default logging level to info
sstables: Add ability to wait for async sstable cleanup tasks
row_cache: Restore indentation
logalloc: Excluded zones' free segments in lsa/byres-non_lsa_used_space
tests: Don't depend on partition_key representation
database: Add trace-level logging of applied mutations
database: Print table name when printing mutation
canonical_mutation: Introduce column_family_id() getter
batchlog_manager: Add more debug logging
batchlog_manager: Store canonical_mutations
cql3: Print only column name in error message
tests: memory_footprint: Show canonnical_mutation size
bytes_ostream: Adapt to Output concept used in serializer.hh
canonical_mutation: Remove commented out junk
database: Move implementation to .cc
Vlad Zolotarov (6):
locator::reconnectable_snitch_helper: don't check messaging_service version
sstable::write_components(): add a 'backup' parameter
sstables flushing: enable incremental backup (if requested)
config: allow enabling the incremental backup via .yaml
locator::ec2_multi_region_snitch: add a get_name() implementation
ec2_snitch: complete the EC2Snitch -> Ec2Snitch renaming
Scylla JMX Contributions
Amnon Heiman (2):
Remove leftover println from StreamingMetrics
StorageService: setLoggingLevel
Avi Kivity (1):
version: rename development version to 666.development
Lucas Meneghel Rodrigues (1):
pom.xml: Add log4j classes
Pekka Enberg (2):
CompactionManager: Fix compaction manager API URLs
release: prepare for 0.17