[ https://issues.apache.org/jira/browse/CASSANDRA-17737?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17571650#comment-17571650 ]
Ekaterina Dimitrova edited comment on CASSANDRA-17737 at 7/26/22 11:04 PM: --------------------------------------------------------------------------- So the property I am wondering about is sstable_preemptive_open_interval. It seems we have a [check|https://github.com/apache/cassandra/blob/trunk/src/java/org/apache/cassandra/io/sstable/SSTableRewriter.java#L109] for being less than 0, I can see that for Windows we were setting it to -1 [here|https://github.com/apache/cassandra/commit/da47849b50daa0580f2cb4264bcee8a75140eb05#diff-054af65b8d690b0fddc3e0a4ef05a80d8f1d6689b4f77912795fec019200666cL2806] before the windows support was removed, not anymore. Negatives are not documented anywhere and in 4.1 we cannot set it to negatives anymore (after CASSANDRA-15234). Not sure whether we should add a converter similar to other properties that if this one was set to negative value with the old name sstable_preemptive_open_interval_in_mb we should assign null with the new name post 4.1 and use that one. I suspect it was left undocumented and advanced option? Or was -1 only for Windows?? [~benedict] I see you added this one long time ago in CASSANDRA-6916, do you think you can advise me here, please? Or maybe [~stefan.miklosovic] , [~brandon.williams] or [~jmckenzie] can advise me as you were working on removing the Windows support classes? Trying not to break users. was (Author: e.dimitrova): So the property I am wondering about is sstable_preemptive_open_interval. It seems we have a [check|https://github.com/apache/cassandra/blob/trunk/src/java/org/apache/cassandra/io/sstable/SSTableRewriter.java#L109] for being less than 0, I can see that for Windows we were setting it to -1 [here|https://github.com/apache/cassandra/commit/da47849b50daa0580f2cb4264bcee8a75140eb05#diff-054af65b8d690b0fddc3e0a4ef05a80d8f1d6689b4f77912795fec019200666cL2806] before the windows support was removed, not anymore. Negatives are not documented anywhere and in 4.1 we cannot set it to negatives anymore (after CASSANDRA-15234). Not sure whether we should add a converter similar to other properties that if this one was set to negative value with the old name sstable_preemptive_open_interval_in_mb we should assign null with the new name post 4.1 and use that one. I suspect it was left undocumented and advanced option? Or was -1 only for Windows?? [~benedict] I see you added this one long time ago in CASSANDRA-6916, do you think you can advise me here, please? Or maybe [~stefan.miklosovic] , [~brandon.williams] or [~jmckenzie] can advise as you were working on removing the windows support? Trying not to break users. > Validate that JMX updates properly any properties that were moved to the new > config classes > ------------------------------------------------------------------------------------------- > > Key: CASSANDRA-17737 > URL: https://issues.apache.org/jira/browse/CASSANDRA-17737 > Project: Cassandra > Issue Type: Task > Components: Local/Config > Reporter: Ekaterina Dimitrova > Assignee: Ekaterina Dimitrova > Priority: Normal > Fix For: 4.0.x, 4.1-beta, 4.1.x, 4.x > > > Check that any properties moved to the new types in 4.1 (Duration, Data > Storage, Data Rate) are always updated by JMX and there are no inconsistent > validations that might cover bugs. Validate proper update in 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: > *DataRateSpec* - entire_sstable_stream_throughput_outbound, > inter_dc_stream_throughput_outbound, > entire_sstable_inter_dc_stream_throughput_outbound, compaction_throughput, > stream_throughput_outbound - we have setGet* tests and those seem solid, no > issues found. > *DurationSpec* - gc_log_threshold, permissions_validity, denylist_refresh, > request_timeout, hints_flush_period, read_request_timeout, > index_summary_resize_interval, streaming_keep_alive_period, max_hint_window, > roles_update_interval, user_defined_functions_fail_timeout, > write_request_timeout, cdc_free_space_check_interval, roles_validity, > internode_streaming_tcp_user_timeout, gc_warn_threshold, > range_request_timeout, credentials_update_interval, truncate_request_timeout, > cas_contention_timeout, periodic_commitlog_sync_lag_block, > streaming_state_expires, repair_request_timeout, permissions_update_interval, > dynamic_snitch_reset_interval, internode_tcp_connect_timeout, > paxos_purge_grace_period, dynamic_snitch_update_interval, > trace_type_query_ttl, denylist_initial_load_retry, commitlog_sync_period, > native_transport_idle_timeout, credentials_validity, > validation_preview_purge_head_start, repair_state_expires, > internode_tcp_user_timeout, trace_type_repair_ttl, cache_load_timeout, > commitlog_sync_group_window, slow_query_log_timeout, > counter_write_request_timeout, user_defined_functions_warn_timeout > *DataStorageSpec* - > internode_application_send_queue_reserve_endpoint_capacity, cdc_total_space, > networking_cache_size, commitlog_total_space, > internode_application_send_queue_capacity, key_cache_size, > memtable_heap_space, trickle_fsync_interval, max_hints_size_per_host, > internode_application_receive_queue_reserve_endpoint_capacity, > native_transport_max_frame_size, coordinator_read_size_warn_threshold , > internode_application_receive_queue_reserve_global_capacity, > internode_max_message_size, file_cache_size, local_read_size_fail_threshold, > data_disk_usage_max_disk_size, memtable_offheap_space, > coordinator_read_size_fail_threshold, counter_cache_size, > prepared_statements_cache_size, batchlog_replay_throttle, > row_index_read_size_fail_threshold, index_summary_capacity, > repair_session_space, paxos_cache_size, collection_size_fail_threshold, > internode_application_send_queue_reserve_global_capacity, column_index_size, > native_transport_receive_queue_capacity, sstable_preemptive_open_interval, > max_mutation_size, min_free_space_per_drive, batch_size_fail_threshold, > hinted_handoff_throttle, row_index_read_size_warn_threshold, max_value_size, > column_index_cache_size, compaction_large_partition_warning_threshold, > max_hints_file_size, collection_size_warn_threshold, > native_transport_max_request_data_in_flight, > internode_socket_receive_buffer_size, > internode_application_receive_queue_capacity, > internode_socket_send_buffer_size, row_cache_size, > min_tracked_partition_size, local_read_size_warn_threshold, > commitlog_segment_size, batch_size_warn_threshold, streaming_state_size, > native_transport_max_request_data_in_flight_per_ip > NOTE: Some of those were checked/fixed in other tickets but I post the full > lists for completeness -- This message was sent by Atlassian Jira (v8.20.10#820010) --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org