{"record":{"id":"297d5f295b42c914","repo":"apache/cassandra","slug":"use-deterministic-table-id-is-no-longer-supported","errorCode":null,"errorMessage":"use_deterministic_table_id is no longer supported and should be removed from cassandra.yaml.","messagePattern":"use_deterministic_table_id is no longer supported and should be removed from cassandra\\.yaml\\.","errorType":"console","errorClass":null,"httpStatus":null,"severity":"warning","filePath":"src/java/org/apache/cassandra/config/DatabaseDescriptor.java","lineNumber":1275,"sourceCode":"                                                           conf.progress_barrier_min_consistency_level, progressBarrierCLsArr));\n        }\n\n        if (!progressBarrierCls.contains(conf.progress_barrier_default_consistency_level))\n        {\n            throw new ConfigurationException(String.format(\"Invalid value for.progress_barrier_default_consistency_level %s. Allowed values: %s\",\n                                                           conf.progress_barrier_default_consistency_level, progressBarrierCLsArr));\n        }\n\n        if (conf.native_transport_min_backoff_on_queue_overload.toMilliseconds() <= 0)\n            throw new ConfigurationException(\" be positive\");\n\n        if (conf.native_transport_min_backoff_on_queue_overload.toMilliseconds() >= conf.native_transport_max_backoff_on_queue_overload.toMilliseconds())\n            throw new ConfigurationException(String.format(\"native_transport_min_backoff_on_queue_overload should be strictly less than native_transport_max_backoff_on_queue_overload, but %s >= %s\",\n                                                           conf.native_transport_min_backoff_on_queue_overload,\n                                                           conf.native_transport_max_backoff_on_queue_overload));\n\n        if (conf.use_deterministic_table_id)\n            logger.warn(\"use_deterministic_table_id is no longer supported and should be removed from cassandra.yaml.\");\n\n        // run audit logging options through sanitation and validation\n        if (conf.audit_logging_options != null)\n            setAuditLoggingOptions(conf.audit_logging_options);\n\n        try\n        {\n            // Run through the validation by setting current values back to their setters, so we are sure that their values are valid.\n            // We are catching IllegalArgumentException and translating it to ConfigurationException to comply with\n            // rest of the logic in this method. These setters are also called in GCInspectorMXBean were IllegalArgumentException\n            // is thrown when arguments are invalid instead ConfigurationException, on purpose.\n            DatabaseDescriptor.setGCLogThreshold((int) DatabaseDescriptor.getGCLogThreshold());\n            DatabaseDescriptor.setGCWarnThreshold((int) DatabaseDescriptor.getGCWarnThreshold());\n            DatabaseDescriptor.setGCConcurrentPhaseLogThreshold(DatabaseDescriptor.getGCConcurrentPhaseLogThreshold());\n            DatabaseDescriptor.setGCConcurrentPhaseWarnThreshold(DatabaseDescriptor.getGCConcurrentPhaseWarnThreshold());\n        }\n        catch (IllegalArgumentException ex)\n        {","sourceCodeStart":1257,"sourceCodeEnd":1293,"githubUrl":"https://github.com/apache/cassandra/blob/88fd0f6a0eaed8943f05ac9e8f947882b8ddc8f1/src/java/org/apache/cassandra/config/DatabaseDescriptor.java#L1257-L1293","documentation":"A warning logged when use_deterministic_table_id is present/enabled in cassandra.yaml. The option is no longer supported (its behavior was made default/removed in later Cassandra versions); Cassandra tells the operator to remove the key. Startup proceeds; the setting has no effect.","triggerScenarios":"Starting a node with use_deterministic_table_id: true (or the key present and true) in cassandra.yaml; applySimpleConfig logs the warning during applyAll/toolInitialization.","commonSituations":"Upgraded configs retaining the flag from older Cassandra branches (it was used historically for deterministic table UUID generation); config templates shared between clusters on different versions.","solutions":["Remove the use_deterministic_table_id line from cassandra.yaml and restart."],"exampleFix":"// cassandra.yaml before\nuse_deterministic_table_id: true\n// after\n# use_deterministic_table_id removed - no longer supported","handlingStrategy":"validation","validationCode":"if (yamlConfig.containsKey(\"use_deterministic_table_id\")) {\n    throw new IllegalStateException(\"use_deterministic_table_id is no longer supported; remove it from cassandra.yaml\");\n}","typeGuard":null,"tryCatchPattern":null,"preventionTips":["Prune removed options when upgrading Cassandra versions","Check the release notes / NEWS.txt for removed yaml settings before rolling upgrades","Automate a startup-log warning scan post-deploy"],"tags":["cassandra","configuration","deprecation","yaml"],"backgroundTag":"deprecated-api-usage","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"}