RELEASE Scylla 0.16 Beta
Tzach Livyatan edited this page Feb 8, 2016
·
2 revisions
The Scylla team is pleased to announce the release of Scylla version 0.16
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:
- Scylla AMI is now base on CentOS 7. Make sure to use log in centos when connecting to a Scylla AMI
- ALTER TABLE feature was merged, but not officially available yet. We are actively testing it and will announce availability in a future release.
If you are brave enough to test it, use scylla option
--experimental
to enable it. - SSL for client to node and node to node encryption was merged, but not officially available yet. We are actively testing it and will announce availability in a future release.
- Move to latest release of seastar and scylla-jmx Full list of scylla, scylla-jmx contributions below.
Get started with Scylla 0.16 here.
If you have any questions about the new release, please post to the scylladb-users mailing list.
Scylla Contributions
Asias He (5):
gossip: Add wait_for_gossip_to_settle
messaging_service: Rename shard_id to msg_addr
storage_service: Fix load_broadcaster in get_load_map
main: Change API server starting message
gossip: Add is_safe_for_bootstrap
Avi Kivity (11):
snitch: intentionally leak snitch singleton
main: wait for API http server to start
db: reduce log spam when ignoring an sstable
build: add support for optional pkg-config managed packages
dist: redhat: drop 'sudo' in scylla_run
Merge seastar upstream
Update scylla-ami submodule
main: notify systemd of startup progress
Merge seastar upstream
main: make --developer-mode relax dma requirements
Merge seastar upstream
Benoît Canet (1):
config: Mark ssl_storage_port as Used
Calle Wilund (22):
commit log reader bugfix: Fix tried to read entries across chunk bounds
commit log reader bugfix: Fix tried to read entries across chunk bounds
paging bugfix: Ensure limit for single page is min(page size, limit left)
paging bugfix: Allow reset/removal of "specific ck range"
paging bugfix: Ensure limit for single page is min(page size, limit left)
batch_statement: Modify verify_batch_size to match current origin
paging bugfix: Allow reset/removal of "specific ck range"
exceptions: add authorization exceptions
auth::data_resource: resource identifier for auth permissions
auth::permission: permissions for authorization
auth::authenticated_user: Object representing a named or anon user
types.hh: Add data_type_for<bool>
cql3::query_options: Add constructors for internal processing
batch_statement: Modify verify_batch_size to match current origin
cql3::query_processor: Add processing helpers for internal usage
auth::auth/authenticator: user storage and authentication
storage_service: Initialize auth system on start
client_state: Add user object + login
transport::server: Add authentication support
config: Mark "authenticator" used + update description
cql_test_env: Allow specifying db::config for the env
auth_test: Unit tests for auth objects
Gleb Natapov (1):
storage_proxy: improve mutation timeout logging
Lucas Meneghel Rodrigues (1):
dist/ami: Print newline at the end of MOTD banner
Paweł Dziepak (10):
schema: keep track of dropped columns
schema: add column_definition::_dropped_at
mutation_partition: drop cells from dropped_columns at upgrade
schema_builder: add with_column_rename()
schema_builder: add with_altered_column_type()
schema_builder: force column id recomputation in build()
system_tables: store sechma::dropped_columns in system tables
db/schema_tables: simplify column difference computation
cql3: complete translation of alter table statement
tests/cql: add tests for ALTER TABLE
Pekka Enberg (4):
gms/gossiper: Fix compilation error
service/client_state: Use anonymous user when authentication is disabled
main: Start the API service as the last step
release: prepare for 0.16
Takuya ASADA (20):
dist: use scylla-boost instead of boost to fix compile error on CentOS
configure.py: add --python option to specify python3 command path, for CentOS
dist: add build time dependency to scylla-libstdc++-static for CentOS
dist: don't need yum install and mv scylla-ami before scylla_install
dist: switch AMI base image from Fedora to CentOS
dist: fetch CentOS dependencies from our yum repository by default
dist: remove scylla_local.json, merge it to scylla.json
dist: split scylla_install script to two parts, scylla_install_pkg is for installing .rpm/.deb packages, scylla_setup is for setup environment after package installed
dist: since AMI uses XFS rootfs, we don't need to warn extra disks not attached to the AMI instance
dist: use systemd-coredump on Fedora/CentOS, create symlink /var/lib/scylla/coredump -> /var/lib/systemd/coredump when we mounted RAID
dist: cleanup build directory before creating rpms for AMI
dist: prevent 'local rpm' AMI image update to older version of scylla package by yum update
dist: add ignore files for AMI
dist: yum install epel-release before installing CentOS dependencies
dist: renumber development version as 666.development
Revert "dist: prevent 'local rpm' AMI image update to older version of scylla package by yum update"
dist: run scylla_prepare, scylla_stop on sudo
dist: extend root disk size to 10GB
dist: preserve environment variable when running scylla_prepare on sudo
dist: extend coredump size limit
Tomasz Grabiec (89):
create_index_statement: Use textual representation of column name
create_index_statement: Use textual column name in all messages
query_processor: Add trace-level logging of processed statements
service: migration_manager: Fix announce order to match C*
mutation_partition: Drop row tombstones in do_compact()
Introduce hashing helpers
Introduce md5_hasher
schema: Guarantee that column id order matches name order
mutation_partition: Make equal() work with different schemas
db: Move atomic_cell_or_collection to separate header
mutation_partition: Make visitable with mutation_partition_visitor
keys: Add missing clustering_key_prefix_view::get_compound_type()
mutation: Make hashable
Introduce schema_mutations
query::result_set: Add constructor from mutation
schema_tables: Drop pkey parameter from add_table_to_schema_mutation()
schema_tables: Simplify schema building invocation chain
schema_tables: Use schema_mutations for schema_ptr translations
db: Move system keyspace initialization to init_system_keyspace()
schema_builder: Move compact_storage setting outside build()
schema: Make schema objects versioned
schema: Introduce column_count_type
types: Introduce is_atomic()
db/serializer: Spread serializers to relax header dependencies
db/serializer: Implement skip() for bytes and sstring
schema: Introduce column_mapping
Introduce converting_mutation_partition_applier
mutation_partition_view: Make visitable also with column_mapping
mutation: Implement upgrade()
test: Add tests for mutation upgrade
mutation_source_test: Add mutation generators
log: Change default level from warn to info
tests: Use mutation generators in frozen_mutation_test
mutation_assertions: Add is_not_equal_to()
tests: mutation_test: Add tests for equality and hashing
Introduce canonical_mutation
Make schema_mutations serializable
schema: Introduce frozen_schema
memtable: Deconstify memtable in readers
memtable: Read under _read_section
schema: Enable shared_from_this()
Introduce schema_registry
Introduce global_schema_ptr
frozen_mutation: Add schema_version field
query: Add schema_version field to read_command
cql_query_test: Disable test_user_type
db: Learn schema versions when adding tables
Make mutation interfaces support multiple versions
db: Make read interface schema version aware
batchlog_manager: Use requested schema version
service: Add GET_SCHEMA_VERSION remote call
column_family: Add schema setters
schema_tables: Change column_family schema on schema sync
tests: memtable_test: Add test for concurrent reading and schema changes
tests: Introduce canonical_mutation_test
migration_manager: Introduce merge_schema_from()
service: migration_task: Implement using migration_manager::merge_schema_from()
schema_registry: Track synced state of schema
db: Mark new schemas as synced
messaging_service: Introduce get_source()
service: Fetch and sync schema
storage_proxy: Log failures of definitions update handler
db: Fail when attempting to mutate using not synced schema
migration_manager: Implement migration_manager::announce_column_family_update
schema_tables: Calculate digest from mutations
schema_tables: Simplify merge_tables() and merge_keyspaces()
schema_tables: Make merge_tables() compare by mutations
tests: Add schema_change_test
tests: Add test for column drop
tests: Add test for column drop
migration_manager: Simplify notifications
db: Make column_family::schema() return const& to avoid copy
schema_tables: Notify about table schema update
tests: Add notification test to schema_change_test
schema: Introduce equal_columns()
query_processor: Invalidate prepared statements when columns change
query_processor: Invalidate statements synchronously
tests: Add test for statement invalidation
schema_tables: Notify about table creation after it is fully inited
schema_tables: Wait for make_directory_for_column_family() to finish in merge_tables()
messaging_service: Move REPAIR_CHECKSUM_RANGE verb out of the streaming verbs group
row_cache: Make invalidate() handle wrap-around ranges
tests: Add more tests for row_cache::invalidate()
row_cache: Take the reclaim lock in invalidate()
row_cache: Guard against wrap-around range in make_reader()
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
Tzach Livyatan (2):
Add REST API server ip:port parameters to scylla.yaml
Fix AMI prompt from "nodetool --help" to "nodetool help"
Vlad Zolotarov (5):
database: lister: add a filtering option
database: filter out a manifest.json files
tests: gossip_test: initialize a broadcast address and a snitch
storage_proxy::query(): intercept exceptions coming from trace()
messaging_service::get_rpc_client(): fix the encryption logic
Scylla JMX contributions
Avi Kivity (2):
dist: do not always restart jmx on shutdown
Use serial garbage collector
Pekka Enberg (1):
release: prepare for 0.16