mirror of https://github.com/apache/cassandra
Remove 4.0 upgrade paths and related 4.0 tests
patch by Stefan Miklosovic; reviewed by Michael Semb Wever for CASSANDRA-21324
This commit is contained in:
parent
e8cfd1acff
commit
50960a2e7e
|
|
@ -203,7 +203,7 @@ _build_all_dtest_jars() {
|
|||
[ "${java_version}" -eq 11 ] && export CASSANDRA_USE_JDK11=true
|
||||
|
||||
pushd ${TMP_DIR}/cassandra-dtest-jars >/dev/null
|
||||
for branch in cassandra-4.0 cassandra-4.1 cassandra-5.0 cassandra-6.0 trunk ; do
|
||||
for branch in cassandra-4.1 cassandra-5.0 cassandra-6.0 trunk ; do
|
||||
git clean -qxdff && git reset --hard HEAD || echo "failed to reset/clean ${TMP_DIR}/cassandra-dtest-jars… continuing…"
|
||||
git checkout --quiet $branch
|
||||
dtest_jar_version=$(grep 'property\s*name=\"base.version\"' build.xml |sed -ne 's/.*value=\"\([^"]*\)\".*/\1/p')
|
||||
|
|
|
|||
|
|
@ -5045,7 +5045,7 @@ jobs:
|
|||
cd ~/cassandra
|
||||
mkdir ~/dtest_jars
|
||||
git remote add apache https://github.com/apache/cassandra.git
|
||||
for branch in cassandra-4.0 cassandra-4.1 cassandra-5.0 cassandra-6.0 trunk; do
|
||||
for branch in cassandra-4.1 cassandra-5.0 cassandra-6.0 trunk; do
|
||||
# check out the correct cassandra version:
|
||||
git remote set-branches --add apache '$branch'
|
||||
git fetch --depth 1 apache $branch
|
||||
|
|
|
|||
|
|
@ -5045,7 +5045,7 @@ jobs:
|
|||
cd ~/cassandra
|
||||
mkdir ~/dtest_jars
|
||||
git remote add apache https://github.com/apache/cassandra.git
|
||||
for branch in cassandra-4.0 cassandra-4.1 cassandra-5.0 cassandra-6.0 trunk; do
|
||||
for branch in cassandra-4.1 cassandra-5.0 cassandra-6.0 trunk; do
|
||||
# check out the correct cassandra version:
|
||||
git remote set-branches --add apache '$branch'
|
||||
git fetch --depth 1 apache $branch
|
||||
|
|
|
|||
|
|
@ -5045,7 +5045,7 @@ jobs:
|
|||
cd ~/cassandra
|
||||
mkdir ~/dtest_jars
|
||||
git remote add apache https://github.com/apache/cassandra.git
|
||||
for branch in cassandra-4.0 cassandra-4.1 cassandra-5.0 cassandra-6.0 trunk; do
|
||||
for branch in cassandra-4.1 cassandra-5.0 cassandra-6.0 trunk; do
|
||||
# check out the correct cassandra version:
|
||||
git remote set-branches --add apache '$branch'
|
||||
git fetch --depth 1 apache $branch
|
||||
|
|
|
|||
|
|
@ -2824,7 +2824,7 @@ commands:
|
|||
cd ~/cassandra
|
||||
mkdir ~/dtest_jars
|
||||
git remote add apache https://github.com/apache/cassandra.git
|
||||
for branch in cassandra-4.0 cassandra-4.1 cassandra-5.0 cassandra-6.0 trunk; do
|
||||
for branch in cassandra-4.1 cassandra-5.0 cassandra-6.0 trunk; do
|
||||
# check out the correct cassandra version:
|
||||
git remote set-branches --add apache '$branch'
|
||||
git fetch --depth 1 apache $branch
|
||||
|
|
|
|||
|
|
@ -1,321 +0,0 @@
|
|||
# Licensed to the Apache Software Foundation (ASF) under one
|
||||
# or more contributor license agreements. See the NOTICE file
|
||||
# distributed with this work for additional information
|
||||
# regarding copyright ownership. The ASF licenses this file
|
||||
# to you under the Apache License, Version 2.0 (the
|
||||
# "License"); you may not use this file except in compliance
|
||||
# with the License. You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
#
|
||||
#
|
||||
---
|
||||
repaired_data_tracking_for_range_reads_enabled: "java.lang.Boolean"
|
||||
block_for_peers_timeout_in_secs: "java.lang.Integer"
|
||||
flush_compression: "org.apache.cassandra.config.Config.FlushCompression"
|
||||
audit_logging_options:
|
||||
audit_logs_dir: "java.lang.String"
|
||||
included_users: "java.lang.String"
|
||||
logger:
|
||||
class_name: "java.lang.String"
|
||||
parameters: "java.util.Map"
|
||||
excluded_categories: "java.lang.String"
|
||||
roll_cycle: "java.lang.String"
|
||||
enabled: "java.lang.Boolean"
|
||||
included_categories: "java.lang.String"
|
||||
max_archive_retries: "java.lang.Integer"
|
||||
excluded_keyspaces: "java.lang.String"
|
||||
archive_command: "java.lang.String"
|
||||
included_keyspaces: "java.lang.String"
|
||||
max_log_size: "java.lang.Long"
|
||||
allow_nodetool_archive_command: "java.lang.Boolean"
|
||||
block: "java.lang.Boolean"
|
||||
excluded_users: "java.lang.String"
|
||||
max_queue_weight: "java.lang.Integer"
|
||||
cdc_total_space_in_mb: "java.lang.Integer"
|
||||
internode_application_send_queue_reserve_global_capacity_in_bytes: "java.lang.Integer"
|
||||
row_cache_save_period: "java.lang.Integer"
|
||||
snapshot_links_per_second: "java.lang.Long"
|
||||
disk_optimization_estimate_percentile: "java.lang.Double"
|
||||
hinted_handoff_disabled_datacenters: "java.util.Set"
|
||||
cdc_enabled: "java.lang.Boolean"
|
||||
read_request_timeout_in_ms: "java.lang.Long"
|
||||
internode_application_receive_queue_reserve_global_capacity_in_bytes: "java.lang.Integer"
|
||||
credentials_validity_in_ms: "java.lang.Integer"
|
||||
memtable_heap_space_in_mb: "java.lang.Integer"
|
||||
commitlog_sync: "org.apache.cassandra.config.Config.CommitLogSync"
|
||||
user_defined_function_warn_timeout: "java.lang.Long"
|
||||
tracetype_repair_ttl: "java.lang.Integer"
|
||||
concurrent_materialized_view_writes: "java.lang.Integer"
|
||||
commitlog_total_space_in_mb: "java.lang.Integer"
|
||||
hints_directory: "java.lang.String"
|
||||
native_transport_max_concurrent_connections_per_ip: "java.lang.Long"
|
||||
internode_socket_send_buffer_size_in_bytes: "java.lang.Integer"
|
||||
rpc_interface_prefer_ipv6: "java.lang.Boolean"
|
||||
check_for_duplicate_rows_during_compaction: "java.lang.Boolean"
|
||||
internode_socket_receive_buffer_size_in_bytes: "java.lang.Integer"
|
||||
user_function_timeout_policy: "org.apache.cassandra.config.Config.UserFunctionTimeoutPolicy"
|
||||
counter_write_request_timeout_in_ms: "java.lang.Long"
|
||||
roles_update_interval_in_ms: "java.lang.Integer"
|
||||
memtable_allocation_type: "org.apache.cassandra.config.Config.MemtableAllocationType"
|
||||
trickle_fsync_interval_in_kb: "java.lang.Integer"
|
||||
enable_transient_replication: "java.lang.Boolean"
|
||||
key_cache_size_in_mb: "java.lang.Long"
|
||||
tombstone_warn_threshold: "java.lang.Integer"
|
||||
column_index_cache_size_in_kb: "java.lang.Integer"
|
||||
full_query_logging_options:
|
||||
log_dir: "java.lang.String"
|
||||
archive_command: "java.lang.String"
|
||||
max_log_size: "java.lang.Long"
|
||||
allow_nodetool_archive_command: "java.lang.Boolean"
|
||||
block: "java.lang.Boolean"
|
||||
roll_cycle: "java.lang.String"
|
||||
max_queue_weight: "java.lang.Integer"
|
||||
max_archive_retries: "java.lang.Integer"
|
||||
table_count_warn_threshold: "java.lang.Integer"
|
||||
write_request_timeout_in_ms: "java.lang.Long"
|
||||
internode_tcp_user_timeout_in_ms: "java.lang.Integer"
|
||||
auto_optimise_inc_repair_streams: "java.lang.Boolean"
|
||||
commitlog_sync_batch_window_in_ms: "java.lang.Double"
|
||||
disk_failure_policy: "org.apache.cassandra.config.Config.DiskFailurePolicy"
|
||||
tombstone_failure_threshold: "java.lang.Integer"
|
||||
validation_preview_purge_head_start_in_sec: "java.lang.Integer"
|
||||
max_mutation_size_in_kb: "java.lang.Integer"
|
||||
initial_token: "java.lang.String"
|
||||
batch_size_warn_threshold_in_kb: "java.lang.Integer"
|
||||
dynamic_snitch_badness_threshold: "java.lang.Double"
|
||||
index_summary_capacity_in_mb: "java.lang.Long"
|
||||
allocate_tokens_for_local_replication_factor: "java.lang.Integer"
|
||||
counter_cache_keys_to_save: "java.lang.Integer"
|
||||
disk_optimization_page_cross_chance: "java.lang.Double"
|
||||
listen_on_broadcast_address: "java.lang.Boolean"
|
||||
internode_application_receive_queue_reserve_endpoint_capacity_in_bytes: "java.lang.Integer"
|
||||
row_cache_class_name: "java.lang.String"
|
||||
gc_warn_threshold_in_ms: "java.lang.Integer"
|
||||
disk_optimization_strategy: "org.apache.cassandra.config.Config.DiskOptimizationStrategy"
|
||||
hinted_handoff_throttle_in_kb: "java.lang.Integer"
|
||||
otc_backlog_expiration_interval_ms: "java.lang.Integer"
|
||||
counter_cache_save_period: "java.lang.Integer"
|
||||
keyspace_count_warn_threshold: "java.lang.Integer"
|
||||
hints_flush_period_in_ms: "java.lang.Integer"
|
||||
role_manager: "java.lang.String"
|
||||
block_for_peers_in_remote_dcs: "java.lang.Boolean"
|
||||
repair_command_pool_size: "java.lang.Integer"
|
||||
column_index_size_in_kb: "java.lang.Integer"
|
||||
memtable_offheap_space_in_mb: "java.lang.Integer"
|
||||
data_file_directories: "java.util.List"
|
||||
native_transport_max_frame_size_in_mb: "java.lang.Integer"
|
||||
index_summary_resize_interval_in_minutes: "java.lang.Integer"
|
||||
enable_user_defined_functions: "java.lang.Boolean"
|
||||
max_hint_window_in_ms: "java.lang.Integer"
|
||||
seed_provider:
|
||||
class_name: "java.lang.String"
|
||||
parameters: "java.util.Map"
|
||||
check_for_duplicate_rows_during_reads: "java.lang.Boolean"
|
||||
key_cache_migrate_during_compaction: "java.lang.Boolean"
|
||||
network_authorizer: "java.lang.String"
|
||||
batchlog_replay_throttle_in_kb: "java.lang.Integer"
|
||||
enable_scripted_user_defined_functions: "java.lang.Boolean"
|
||||
internode_application_send_queue_reserve_endpoint_capacity_in_bytes: "java.lang.Integer"
|
||||
commitlog_compression:
|
||||
class_name: "java.lang.String"
|
||||
parameters: "java.util.Map"
|
||||
broadcast_address: "java.lang.String"
|
||||
credentials_update_interval_in_ms: "java.lang.Integer"
|
||||
snapshot_before_compaction: "java.lang.Boolean"
|
||||
back_pressure_strategy:
|
||||
class_name: "java.lang.String"
|
||||
parameters: "java.util.Map"
|
||||
prepared_statements_cache_size_mb: "java.lang.Long"
|
||||
native_transport_port_ssl: "java.lang.Integer"
|
||||
allocate_tokens_for_keyspace: "java.lang.String"
|
||||
diagnostic_events_enabled: "java.lang.Boolean"
|
||||
storage_port: "java.lang.Integer"
|
||||
counter_cache_size_in_mb: "java.lang.Long"
|
||||
repair_request_timeout_in_ms: "java.lang.Long"
|
||||
dynamic_snitch_reset_interval_in_ms: "java.lang.Integer"
|
||||
tracetype_query_ttl: "java.lang.Integer"
|
||||
autocompaction_on_startup_enabled: "java.lang.Boolean"
|
||||
commit_failure_policy: "org.apache.cassandra.config.Config.CommitFailurePolicy"
|
||||
concurrent_writes: "java.lang.Integer"
|
||||
range_request_timeout_in_ms: "java.lang.Long"
|
||||
dynamic_snitch_update_interval_in_ms: "java.lang.Integer"
|
||||
hinted_handoff_enabled: "java.lang.Boolean"
|
||||
internode_application_receive_queue_capacity_in_bytes: "java.lang.Integer"
|
||||
automatic_sstable_upgrade: "java.lang.Boolean"
|
||||
max_value_size_in_mb: "java.lang.Integer"
|
||||
memtable_flush_writers: "java.lang.Integer"
|
||||
otc_coalescing_strategy: "java.lang.String"
|
||||
snapshot_on_repaired_data_mismatch: "java.lang.Boolean"
|
||||
commitlog_max_compression_buffers_in_pool: "java.lang.Integer"
|
||||
internode_application_send_queue_capacity_in_bytes: "java.lang.Integer"
|
||||
roles_cache_max_entries: "java.lang.Integer"
|
||||
native_transport_max_negotiable_protocol_version: "java.lang.Integer"
|
||||
start_native_transport: "java.lang.Boolean"
|
||||
ssl_storage_port: "java.lang.Integer"
|
||||
cluster_name: "java.lang.String"
|
||||
incremental_backups: "java.lang.Boolean"
|
||||
key_cache_save_period: "java.lang.Integer"
|
||||
windows_timer_interval: "java.lang.Integer"
|
||||
rpc_interface: "java.lang.String"
|
||||
repair_session_space_in_mb: "java.lang.Integer"
|
||||
row_cache_keys_to_save: "java.lang.Integer"
|
||||
repair_command_pool_full_strategy: "org.apache.cassandra.config.Config.RepairCommandPoolFullStrategy"
|
||||
inter_dc_stream_throughput_outbound_megabits_per_sec: "java.lang.Integer"
|
||||
client_encryption_options:
|
||||
optional: "java.lang.Boolean"
|
||||
store_type: "java.lang.String"
|
||||
cipher_suites: "java.util.List"
|
||||
enabled: "java.lang.Boolean"
|
||||
require_endpoint_verification: "java.lang.Boolean"
|
||||
accepted_protocols: "java.util.List"
|
||||
keystore_password: "java.lang.String"
|
||||
protocol: "java.lang.String"
|
||||
require_client_auth: "java.lang.Boolean"
|
||||
truststore_password: "java.lang.String"
|
||||
keystore: "java.lang.String"
|
||||
truststore: "java.lang.String"
|
||||
algorithm: "java.lang.String"
|
||||
concurrent_validations: "java.lang.Integer"
|
||||
ideal_consistency_level: "org.apache.cassandra.db.ConsistencyLevel"
|
||||
consecutive_message_errors_threshold: "java.lang.Integer"
|
||||
trickle_fsync: "java.lang.Boolean"
|
||||
reject_repair_compaction_threshold: "java.lang.Integer"
|
||||
max_streaming_retries: "java.lang.Integer"
|
||||
native_transport_flush_in_batches_legacy: "java.lang.Boolean"
|
||||
rpc_address: "java.lang.String"
|
||||
file_cache_enabled: "java.lang.Boolean"
|
||||
cdc_raw_directory: "java.lang.String"
|
||||
num_tokens: "java.lang.Integer"
|
||||
repaired_data_tracking_for_partition_reads_enabled: "java.lang.Boolean"
|
||||
enable_drop_compact_storage: "java.lang.Boolean"
|
||||
commitlog_directory: "java.lang.String"
|
||||
unlogged_batch_across_partitions_warn_threshold: "java.lang.Integer"
|
||||
auto_bootstrap: "java.lang.Boolean"
|
||||
authorizer: "java.lang.String"
|
||||
sstable_preemptive_open_interval_in_mb: "java.lang.Integer"
|
||||
broadcast_rpc_address: "java.lang.String"
|
||||
listen_interface_prefer_ipv6: "java.lang.Boolean"
|
||||
repair_session_max_tree_depth: "java.lang.Integer"
|
||||
auto_optimise_preview_repair_streams: "java.lang.Boolean"
|
||||
concurrent_compactors: "java.lang.Integer"
|
||||
buffer_pool_use_heap_if_exhausted: "java.lang.Boolean"
|
||||
local_system_data_file_directory: "java.lang.String"
|
||||
stream_entire_sstables: "java.lang.Boolean"
|
||||
corrupted_tombstone_strategy: "org.apache.cassandra.config.Config.CorruptedTombstoneStrategy"
|
||||
listen_address: "java.lang.String"
|
||||
rpc_keepalive: "java.lang.Boolean"
|
||||
allow_extra_insecure_udfs: "java.lang.Boolean"
|
||||
request_timeout_in_ms: "java.lang.Long"
|
||||
disk_access_mode: "org.apache.cassandra.config.Config.DiskAccessMode"
|
||||
concurrent_counter_writes: "java.lang.Integer"
|
||||
row_cache_size_in_mb: "java.lang.Long"
|
||||
cas_contention_timeout_in_ms: "java.lang.Long"
|
||||
min_free_space_per_drive_in_mb: "java.lang.Integer"
|
||||
cross_node_timeout: "java.lang.Boolean"
|
||||
dynamic_snitch: "java.lang.Boolean"
|
||||
permissions_validity_in_ms: "java.lang.Integer"
|
||||
phi_convict_threshold: "java.lang.Double"
|
||||
native_transport_max_threads: "java.lang.Integer"
|
||||
permissions_update_interval_in_ms: "java.lang.Integer"
|
||||
authenticator: "java.lang.String"
|
||||
allow_insecure_udfs: "java.lang.Boolean"
|
||||
cache_load_timeout_seconds: "java.lang.Integer"
|
||||
concurrent_replicates: "java.lang.Integer"
|
||||
commitlog_sync_period_in_ms: "java.lang.Integer"
|
||||
auto_optimise_full_repair_streams: "java.lang.Boolean"
|
||||
internode_max_message_size_in_bytes: "java.lang.Integer"
|
||||
native_transport_max_concurrent_requests_in_bytes: "java.lang.Long"
|
||||
compaction_large_partition_warning_threshold_mb: "java.lang.Integer"
|
||||
enable_user_defined_functions_threads: "java.lang.Boolean"
|
||||
native_transport_allow_older_protocols: "java.lang.Boolean"
|
||||
otc_coalescing_enough_coalesced_messages: "java.lang.Integer"
|
||||
slow_query_log_timeout_in_ms: "java.lang.Long"
|
||||
report_unconfirmed_repaired_data_mismatches: "java.lang.Boolean"
|
||||
use_offheap_merkle_trees: "java.lang.Boolean"
|
||||
concurrent_materialized_view_builders: "java.lang.Integer"
|
||||
server_encryption_options:
|
||||
enable_legacy_ssl_storage_port: "java.lang.Boolean"
|
||||
optional: "java.lang.Boolean"
|
||||
store_type: "java.lang.String"
|
||||
cipher_suites: "java.util.List"
|
||||
enabled: "java.lang.Boolean"
|
||||
require_endpoint_verification: "java.lang.Boolean"
|
||||
accepted_protocols: "java.util.List"
|
||||
keystore_password: "java.lang.String"
|
||||
protocol: "java.lang.String"
|
||||
require_client_auth: "java.lang.Boolean"
|
||||
internode_encryption: "org.apache.cassandra.config.EncryptionOptions.ServerEncryptionOptions.InternodeEncryption"
|
||||
truststore_password: "java.lang.String"
|
||||
keystore: "java.lang.String"
|
||||
truststore: "java.lang.String"
|
||||
algorithm: "java.lang.String"
|
||||
max_hints_delivery_threads: "java.lang.Integer"
|
||||
native_transport_idle_timeout_in_ms: "java.lang.Long"
|
||||
saved_caches_directory: "java.lang.String"
|
||||
max_concurrent_automatic_sstable_upgrades: "java.lang.Integer"
|
||||
file_cache_round_up: "java.lang.Boolean"
|
||||
streaming_keep_alive_period_in_secs: "java.lang.Integer"
|
||||
enable_sasi_indexes: "java.lang.Boolean"
|
||||
gc_log_threshold_in_ms: "java.lang.Integer"
|
||||
snapshot_on_duplicate_row_detection: "java.lang.Boolean"
|
||||
commitlog_sync_group_window_in_ms: "java.lang.Double"
|
||||
internode_compression: "org.apache.cassandra.config.Config.InternodeCompression"
|
||||
otc_coalescing_window_us: "java.lang.Integer"
|
||||
credentials_cache_max_entries: "java.lang.Integer"
|
||||
periodic_commitlog_sync_lag_block_in_ms: "java.lang.Integer"
|
||||
enable_materialized_views: "java.lang.Boolean"
|
||||
roles_validity_in_ms: "java.lang.Integer"
|
||||
networking_cache_size_in_mb: "java.lang.Integer"
|
||||
native_transport_port: "java.lang.Integer"
|
||||
permissions_cache_max_entries: "java.lang.Integer"
|
||||
stream_throughput_outbound_megabits_per_sec: "java.lang.Integer"
|
||||
hints_compression:
|
||||
class_name: "java.lang.String"
|
||||
parameters: "java.util.Map"
|
||||
commitlog_periodic_queue_size: "java.lang.Integer"
|
||||
force_new_prepared_statement_behaviour: "java.lang.Boolean"
|
||||
back_pressure_enabled: "java.lang.Boolean"
|
||||
cdc_free_space_check_interval_ms: "java.lang.Integer"
|
||||
transparent_data_encryption_options:
|
||||
cipher: "java.lang.String"
|
||||
chunk_length_kb: "java.lang.Integer"
|
||||
iv_length: "java.lang.Integer"
|
||||
key_alias: "java.lang.String"
|
||||
key_provider:
|
||||
class_name: "java.lang.String"
|
||||
parameters: "java.util.Map"
|
||||
enabled: "java.lang.Boolean"
|
||||
initial_range_tombstone_list_allocation_size: "java.lang.Integer"
|
||||
partitioner: "java.lang.String"
|
||||
listen_interface: "java.lang.String"
|
||||
user_defined_function_fail_timeout: "java.lang.Long"
|
||||
file_cache_size_in_mb: "java.lang.Integer"
|
||||
inter_dc_tcp_nodelay: "java.lang.Boolean"
|
||||
internode_authenticator: "java.lang.String"
|
||||
key_cache_keys_to_save: "java.lang.Integer"
|
||||
commitlog_segment_size_in_mb: "java.lang.Integer"
|
||||
replica_filtering_protection:
|
||||
cached_rows_fail_threshold: "java.lang.Integer"
|
||||
cached_rows_warn_threshold: "java.lang.Integer"
|
||||
internode_tcp_connect_timeout_in_ms: "java.lang.Integer"
|
||||
native_transport_max_concurrent_requests_in_bytes_per_ip: "java.lang.Long"
|
||||
range_tombstone_list_growth_factor: "java.lang.Double"
|
||||
native_transport_max_concurrent_connections: "java.lang.Long"
|
||||
memtable_cleanup_threshold: "java.lang.Float"
|
||||
concurrent_reads: "java.lang.Integer"
|
||||
streaming_connections_per_host: "java.lang.Integer"
|
||||
truncate_request_timeout_in_ms: "java.lang.Long"
|
||||
auto_snapshot: "java.lang.Boolean"
|
||||
native_transport_receive_queue_capacity_in_bytes: "java.lang.Integer"
|
||||
internode_streaming_tcp_user_timeout_in_ms: "java.lang.Integer"
|
||||
batch_size_fail_threshold_in_kb: "java.lang.Integer"
|
||||
compaction_throughput_mb_per_sec: "java.lang.Integer"
|
||||
max_hints_file_size_in_mb: "java.lang.Integer"
|
||||
endpoint_snitch: "java.lang.String"
|
||||
|
|
@ -373,12 +373,6 @@ public class InstanceConfig implements IInstanceConfig
|
|||
config.remove("node_proximity");
|
||||
config.set("endpoint_snitch", "org.apache.cassandra.distributed.impl.DistributedTestSnitch");
|
||||
|
||||
// 4.0+ has seed_provider without port
|
||||
if (version.compareTo(UpgradeTestBase.v40) >= 0)
|
||||
return config;
|
||||
|
||||
config.set("seed_provider", new ParameterizedClass(SimpleSeedProvider.class.getName(),
|
||||
Collections.singletonMap("seeds", "127.0.0.1")));
|
||||
return config;
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -35,7 +35,7 @@ public class BatchUpgradeTest extends UpgradeTestBase
|
|||
.nodes(2)
|
||||
.nodesToUpgrade(2)
|
||||
.withConfig(c -> c.with(Feature.GOSSIP))
|
||||
.upgradesToCurrentFrom(v40).setup((cluster) -> {
|
||||
.upgradesToCurrentFrom(v41).setup((cluster) -> {
|
||||
cluster.schemaChange("CREATE TABLE " + KEYSPACE + ".users (" +
|
||||
"userid uuid PRIMARY KEY," +
|
||||
"firstname ascii," +
|
||||
|
|
|
|||
|
|
@ -35,7 +35,7 @@ public class CompactStorageColumnDeleteTest extends UpgradeTestBase
|
|||
.nodes(2)
|
||||
.nodesToUpgrade(2)
|
||||
.withConfig(c -> c.with(Feature.GOSSIP))
|
||||
.upgradesToCurrentFrom(v40)
|
||||
.upgradesToCurrentFrom(v41)
|
||||
.setup((cluster) -> {
|
||||
cluster.schemaChange("CREATE TABLE " + KEYSPACE + ".tbl (pk int, ck int, v int, PRIMARY KEY (pk, ck)) WITH COMPACT STORAGE");
|
||||
})
|
||||
|
|
|
|||
|
|
@ -35,7 +35,7 @@ public class CompactStorageHiddenColumnTest extends UpgradeTestBase
|
|||
.nodes(2)
|
||||
.nodesToUpgrade(2)
|
||||
.withConfig(c -> c.with(Feature.GOSSIP))
|
||||
.upgradesToCurrentFrom(v40)
|
||||
.upgradesToCurrentFrom(v41)
|
||||
.setup((cluster) -> {
|
||||
cluster.schemaChange("CREATE TABLE " + KEYSPACE + ".tbl (pk int, ck int, PRIMARY KEY (pk, ck)) WITH COMPACT STORAGE");
|
||||
})
|
||||
|
|
|
|||
|
|
@ -35,7 +35,7 @@ public class CompactStorageImplicitNullInClusteringTest extends UpgradeTestBase
|
|||
.nodes(2)
|
||||
.nodesToUpgrade(2)
|
||||
.withConfig(c -> c.with(Feature.GOSSIP))
|
||||
.upgradesToCurrentFrom(v40)
|
||||
.upgradesToCurrentFrom(v41)
|
||||
.setup((cluster) -> {
|
||||
cluster.schemaChange("CREATE TABLE " + KEYSPACE + ".tbl (pk int, ck1 int, ck2 int, v int, PRIMARY KEY (pk, ck1, ck2)) WITH COMPACT STORAGE");
|
||||
})
|
||||
|
|
|
|||
|
|
@ -35,7 +35,7 @@ public class CompactStoragePagingTest extends UpgradeTestBase
|
|||
.nodes(2)
|
||||
.nodesToUpgrade(2)
|
||||
.withConfig(c -> c.with(Feature.GOSSIP))
|
||||
.upgradesToCurrentFrom(v40)
|
||||
.upgradesToCurrentFrom(v41)
|
||||
.setup((cluster) -> {
|
||||
cluster.schemaChange("CREATE TABLE " + KEYSPACE + ".tbl (pk int, ck int, v int, PRIMARY KEY (pk, ck)) WITH COMPACT STORAGE");
|
||||
for (int i = 1; i < 10; i++)
|
||||
|
|
|
|||
|
|
@ -1,33 +0,0 @@
|
|||
/*
|
||||
* Licensed to the Apache Software Foundation (ASF) under one
|
||||
* or more contributor license agreements. See the NOTICE file
|
||||
* distributed with this work for additional information
|
||||
* regarding copyright ownership. The ASF licenses this file
|
||||
* to you under the Apache License, Version 2.0 (the
|
||||
* "License"); you may not use this file except in compliance
|
||||
* with the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package org.apache.cassandra.distributed.upgrade;
|
||||
|
||||
import com.vdurmont.semver4j.Semver;
|
||||
|
||||
/**
|
||||
* {@link CompactStoragePagingWithProtocolTester} for v40 -> CURRENT upgrade path.
|
||||
*/
|
||||
public class CompactStoragePagingWithProtocolV40Test extends CompactStoragePagingWithProtocolTester
|
||||
{
|
||||
@Override
|
||||
protected Semver initialVersion()
|
||||
{
|
||||
return v40;
|
||||
}
|
||||
}
|
||||
|
|
@ -40,8 +40,6 @@ public class CompactionHistorySystemTableUpgradeTest extends UpgradeTestBase
|
|||
new TestCase()
|
||||
.nodes(1)
|
||||
.nodesToUpgrade(1)
|
||||
// all upgrades from v40 to current, excluding v50 -> v51
|
||||
.singleUpgradeToCurrentFrom(v40)
|
||||
.singleUpgradeToCurrentFrom(v41)
|
||||
.withConfig(c -> c.with(Feature.GOSSIP))
|
||||
.setup((cluster) -> {
|
||||
|
|
|
|||
|
|
@ -34,7 +34,6 @@ import org.apache.cassandra.distributed.shared.Versions;
|
|||
import static org.apache.cassandra.config.ConfigCompatibilityTest.TEST_DIR;
|
||||
import static org.apache.cassandra.config.ConfigCompatibilityTest.dump;
|
||||
import static org.apache.cassandra.config.ConfigCompatibilityTest.toTree;
|
||||
import static org.apache.cassandra.distributed.upgrade.UpgradeTestBase.v40;
|
||||
import static org.apache.cassandra.distributed.upgrade.UpgradeTestBase.v41;
|
||||
import static org.apache.cassandra.distributed.upgrade.UpgradeTestBase.v50;
|
||||
|
||||
|
|
@ -47,7 +46,7 @@ public class ConfigCompatibilityTestGenerate
|
|||
{
|
||||
ICluster.setup();
|
||||
Versions versions = Versions.find();
|
||||
for (Semver version : Arrays.asList(v40, v41, v50))
|
||||
for (Semver version : Arrays.asList(v41, v50))
|
||||
{
|
||||
File path = new File(TEST_DIR, "version=" + version + ".yml");
|
||||
path.getParentFile().mkdirs();
|
||||
|
|
|
|||
|
|
@ -1,33 +0,0 @@
|
|||
/*
|
||||
* Licensed to the Apache Software Foundation (ASF) under one
|
||||
* or more contributor license agreements. See the NOTICE file
|
||||
* distributed with this work for additional information
|
||||
* regarding copyright ownership. The ASF licenses this file
|
||||
* to you under the Apache License, Version 2.0 (the
|
||||
* "License"); you may not use this file except in compliance
|
||||
* with the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package org.apache.cassandra.distributed.upgrade;
|
||||
|
||||
import org.junit.Test;
|
||||
|
||||
/**
|
||||
* {@link MixedModeIndexTestBase} for upgrades from 4.0.
|
||||
*/
|
||||
public class MixedModeIndexV40Test extends MixedModeIndexTestBase
|
||||
{
|
||||
@Test
|
||||
public void testIndex() throws Throwable
|
||||
{
|
||||
testIndex(v40);
|
||||
}
|
||||
}
|
||||
|
|
@ -104,7 +104,7 @@ public class MixedModeMessageForwardTest extends UpgradeTestBase
|
|||
.withConfig(c -> c.with(Feature.GOSSIP, Feature.NETWORK))
|
||||
.withBuilder(b -> b.withRacks(numDCs, 1, nodesPerDc))
|
||||
.nodes(numDCs * nodesPerDc)
|
||||
.upgradesToCurrentFrom(v40)
|
||||
.upgradesToCurrentFrom(v41)
|
||||
.setup(cluster -> {
|
||||
cluster.schemaChange("ALTER KEYSPACE " + KEYSPACE +
|
||||
" WITH replication = {'class': 'NetworkTopologyStrategy', " + ntsArgs + " };");
|
||||
|
|
|
|||
|
|
@ -33,22 +33,12 @@ public class MixedModePaxosTTLTest extends UpgradeTestBase
|
|||
/**
|
||||
* Tests the mixed mode paxos loop bug in CASSANDRA-20514
|
||||
*
|
||||
* CEP-14 changed the ttl behavior of legacy paxos state to expire based off the ballot time of the operation being
|
||||
* persisted, not the time a commit is persisted. This eliminated the race addressed by CASSANDRA-12043, and so the
|
||||
* check it added to the most recent commit prepare logic was removed.
|
||||
*
|
||||
* When operating in mixed mode though, this can still be a problem. If a 4.1 or higher node is coordinating a paxos
|
||||
* operation with 2 or more replicas on 4.0 or lower, this race becomes a problem again. You need 3 things to make
|
||||
* this an infinite loop
|
||||
* 1. a 4.1 node coordinating a paxos operation with 2x 4.0 replicas
|
||||
* 2. replica A) a 4.0 node returns a most recent commit for a ballot that's could have been ttld
|
||||
* 3. replica B) a 4.0 node has ttl'd that mrc AND converted the ttld cells into tombstones
|
||||
*
|
||||
* The 4.1 coordinator receives the mrc from replica A, but since it no longer disregards missing most recent commits
|
||||
* past the ttl window, it sends the "missing" commit to replica B. Since replica B now has a tombstone for that mrc,
|
||||
* and tombstones win when reconciled with live cells, even ones with ttls, the commit is a noop and it continues
|
||||
* to report nothing for its mrc value when the coordinator restarts the prepare phase. This loops until the query
|
||||
* times out.
|
||||
* Regression test for mixed-mode paxos with ttl'd legacy paxos state. CEP-14 made legacy paxos
|
||||
* state expire off the ballot time rather than the commit-persist time, which eliminated the race
|
||||
* addressed by CASSANDRA-12043 and let that check be removed. Historically, a post-CEP-14
|
||||
* coordinator paired with pre-CEP-14 replicas could hit an infinite prepare loop when a tombstoned
|
||||
* most-recent-commit on one replica shadowed the coordinator's resend. This test keeps the
|
||||
* scenario covered for current upgrade paths.
|
||||
*/
|
||||
@Test
|
||||
public void legacyExpiredStateTest() throws Throwable
|
||||
|
|
@ -61,7 +51,7 @@ public class MixedModePaxosTTLTest extends UpgradeTestBase
|
|||
.withConfig(c -> c.with(Feature.GOSSIP, Feature.NETWORK).set("cas_contention_timeout", "500ms"))
|
||||
.nodes(3)
|
||||
.nodesToUpgrade(1)
|
||||
.upgradesToCurrentFrom(v40)
|
||||
.upgradesToCurrentFrom(v41)
|
||||
.setup(cluster -> {
|
||||
cluster.schemaChange(format("CREATE KEYSPACE %s WITH REPLICATION={'class': 'SimpleStrategy', 'replication_factor': '2'}", keyspace));
|
||||
cluster.schemaChange(format("CREATE TABLE %s.%s (k int primary key, v int) " +
|
||||
|
|
|
|||
|
|
@ -52,24 +52,12 @@ public abstract class MixedModePaxosTestBase extends UpgradeTestBase
|
|||
/**
|
||||
* Tests the mixed mode loop bug in CASSANDRA-20493
|
||||
* <p>
|
||||
* Paxos uses a 'zero' ballot in place of null when it doesn't find a ballot in system.paxos. CEP-14 changed the lsb
|
||||
* of the zero ballot uuid from the TimeUUID.MIN_CLOCK_SEQ_AND_NODE value of 0x8080808080808080 (-9187201950435737472)
|
||||
* to 0. It also removed the check added in CASSANDRA-12043, since the way it read and filtered ttld paxos data had
|
||||
* been improved.
|
||||
* <p>
|
||||
* In mixed mode with a 4.0 or lower replica and a 4.1 and higher paxos coordinator, and in the absence of existing
|
||||
* paxos metadata for the key being queried, the prepare phase will interpret the mismatched ‘zero’ ballots as the
|
||||
* 4.0 and lower nodes having missed the most recent commit and will attempt to update them using the 4.1 zero ballot
|
||||
* and empty partition update.
|
||||
* <p>
|
||||
* In cases where this is the first paxos operation on a key, or the previously ttl'd paxos data on disk had been purged,
|
||||
* this would just add a retry step as it updated the 4.0 and lower hosts with its zero ballot.
|
||||
* <p>
|
||||
* On nodes where there was ttl'd paxos data though, the ttl'd data on disk would shadow this update. This would
|
||||
* happen because paxos commits are recorded to system.paxos using the ballot timestamp as the write timestamp, so
|
||||
* the more recent write updating the commit with timestamp 0 would be shadowed by the now ttl’d write with a ‘real’
|
||||
* timestamp. When the prepare phase restarted it would again get the old zero value and cause the prepare phase to
|
||||
* get into an infinite loop.
|
||||
* Regression test for mixed-mode paxos with TTL'd paxos data on disk. CEP-14 changed the lsb of the
|
||||
* zero ballot uuid from TimeUUID.MIN_CLOCK_SEQ_AND_NODE (0x8080808080808080) to 0 and removed the
|
||||
* CASSANDRA-12043 check; the historical concern was that pre-CEP-14 replicas paired with newer
|
||||
* coordinators could get stuck in an infinite prepare loop when ttl'd system.paxos data shadowed
|
||||
* the coordinator's zero-ballot update. This test keeps the scenario covered for current upgrade
|
||||
* paths.
|
||||
*/
|
||||
private void ttldPaxosStateTest(boolean legacyAware, boolean upgradeAware) throws Throwable
|
||||
{
|
||||
|
|
@ -81,7 +69,7 @@ public abstract class MixedModePaxosTestBase extends UpgradeTestBase
|
|||
.withConfig(c -> c.with(Feature.GOSSIP, Feature.NETWORK))
|
||||
.nodes(2)
|
||||
.nodesToUpgrade(1)
|
||||
.upgradesToCurrentFrom(v40)
|
||||
.upgradesToCurrentFrom(v41)
|
||||
.setup(cluster -> {
|
||||
cluster.schemaChange(format("CREATE TABLE %s.%s (k int primary key, v int) " +
|
||||
"WITH gc_grace_seconds=%s", keyspace, table, gcGrace));
|
||||
|
|
|
|||
|
|
@ -44,9 +44,7 @@ public class MixedModeRepairTest extends UpgradeTestBase
|
|||
public static final String SELECT = withKeyspace("SELECT * FROM %s.t WHERE k=?");
|
||||
|
||||
/**
|
||||
* Test that repairs fail during a major upgrade. If the repaired node is >= 4.0 thanks to CASSANDRA-13944 there
|
||||
* will be an informative message. Otherwise, if the repaired node is below 4.0, there won't be such an informative
|
||||
* message and the repair will take very long to timeout.
|
||||
* Test that repairs fail during a major upgrade with an informative message (CASSANDRA-13944).
|
||||
*/
|
||||
@Test
|
||||
public void testRepairDuringMajorUpgrade() throws Throwable
|
||||
|
|
@ -54,7 +52,7 @@ public class MixedModeRepairTest extends UpgradeTestBase
|
|||
new UpgradeTestBase.TestCase()
|
||||
.nodes(2)
|
||||
.nodesToUpgrade(UPGRADED_NODE)
|
||||
.upgradesToCurrentFrom(v40)
|
||||
.upgradesToCurrentFrom(v41)
|
||||
.withConfig(config -> config.with(NETWORK, GOSSIP).set("storage_compatibility_mode", "CASSANDRA_4"))
|
||||
.setup(cluster -> {
|
||||
cluster.schemaChange(CREATE_TABLE);
|
||||
|
|
|
|||
|
|
@ -111,8 +111,6 @@ public abstract class MixedModeTTLOverflowUpgradeTestBase extends UpgradeTestBas
|
|||
new TestCase()
|
||||
.nodes(2)
|
||||
.nodesToUpgradeOrdered(1, 2)
|
||||
// all upgrades from v40 to current, excluding v50 -> v51
|
||||
.singleUpgradeToCurrentFrom(v40)
|
||||
.singleUpgradeToCurrentFrom(v41)
|
||||
.withConfig(c -> c.with(Feature.GOSSIP).set("storage_compatibility_mode", "CASSANDRA_4"))
|
||||
.setup(cluster -> {
|
||||
|
|
|
|||
|
|
@ -53,8 +53,6 @@ public class MixedModeWritetimeOrTTLTest extends UpgradeTestBase
|
|||
new TestCase()
|
||||
.nodes(2)
|
||||
.nodesToUpgradeOrdered(1, 2)
|
||||
// all upgrades from v40 to current, excluding v50 -> v51
|
||||
.singleUpgradeToCurrentFrom(v40)
|
||||
.singleUpgradeToCurrentFrom(v41)
|
||||
.withConfig(c -> c.with(Feature.GOSSIP))
|
||||
.setup(cluster -> {
|
||||
|
|
|
|||
|
|
@ -1,63 +0,0 @@
|
|||
/*
|
||||
* Licensed to the Apache Software Foundation (ASF) under one
|
||||
* or more contributor license agreements. See the NOTICE file
|
||||
* distributed with this work for additional information
|
||||
* regarding copyright ownership. The ASF licenses this file
|
||||
* to you under the Apache License, Version 2.0 (the
|
||||
* "License"); you may not use this file except in compliance
|
||||
* with the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package org.apache.cassandra.distributed.upgrade;
|
||||
|
||||
import java.util.function.Consumer;
|
||||
|
||||
import org.junit.Test;
|
||||
|
||||
import org.apache.cassandra.distributed.api.ConsistencyLevel;
|
||||
import org.apache.cassandra.distributed.api.Feature;
|
||||
import org.apache.cassandra.distributed.api.IInstanceConfig;
|
||||
|
||||
public class Pre40MessageFilterTest extends UpgradeTestBase
|
||||
{
|
||||
public void reserializePre40RequestPaxosTest(Consumer<IInstanceConfig> configConsumer) throws Throwable
|
||||
{
|
||||
new UpgradeTestBase.TestCase()
|
||||
.nodes(2)
|
||||
.withConfig(configConsumer)
|
||||
.nodesToUpgrade(1)
|
||||
.upgradesToCurrentFrom(v40)
|
||||
.setup((cluster) -> {
|
||||
cluster.filters().outbound().allVerbs().messagesMatching((f,t,m) -> false).drop();
|
||||
cluster.schemaChange("CREATE TABLE " + KEYSPACE + ".tbl (pk int, ck int, v int, PRIMARY KEY (pk, ck))");
|
||||
cluster.coordinator(1).execute("INSERT INTO " + KEYSPACE + ".tbl(pk,ck,v) VALUES (1, 1, 1) IF NOT EXISTS",
|
||||
ConsistencyLevel.QUORUM,
|
||||
1);
|
||||
})
|
||||
.runAfterNodeUpgrade((cluster, node) -> {
|
||||
cluster.coordinator(node).execute("UPDATE " + KEYSPACE + ".tbl SET v = ? WHERE pk = ? AND ck = ? IF v = ?",
|
||||
ConsistencyLevel.QUORUM,
|
||||
2, 1, 1, 1);
|
||||
}).run();
|
||||
}
|
||||
|
||||
@Test
|
||||
public void reserializePre40RequestPaxosWithoutNetworkTest() throws Throwable
|
||||
{
|
||||
reserializePre40RequestPaxosTest(config -> config.with(Feature.GOSSIP));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void reserializePre40RequestPaxosWithNetworkTest() throws Throwable
|
||||
{
|
||||
reserializePre40RequestPaxosTest(config -> config.with(Feature.NETWORK, Feature.GOSSIP));
|
||||
}
|
||||
}
|
||||
|
|
@ -1,53 +0,0 @@
|
|||
/*
|
||||
* Licensed to the Apache Software Foundation (ASF) under one
|
||||
* or more contributor license agreements. See the NOTICE file
|
||||
* distributed with this work for additional information
|
||||
* regarding copyright ownership. The ASF licenses this file
|
||||
* to you under the Apache License, Version 2.0 (the
|
||||
* "License"); you may not use this file except in compliance
|
||||
* with the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package org.apache.cassandra.distributed.upgrade;
|
||||
|
||||
import org.junit.Test;
|
||||
|
||||
import org.apache.cassandra.distributed.api.Feature;
|
||||
|
||||
import static org.apache.cassandra.net.Verb.VALIDATION_REQ;
|
||||
|
||||
public class RepairRequestTimeoutUpgradeTest extends UpgradeTestBase
|
||||
{
|
||||
@Test
|
||||
public void simpleUpgradeWithNetworkAndGossipTest() throws Throwable
|
||||
{
|
||||
new TestCase()
|
||||
.nodes(2)
|
||||
.nodesToUpgrade(1)
|
||||
.withConfig((cfg) -> cfg.with(Feature.NETWORK, Feature.GOSSIP).set("repair_request_timeout_in_ms", 1000))
|
||||
.upgrades(v40, v41)
|
||||
.setup((cluster) -> {
|
||||
cluster.schemaChange("CREATE TABLE " + KEYSPACE + ".tbl (pk int, ck int, v int, PRIMARY KEY (pk, ck))");
|
||||
for (int i = 0; i < 10; i++)
|
||||
cluster.get(i % 2 + 1).executeInternal("INSERT INTO " + KEYSPACE + ".tbl (pk, ck, v) VALUES ("+i+", 1, 1)");
|
||||
cluster.forEach(i -> i.flush(KEYSPACE));
|
||||
})
|
||||
.runAfterNodeUpgrade((cluster, node) -> {
|
||||
cluster.filters().verbs(VALIDATION_REQ.id).drop();
|
||||
cluster.get(2).nodetoolResult("repair", KEYSPACE, "-full").asserts().failure();
|
||||
cluster.filters().reset();
|
||||
for (int i = 10; i < 20; i++)
|
||||
cluster.get(i % 2 + 1).executeInternal("INSERT INTO " + KEYSPACE + ".tbl (pk, ck, v) VALUES ("+i+", 1, 1)");
|
||||
cluster.forEach(i -> i.flush(KEYSPACE));
|
||||
cluster.get(1).nodetoolResult("repair", KEYSPACE, "-full").asserts().success();
|
||||
}).run();
|
||||
}
|
||||
}
|
||||
|
|
@ -95,7 +95,6 @@ public class UpgradeTestBase extends DistributedTestBase
|
|||
public void run(UpgradeableCluster cluster, int node) throws Throwable;
|
||||
}
|
||||
|
||||
public static final Semver v40 = new Semver("4.0-alpha1", SemverType.LOOSE);
|
||||
public static final Semver v41 = new Semver("4.1-alpha1", SemverType.LOOSE);
|
||||
public static final Semver v42 = new Semver("4.2-alpha1", SemverType.LOOSE);
|
||||
public static final Semver v50 = new Semver("5.0-alpha1", SemverType.LOOSE);
|
||||
|
|
@ -103,13 +102,6 @@ public class UpgradeTestBase extends DistributedTestBase
|
|||
public static final Semver v70 = new Semver("7.0-alpha1", SemverType.LOOSE);
|
||||
|
||||
protected static final SimpleGraph<Semver> SUPPORTED_UPGRADE_PATHS = new SimpleGraph.Builder<Semver>()
|
||||
// 40 edges are here temporarily
|
||||
// until we resolve CASSANDRA-21324
|
||||
.addEdge(v40, v41)
|
||||
.addEdge(v40, v50)
|
||||
.addEdge(v40, v60)
|
||||
.addEdge(v40, v70)
|
||||
/////
|
||||
.addEdge(v41, v50)
|
||||
.addEdge(v41, v60)
|
||||
.addEdge(v41, v70)
|
||||
|
|
|
|||
|
|
@ -143,15 +143,6 @@ public class ConfigCompatibilityTest
|
|||
diff(TEST_DIR + "/version=3.11.0.yml", ALLOW_LIST, EXPECTED_FOR_50);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void diff_4_0() throws IOException
|
||||
{
|
||||
diff(TEST_DIR + "/version=4.0-alpha1.yml", ImmutableSet.<String>builder()
|
||||
.addAll(WINDOWS)
|
||||
.addAll(ALLOW_LIST)
|
||||
.build(), EXPECTED_FOR_50);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void diff_4_1() throws IOException
|
||||
{
|
||||
|
|
|
|||
Loading…
Reference in New Issue