RELEASE Scylla 0.11 Beta
Tzach Livyatan edited this page Nov 3, 2015
·
2 revisions
The Scylla team is pleased to announce the release of Scylla version 0.11
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:
Some of the noteworthy additions are:
- Multi DC support, including EC2MultiRegion Snitch
- Scylla Ubuntu package installation
- Range query from cache
- Read repair
- nodetool cfhistogram
- Leveled Compaction
- Move to latest release of seastar and scylla-jmx
Please note, collectd is now disabled by default; if you need to enable it, use the --collectd 1 command line option. More on collecting Scylla metric in scylla-monitoring
Downloads binary distributions or launch EC2 AMI: http://www.scylladb.com/download/
Please let us know if you encounter any problem.
Amnon Heiman (21):
estimated_histogram to support sampling
column family: Add estimated histogram impl
API: column family estimated histograms
keyspace clean up should be a POST not a GET
API: Adding the stream manager Swagger definition
API: Adding implementation for the stream manager metrics
Add a level_name function to logger
Adding the system swagger definition
API: Add logger API implementation to the system API
gossiper: make the get cluster name and partitioner public
gossiper need to set the cluster name on all shareds
Add the get cluster and partitioner names to the API
API: add a workaround for the get schema_versions
API: Fix a confusion in the storage service snapshot details
API: Add row cahe hits and miss per column family
Adding live_scanned and tombstone scaned histogram to column family
API: Add compaction history to the API
API: Add getters to storage_proxy timers timeout
storage_service: Add estimated histogram for read, write and range
API: Add estimated histogram to storage_proxy
API: Add read, write, range estimated histogram implementation for storage_proxy
Asias He (123):
stream_session: Support column_families is empty case
locator: Make calculate_natural_endpoints take extra token_metadata parameter
token_metadata: Add get_predecessor
token_metadata: Add get_primary_ranges_for and get_primary_range_for
locator: Add abstract_replication_strategy::get_address_ranges
locator: Add abstract_replication_strategy::get_range_addresses
token_metadata: Add clone_only_token_map
locator: Add abstract_replication_strategy::get_pending_address_ranges
token_metadata: Remove duplicated sortedTokens
token_metadata: Introduce _pending_ranges member
token_metadata: Add get_pending_ranges_mm
token_metadata: Add get_pending_ranges
dht: Import dht/RangeStreamer
dht: Convert RangeStreamer to C++
range_streamer: Add i_source_filter and failure_detector_source_filter
range_streamer: Add constructor
range_streamer: Implement get_range_fetch_map
range_streamer: Implement get_all_ranges_with_sources_for
range_streamer: Implement get_all_ranges_with_strict_sources_for
range_streamer: Implement add_source_filter
range_streamer: Implement use_strict_sources_for_ranges
range_streamer: Implement add_ranges
range_streamer: Implement fetch_async
locator: Add debug info for abstract_replication_strategy::get_address_ranges
boot_strapper: Add debug info for get_bootstrap_tokens
boot_strapper: Enable range_streamer code in bootstrap
storage_service: Fix nodetool info return wrong gossiper status
storage_service: Fix ignored future in on_dead
token_metadata: Implement clone_after_all_left
token_metadata: Implement calculate_pending_ranges
service: Import PendingRangeCalculatorService.java
service: Convert PendingRangeCalculatorService.java to C++
init: Init pending_range_calculator_service
storage_service: Start to use pending_range_calculator_service
storage_service: Enable _replicating_nodes and _removing_node members
abstract_replication_strategy: Make calculate_natural_endpoints public
storage_service: Implement get_changed_ranges_for_leaving
token_metadata: Implement add_leaving_endpoint
storage_service: Partially implement remove_node
storage_service: Stub unbootstrap
storage_service: Partially implement decommission
storage_service: Stub get_new_source_ranges
storage_service: Stub send_replication_notification
storage_service: Implement restore_replica_count
storage_service: Implement excise
storage_service: Implement rebuild
storage_service: Move send_replication_notification to source file
storage_service: Implement leave_ring
storage_service: Implement stream_ranges
storage_service: Implement stream_hints
storage_service: Implement unbootstrap
storage_service: Kill one FIXME in handle_state_bootstrap
storage_service: Complete is_replacing logic in handle_state_normal
storage_service: Enable add_leaving_endpoint in handle_state_leaving
storage_service: Complete handle_state_removing
storage_service: Enable restore_replica_count in remove_node
storage_service: Implement on_leave_cluster in excise
messaging_service: Add REPLICATION_FINISHED verb
storage_service: Implement confirm_replication
storage_proxy: Register replication_finished verb handler
storage_service: Implement send_replication_notification
storage_service: Implement start_leaving
storage_service: Kill unimplemented in decommission
storage_service: Fix token contains in handle_state_leaving
storage_service: Fix use after free for stream_plan
storage_service: Fix immediate return for get_changed_ranges_for_leaving
storage_service: Add extract_expire_time
storage_service: Fix ranges in stream_hints
storage_service: Print keyspace info unbootstrap in debug
storage_service: Implement add_expire_time_if_found
storage_service: Enable add_expire_time_if_found in excise and handle_state_removing
storage_service: Enable call to excise
storage_service: Make comment clearer in get_changed_ranges_for_leaving
gossip: Fix nodetool gossipinfo
gossip: Cleanup versioned_value class
Revert "API: Workaround for load_map"
storage_service: Store load_broadcaster into storage_service
main: Set load_broadcaster for storage_service during startup
storage_service: Implement get_load_map using load_broadcaster
storage_service: Add debug info for get_load_map
boot_strapper: Fix use after free
storage_service: Fix use after free in rebuild
range_streamer: Introduce single_datacenter_filter
storage_service: Enable single_datacenter_filter in rebuild
gossip: Simplify make_token_string with boost::adaptors::transformed
gossip: Add operator<< operator for application_state
gossip: Print application_state name instead of number
api: Fix storage_service remove_node parameter
storage_service: Enable remove_node support
api: Fix storage_service remove_node parameter
storage_service: Enable remove_node support
dns: Move gethostbyname to source file
storage_service: Implement prepare_replacement_info
storage_service: Complete check_for_endpoint_collision
storage_service: Implement start_native_transport and start_rpc_server
storage_service: Implement stop_native_transport
storage_service: Implement is_native_transport_running
storage_service: Implement stop_rpc_server
storage_service: Implement is_rpc_server_running
api: Simplify get_tokens get_node_tokens and get_token_endpoint
gossip: Simplify get_live_members
gossip: Replicate _unreachable_endpoints to all cores
gossip: Simplify get_unreachable_members
gossip: Simplify get_endpoint_downtime
gossiper: Kill free function helper for {unsafe_,}assassinate_endpoint
gossiper: Kill free function helper to get heart version and generation number
storage_service: Kill FIXME for LoadBroadcaster.BROADCAST_INTERVAL
storage_service: Implement shutdown_client_servers
storage_service: Do not ignore future in decommission
storage_service: Make decommission runs on cpu 0 only
storage_service: Make remove_node runs on cpu 0 only
api: No cpu zero trick for remove_node
storage_service: Use get_preferred_ip
range_streamer: Start to use get_preferred_ip
storage_service: Introduce a rwlock to serialize management operations
storage_service: Introduce run_with_write_api_lock helper
storage_service: Serialize decommission
tests: Fix gossip
failure_detector: Remove debug print in operator<<
tests: Remove redundant debug info for gossip
gossip: Enable too more log prints for debug
token: Print token using the partitioner defined method
ami: Improve scylla raid setup
Avi Kivity (64):
version: mark master branch as development version
Merge "Fixes for snapshots" from Glauber
build: allow defaulting test binaries not to strip debug information
Merge "locator: Adding EC2Snitch" from Vlad
Merge seastar upstream
Merge seastar upstream
Merge "Add node support" from Asias
dht: mark boot_strapper logger static
Merge "fix consumer parser" from Raphael
Merge seastar upstream
Merge branch-0.10
Merge "Flush queue ordering" from Calle
Merge "Unify logged and unlogged batch write code paths" from Gleb
commitlog: make new segments more xfs-friendly
Merge "Invalidate CQL prepared statements on schema changes" from Pekka
Merge "Flush queue bugfixes" from Calle
Merge seastar upstream
Merge seastar upstream
Merge "remove on-demand creation of SSTable directory" from Glauber
tests: initialize system keyspace (and its directories) for cql_test_env
tests: create directories for user column families as well
Merge snitch fixes from Vlad
tests: disable collectd
tests: initialize system keyspace (and its directories) for cql_test_env
tests: create directories for user column families as well
tests: use workspace-local directory for commitlog
Merge "move dependencies to /opt/scylladb" from Takuya
Revert "Merge "move dependencies to /opt/scylladb" from Takuya"
Merge "initial support to leveled compaction" from Raphael
Merge "Support nodetool cfhistogram"
Merge "Fix for snapshots/create_links and shared SSTables" from Glauber
Merge seastar upstream
Merge "remove and decommission node" from Asias
Merge "Flusing of CF:s without replay positions" from Calle
Merge "snapshots: take + clear" from Glauber
Merge "remove and decommission node support part 2" from Asias
logalloc: make migrator an object, not a function pointer
Merge "move dependencies to /opt/scylladb" from Takuya
Merge
Merge "Adding row chache statistic to column family" from Amnon
Merge "load_new_sstables" from Glauber
Merge "Enable decommission support" from Asias
Merge "Make mutation queries respect reversed order" from Tomasz
Merge "GET methods for snapshots" from Glauber
Merge "Mutation diff" from Paweł
Merge "Support Ubuntu 14.04LTS" from Takuya
Merge "Add support to nodetool describecluster"
Merge "Adding log level support to the API" from Amnon
Merge "Adding the stream metrics API" from Amnon
Merge "fix nodetool gossipinfo and status" from Asias
Merge "CQL code cleanups" from Pekka
Merge "fix read_indexes" from Raphael
Merge "API: storage proxy metrics" from Amnon
Merge seastar upstream
Merge "remove node support" from Asias
Merge "sstable improvements" from Raphael
Merge "Add EC2MultiRegionSnitch and Co." from Vlad
Merge "Even more commitlog fixes" from Calle
Merge "CQL request load balancing" from Pekka
Merge seastar upstream
Merge "storage_service and gossip update" from Asias
Merge "Fix gossip test" from Asias
Merge seastar upstream
Update scylla-ami submodule
Calle Wilund (20):
Add "flush_queue" helper structure
flush_queue_test
column_family: Add flush queue object to act as ordering guarantee
commitlog: ensure file size remains <= max_size
commitlog: Make reader handle pre-allocated files
flush_queue: Fix task reordering bug, simplify code, allow value propagation
flush_queue_test: Clean up and enhance the test a little
commitlog_test: test fix
commitlog_test: Modify test_allocation_failure to not require huge segment
commitlog_test: Modify test_allocation_failure to not require huge segment
commitlog: Fix use-after-free
flush_queue: Ease key restriction and allow multiple calls on each key
flush_queue_test: Add test for multiple ops per key
database: Handle CF flush with no high replay_position
commitlog: Fix use-after-free
storage_proxy: mutate_atomically fix for consistency and BL removal
commitlog: Make flush/segment delete slightly mode defensive + test tolerant
commitlog: Make "shutdown" do flushing + hard sync of pending ops
database: Just do commitlog::shutdown on shutdown. It will do flushes.
commitlog_test: test fix
Glauber Costa (44):
snapshots: don't hash pending snapshots by snapshot name
snapshots: get rid of empty tables optimization
snapshots: handle jsondir creation for empty files case
snapshots: fix json type
do not calculate truncation time independently
avoid exception when processing caching_options
database: touch directories for the column family
schema_tables: make sure CF directory exists upon creation
guarantee that CF directories exist for system tables
sstables: no longer touch directory when writing SSTables
sstables: remove outdated comment
sstables: remove outdated comment
snapshots: fix generation of snapshots with shared sstables
snapshot: do not allow exceptions in snapshot creation hang us
file lister: allow for more than one directory type
database: support clear snapshot
snapshots: check existence of snapshots
storage_service: take a snapshot of a group of keyspaces
storage_service: take a snapshot of a particular column family
storage_service: delete a snapshot
api: implement take_snapshot
api: implement clear snapshot
database: get_snapshot_details
storage_service: get_snapshot_details
storage_service: true snapshot size
api: get_snapshot_details
api: get true snapshot size
database: fix type for sstable generation.
sstable tests: don't use set_generation method
sstables: make read_toc public
sstables: allow create_links to work with an arbitrary generation
sstables: fix create_links so a TemporaryTOC is generated
sstables: allow an sstable to set its generation number
sstables: change the current level of an sstable
column family: commonize code to calculate the desired SSTable generation
database: mechanism to stop writing sstables
reshuffle tables: mechanism to adjust new sstables' generation number
sstable_tests: commonize code to compare two components.
sstable_test: get rid of frees
sstable tests: test set_generation
sstable_tests: test reshuffle operation
column family: load new sstables
storage_service load_new_sstables.
api: load new sstables
Gleb Natapov (16):
storage_proxy: move array instead of copy it.
storage_proxy: remove outdated comment
storage_proxy: remove code duplication between logged and unlogged batches
storage_proxy: use common write code to write batch log mutations.
Fix operator<< for std::exception_ptr to receive reference to an object
Make exception string generation code less verbose
storage_proxy: actually sort endpoints in get_live_sorted_endpoints()
storage_proxy: drop Origin's truncate code from comment
storage_proxy: use CL=ONE to write logged batch
convert loadBroadcaster
load_broadcaster: fix linkage error in debug mode
load_broadcaster: add missing header file protector
storage_proxy: rename reconciliate to reconcile
storage_proxy: calculate mutation diffs during reconcile.
storage_proxy: send out mutation diffs to each destination
storage_proxy: clean up local_dc checking
Lucas Meneghel Rodrigues (2):
test.py: Return test output only if subprocess succeeded
test.py: PEP8 Fixes
Nadav Har'El (1):
main: don't warn twice about the same directory
Paweł Dziepak (30):
mutation_reader: move move_and_disengage to a separate header
mutation: optimize mutation_opt
add key_reader interface
key_reader: add combined_reader
key_reader: add key_from_mutation_reader
key_reader: add filtering key reader
tests/key_reader: add tests for key_readers
sstables: provide key_reader
tests/sstables: test sstable key_reader
memtable: add as_key_source()
column_family: add sstables_as_key_source()
row_cache: add cache_entry::ring_position_compare
row_cache: pass underlying key_source to row_cache
row_cache: add modification counter
row_cache: add just_cache_scanning_reader
row_cache: add scanning_and_populating_reader
unimplemented: drop RANGE_QUERIES
row_cache: merge cache_entry::compare and ring_position_compare
row_cache: update hit and miss stats in scanning reader
mutation_partition: add compare_row_marker_for_merge()
mutation_partition: fix row_marker::apply() for equal timestamps
mutation_partition: add row::with_both_ranges()
mutation_partition: add insert_row()
mutation_partition: add row_marker::is_live()
types: add collection_type_impl::difference()
mutation_partition: compute row difference
mutation_partition: add method for computing difference
tests/mutation: add test for mutation diff
sstable: simplify key reader
test/cql_test_env: merge client state after executing query
Pekka Enberg (27):
cql3: Add keyspace() and column_family() to select_statement
cql3: Add depends_on_{keyspace|column_family} helper to cql_statement
cql3/query_processor: Add get_query_processor() helper
cql3/query_processor: Implement invalidate_prepared_statement()
cql3: Convert MigrationSubscriber to C++
cql3/query_processor: Wire up migration subscriber
dist/docker: Add missing "hostname" package
configure.py: Propagate CFLAGS to seastar config
transport: Add messages_fwd.hh and use it
cql3: Remove ifdef'd code from use_statement.hh
cql3: Move use_statement class implementation to source file
cql3: Move schema_altering_statement class implementation to source file
cql3: Move create_keyspace_statement class implementation to source file
cql3: Move cf_statement class implementation to source file
transport/server.cc: Fix formatting glitch
transport/server: Remove _query_states from connection
transport/server: Write response from process_request()
transport/server: Use bytes_view instead of moving temporary buffer around
service: Copy client state to query state
transport/server: Merge client state changes in process_request()
transport/server: Round-robin CQL request load balancing
release: prepare for 0.11
cql3: Fix grammar 'WITH WITH' bug that causes a SIGSEGV
cql3: Fix exception message in lists::discarder_by_index::execute()
cql3: Fix exception message in lists::setter_by_index::execute()
Merge "Fixes for dependency packages, fix upstart script" from Takuya
Merge "Wire reconnectable_snitch_helper to gossiping_property_file_snitch" from Vlad
Raphael S. Carvalho (28):
sstable: fix consumer parser
tests: add testcase for bug on consumer parser
import LeveledManifest.java
sstables: add method to get first and last as decorated keys
sstables: add function to compare sstables by first key
sstables: add function to compare sstable by age
sstables: implement function to get sstable level
range: add method to check if two ranges overlap
dht: introduce comparator for token
tests: add test for range overlap
convert LeveledManifest to C++
adapt compaction procedure to support leveled strategy
wire up support for leveled compaction strategy
tests: add tests for leveled compaction
db: do not ignore compaction strategy class
db: do not ignore compaction strategy class
tests: fix test for leveled compaction
range: rename overlap to overlaps
range: add comment explaining !start and !end in lambda
import Downsampling.java
sstables: convert Downsampling to C++
sstables: fix read_indexes
tests: add test to read_indexes
sstables: fix prepare_summary
sstables: reuse BASE_SAMPLING_LEVEL constant from downsampling class
sstables: update comment
compaction_manager: fix remove
db: fallback to sizetiered if compaction strategy isn't supported
Shlomi Livne (6):
dist: ubuntu update build script file permissions
Update snitch registration EC2Snitch --> Ec2Snitch
Update snitch registration EC2MultiRegionSnitch --> Ec2MultiRegionSnitch
dist: ubuntu copy cassandra-rackdc.properties
dist: fedora/rhel/centos copy cassandra-rackdc.properties
dist: set SCYLLA_HOME used to find the configuration and property files
Takuya ASADA (42):
dist: create rpmbuild dirs
dist: fix srpm not found error
dist: dependency fix for ninja-build
dist: add scylla-env package for CentOS, to use /opt/scylladb as prefix
dist: move binutils package to /opt/scylladb
dist: move isl package to /opt/scylladb
dist: move gcc package to /opt/scylladb
dist: move boost package to /opt/scylladb
dist: move ninja-build package to /opt/scylladb, remove unused dependency for re2c
dist: move ragel package to /opt/scylladb
dist: move antlr3-tool package to /opt/scylladb
dist: move antlr3-C++-devel package to /opt/scylladb
dist: use scylla-* dependency packages on scylla-server.spec
dist: fix srpm not found error
dist: dependency fix for ninja-build
dist: add scylla-env package for CentOS, to use /opt/scylladb as prefix
dist: move binutils package to /opt/scylladb
dist: move isl package to /opt/scylladb
dist: move gcc package to /opt/scylladb
dist: move boost package to /opt/scylladb
dist: move ninja-build package to /opt/scylladb, remove unused dependency for re2c
dist: move ragel package to /opt/scylladb
dist: move antlr3-tool package to /opt/scylladb
dist: move antlr3-C++-devel package to /opt/scylladb
dist: use scylla-* dependency packages on scylla-server.spec
dist: add more build dependency for binutils
dist: share scripts both on redhat and ubuntu
dist: mount hugetlbfs on ubuntu
dist: add debian/ directory to build .deb package for Ubuntu
dist: add dependency packages and build script for ubuntu
dist: statically link to libstdc++ on Ubuntu
dist: fix upstart script to make it able to start/stop correctly
dist: do not remove build/ dir when scylla-server ubuntu package building
dist: fix warning when building antlr3-tool ubuntu package
dist: fix warning when building antlr3-c++-dev ubuntu package
dist: fix warning when building thrift ubuntu package
dist: fix warning when building scylla-server ubuntu package
dist: handle SIGKILL correctly on upstart, also do not respawn process
dist: move inline script to setup-ami.sh
dist: use scylla repo on ami, instead of locally built rpms
dist: update packages on ec2 instance first bootup
dist: add scylla.repo to fetch scylla rpms on ami
Tomasz Grabiec (15):
range: Implement range::contains() which takes another range
range: Fix range::contains()
Replace references to 'urchin' with 'scylla'
lsa: Restore heap invariant before calling _segments.erase()
Merge branch 'pdziepak/row-cache-range-query/v4' from seastar-dev.git
partition_slice_builder: Introduce reversed()
mutation_query: Respect 'reversed' partition_slice option
tests: Add tests for reversed mutation queries
mutation_partition: Add non-const-qualified version of range() and use it
mutation_partition: Rename reversion_traits to reversal_traits
mutation_partition: Drop now unnecessary unconst() usage
Merge tag 'asias/range_streamer_use_after_free_gossip_print/v1' from seastar-dev.git
storage_proxy: Fix make_local_reader() for ranges with min/max tokens
tests: Add test for make_local_reader() and min/max tokens
Merge branch 'gleb/read-repair' from seastar-dev.git
Vlad Zolotarov (38):
db::config: add get_conf_dir()
locator::snitch_base: Add a default snitch_base::stop() method
locator::gossiping_property_file_snitch: get rid of warn() and err() wrappers
locator::gossiping_property_file_snitch: make get_name() public as it should be
locator::gossiping_property_file_snitch: remove extra "namespace locator"
locator::production_snitch_base: unify property file parsing facilities
locator::gossiping_property_file_snitch: initialize i_endpoint_snitch::io_cpu_id() in the constructor
conf: added cassandra-rackdc.properties
locator: add ec2_snitch
tests: added ec2_snitch_test
locator::gossiping_property_file_snitch: use empty string as a default config file name
locator::production_snitch_base: cleanup
locator::production_snitch_base: fix production_snitch_base signature
locator::gossiping_property_file_snitch: do_withicate file descriptor in property_file_was_modified()
locator::gossiping_property_file_snitch: use empty string as a default config file name
locator::production_snitch_base: cleanup
locator::production_snitch_base: fix production_snitch_base signature
locator::gossiping_property_file_snitch: do_withicate file descriptor in property_file_was_modified()
gms::gossiper: call for i_endpoint_snitch::gossiper_starting()
db::system_keyspace::update_preferred_ip(): use net::ipv4_address as a preferred_ip value
db::system_keyspace: added get_preferred_ips()
message::messaging_service: make _clients to be std::array
message::messaging_service: fixes in rpc_protocol_client_wrapper shut down
message::messaging_service: added remove_rpc_client(shard_id)
message::messaging_service: introduce _preferred_ip_cache
locator::ec2_snitch: rename ZONE_QUERY_SERVER_ADDR -> AWS_QUERY_SERVER_ADDR
locator::ec2_snitch: moved info parsing and distribution into the separate function
locator: added reconnectable_snitch_helper
locator::snitch_base: added i_endpoint_snitch::set_local_private_addr()
utils::fb_utilities: add the ability to set a broadcast address
locator: added ec2_multi_region_snitch
tests::cql_test_env: set broadcast address
tests: set broadcast address
gms::gossiper: allow the modification of _subscribers while it's being iterated
locator::reconnectable_snitch_helper: remove unused constructor parameter
locator::token_metadata: added topology::update_endpoint(ep) and update_topology(ep)
locator::gossiping_property_file_snitch: fix some issues in reload_configuration()
locator::gossiping_property_file_snitch: implement gossiper_starting() and reload_gossiper_state()
Amnon Heiman (12):
StorageService: handle loadNewSStable and forceKeyspaceCleanup
Adding the RecentEstimatedHistogram
EstimatedHistogram: Add constructor from data
APIClient to support EstimatedHistogram
Add an EstimateHistogramWrapper
LatencyMetrics: Support totalLatencyHistogram and recentLatencyHistogram
ColumnFamilyMetrics: add estimted per read histogram support
ColumnFamilyStore: add support for estimated latency
StorageProxy: Add depricated method implementation based on metrics
ClientRequestMetrics: pass the url similiar to LatencyMetrics
StorageService: remove node should use hostid and not token
Updating the http client and support API exception
Avi Kivity (2):
Avoid non-final variables in anonymous classes
Downgrade Java compatibility level to 1.7.
Nadav Har'El (1):
Fix "nodetool repair" error
Pekka Enberg (6):
Merge "Adding estimated histogram support for nodetool cfhistogram" from Amnon
Remove obsolete comments from ColumnFamilyStore
Merge "Support deprecated method in StorageProxy" from Amnon
Merge "Support Ubuntu 14.04LTS" from Takuya
Merge "Populate the API exception" from Amnon
release: prepare for 0.11
Shlomi Livne (1):
dist: update rpm build to support centos as well
Takuya ASADA (7):
dist: use OpenJDK-7 on CentOS
dist: share scripts both on redhat and ubuntu
dist: add debian/ directory to build .dep package for Ubuntu
dist: add build script for ubuntu
dist: add devscripts to install debuild before start building package
dist: fix warning when building scylla-jmx ubuntu package
dist: stop scylla-jmx when scylla-server stopped, don't respawn