{"record":{"id":"211d70cc760f809b","repo":"apache/cassandra","slug":"invalid-value-of-entire-sstable-inter-dc-stream-th","errorCode":null,"errorMessage":"Invalid value of entire_sstable_inter_dc_stream_throughput_outbound: ","messagePattern":"Invalid value of entire_sstable_inter_dc_stream_throughput_outbound: ","errorType":"validation","errorClass":"ConfigurationException","httpStatus":null,"severity":"error","filePath":"src/java/org/apache/cassandra/config/DatabaseDescriptor.java","lineNumber":1319,"sourceCode":"        // below 2 checks are needed in order to match the pre-CASSANDRA-15234 upper bound for those parameters which were still in megabits per second\n        if (conf.stream_throughput_outbound.toMegabitsPerSecond() >= Integer.MAX_VALUE)\n        {\n            throw new ConfigurationException(\"Invalid value of stream_throughput_outbound: \" + conf.stream_throughput_outbound.toString(), false);\n        }\n\n        if (conf.inter_dc_stream_throughput_outbound.toMegabitsPerSecond() >= Integer.MAX_VALUE)\n        {\n            throw new ConfigurationException(\"Invalid value of inter_dc_stream_throughput_outbound: \" + conf.inter_dc_stream_throughput_outbound.toString(), false);\n        }\n\n        if (conf.entire_sstable_stream_throughput_outbound.toMebibytesPerSecond() >= Integer.MAX_VALUE)\n        {\n            throw new ConfigurationException(\"Invalid value of entire_sstable_stream_throughput_outbound: \" + conf.entire_sstable_stream_throughput_outbound.toString(), false);\n        }\n\n        if (conf.entire_sstable_inter_dc_stream_throughput_outbound.toMebibytesPerSecond() >= Integer.MAX_VALUE)\n        {\n            throw new ConfigurationException(\"Invalid value of entire_sstable_inter_dc_stream_throughput_outbound: \" + conf.entire_sstable_inter_dc_stream_throughput_outbound.toString(), false);\n        }\n\n        if (conf.compaction_throughput.toMebibytesPerSecond() >= Integer.MAX_VALUE)\n        {\n            throw new ConfigurationException(\"Invalid value of compaction_throughput: \" + conf.compaction_throughput.toString(), false);\n        }\n    }\n\n    @VisibleForTesting\n    static void applyConcurrentValidations(Config config)\n    {\n        if (config.concurrent_validations < 1)\n        {\n            config.concurrent_validations = config.concurrent_compactors;\n        }\n        else if (config.concurrent_validations > config.concurrent_compactors && !allowUnlimitedConcurrentValidations)\n        {\n            throw new ConfigurationException(\"To set concurrent_validations > concurrent_compactors, \" +","sourceCodeStart":1301,"sourceCodeEnd":1337,"githubUrl":"https://github.com/apache/cassandra/blob/88fd0f6a0eaed8943f05ac9e8f947882b8ddc8f1/src/java/org/apache/cassandra/config/DatabaseDescriptor.java#L1301-L1337","documentation":"Same int-overflow validation as error 210 but for entire_sstable_inter_dc_stream_throughput_outbound: the value in MiB/s must be < Integer.MAX_VALUE. DatabaseDescriptor throws this ConfigurationException at startup when the configured inter-DC entire-SSTable streaming throughput cannot fit the internal int rate limiter.","triggerScenarios":"entire_sstable_inter_dc_stream_throughput_outbound in cassandra.yaml set so that toMebibytesPerSecond() >= 2147483647, encountered during DatabaseDescriptor.daemonInitialization/applySimpleConfig.","commonSituations":"Unit-suffix typos in cassandra.yaml; operator setting an enormous number to 'disable' inter-DC entire-SSTable throttling; automated config generation producing overflow values.","solutions":["Set entire_sstable_inter_dc_stream_throughput_outbound to a value below Integer.MAX_VALUE MiB/s","Use the documented disabled/unlimited value instead of a huge number","Check the unit suffix and numeric literal for typos","Confirm the parsed value shown in the exception matches what you intended"],"exampleFix":"// before (cassandra.yaml)\nentire_sstable_inter_dc_stream_throughput_outbound: 9999999999MiB\n// after\nentire_sstable_inter_dc_stream_throughput_outbound: 200MiB","handlingStrategy":"validation","validationCode":"long v = conf.entire_sstable_inter_dc_stream_throughput_outbound.toMebibytesPerSecond();\nif (v < 0 || v >= Integer.MAX_VALUE) throw new IllegalArgumentException(\"entire_sstable_inter_dc_stream_throughput_outbound out of range: \" + v);","typeGuard":null,"tryCatchPattern":"try { DatabaseDescriptor.daemonInitialization(); } catch (ConfigurationException e) { LOG.error(\"Bad inter-DC throughput config: \" + e.getMessage()); System.exit(1); }","preventionTips":["Validate inter-DC streaming values against int range before rollout","Avoid using giant numbers as 'disabled'","Double-check unit suffixes","Diff config changes between environments"],"tags":["configuration","startup","validation"],"backgroundTag":"invalid-config-value","analyzedSha":"88fd0f6a0eaed8943f05ac9e8f947882b8ddc8f1","analyzedAt":"2026-09-10T07:29:22.284Z","contentChangedAt":"2026-09-10T07:29:22.284Z","schemaVersion":2},"datasetVersion":"2026-09-14T16:17:12.679Z"}