Bug: Validate that JMX updates any new 4.1 properties (non-duration, non-data rate, non-data storage) in Config class and not local copies which can lead to inconsistencies between JMX and Settings Virtual Table after startup
Status: Resolved
Priority: Normal
Resolution: Fixed
Created: 06/Jul/22 15:27
Resolved: 25/Jul/22 14:25

Check that any properties which are added in 4.1 (non-Duration, non-Data Storage, non-Data Rate) are always updated by JMX in Config class and not local copies.This will ensure update in Settings Virtual Table after startup and no inconsistencies between JMX and Settings Virtual Table

I branched the configCompatibilityTest in 4.1 in order to get the lists of properties in this [commit|https://github.com/ekaterinadimitrova2/cassandra/commit/f2c02861abf0d6c34257d2fac827562437362137] - the commit won't get into the codebase, just pasting so people know how the lists were generated:

_columns_per_table_warn_threshold, partition_keys_in_select_fail_threshold, group_by_enabled, cdc_block_writes, paxos_variant, max_top_tombstone_partition_count, data_disk_usage_percentage_fail_threshold, internode_timeout, compaction_tombstone_warning_threshold, enable_uuid_sstable_identifiers, user_timestamps_enabled, paxos_topology_repair_no_dc_checks, scripted_user_defined_functions_enabled, denylist_max_keys_per_table, auth_cache_warming_enabled, write_consistency_levels_disallowed, auth_write_consistency_level, denylist_range_reads_enabled, roles_cache_active_update, paxos_repair_parallelism, hint_window_persistent_enabled, paxos_contention_max_wait, table_properties_ignored, read_before_write_list_operations_enabled, in_select_cartesian_product_warn_threshold, paxos_topology_repair_strict_each_quorum, top_partitions_enabled, secondary_indexes_per_table_fail_threshold, auto_snapshot_ttl, read_consistency_levels_warned, secondary_indexes_enabled, internode_error_reporting_exclusions, paxos_contention_min_delta, default_keyspace_rf, write_consistency_levels_warned, use_deterministic_table_id, sasi_indexes_enabled, min_tracked_partition_tombstone_count, minimum_replication_factor_fail_threshold, table_properties_disallowed, memtable, keyspaces_warn_threshold, transient_replication_enabled, user_defined_functions_enabled, user_defined_functions_threads_enabled, native_transport_max_requests_per_second, in_select_cartesian_product_fail_threshold, denylist_max_keys_total, tables_fail_threshold, read_consistency_levels_disallowed, fields_per_udt_warn_threshold, paxos_on_linearizability_violations, page_size_warn_threshold, minimum_replication_factor_warn_threshold, denylist_writes_enabled, traverse_auth_from_root, denylist_consistency_level, table_properties_warned, materialized_views_enabled, fields_per_udt_fail_threshold, denylist_reads_enabled, permissions_cache_active_update, available_processors, secondary_indexes_per_table_warn_threshold, tables_warn_threshold, client_error_reporting_exclusions, items_per_collection_warn_threshold, page_size_fail_threshold, paxos_contention_wait_randomizer, partition_denylist_enabled, skip_paxos_repair_on_topology_change_keyspaces, credentials_cache_active_update, failure_detector, drop_compact_storage_enabled, uncompressed_tables_enabled, materialized_views_per_table_fail_threshold, keyspaces_fail_threshold, data_disk_usage_percentage_warn_threshold, repair_state_size, paxos_contention_min_wait, auth_read_consistency_level, items_per_collection_fail_threshold, paxos_state_purging, materialized_views_per_table_warn_threshold, allow_filtering_enabled, columns_per_table_fail_threshold, paxos_repair_enabled, startup_checks, compact_tables_enabled, drop_truncate_table_enabled, max_top_size_partition_count, native_transport_rate_limiting_enabled, use_statements_enabled, auto_hints_cleanup_enabled, skip_paxos_repair_on_topology_change, partition_keys_in_select_warn_threshold, read_thresholds_enabled_