{"record":{"id":"2ba603bf39be38d5","repo":"risingwavelabs/risingwave","slug":"iceberg-compaction-config-refresh-interval-sec-m","errorCode":null,"errorMessage":"`iceberg_compaction_config_refresh_interval_sec` must be greater than 0","messagePattern":"`iceberg_compaction_config_refresh_interval_sec` must be greater than 0","errorType":"validation","errorClass":null,"httpStatus":null,"severity":"critical","filePath":"src/meta/node/src/lib.rs","lineNumber":656,"sourceCode":"        panic!(\"{}\", error_msg);\n    }\n\n    if config.meta.compaction_task_id_refill_capacity == 0 {\n        let error_msg = \"`compaction_task_id_refill_capacity` must be greater than 0\";\n        tracing::error!(error_msg);\n        panic!(\"{}\", error_msg);\n    }\n\n    if config.meta.iceberg_compaction_report_timeout_sec == 0 {\n        let error_msg = \"`iceberg_compaction_report_timeout_sec` must be greater than 0\";\n        tracing::error!(error_msg);\n        panic!(\"{}\", error_msg);\n    }\n\n    if config.meta.iceberg_compaction_config_refresh_interval_sec == 0 {\n        let error_msg = \"`iceberg_compaction_config_refresh_interval_sec` must be greater than 0\";\n        tracing::error!(error_msg);\n        panic!(\"{}\", error_msg);\n    }\n}\n","sourceCodeStart":638,"sourceCodeEnd":659,"githubUrl":"https://github.com/risingwavelabs/risingwave/blob/6469eb736d691e8e9b8a419a57edd6429ca77417/src/meta/node/src/lib.rs#L638-L659","documentation":"validate_config in src/meta/node/src/lib.rs:656 panics when `meta.iceberg_compaction_config_refresh_interval_sec` is 0. This interval controls how often the meta node refreshes Iceberg compaction configuration; a zero interval would busy-loop refreshes and is rejected.","triggerScenarios":"Meta node startup with `meta.iceberg_compaction_config_refresh_interval_sec` set to 0 in the config.","commonSituations":"Trying to make config changes take effect immediately by zeroing the refresh interval, or copy-paste config mistakes.","solutions":["Set `meta.iceberg_compaction_config_refresh_interval_sec` to a positive value (e.g. 30) in the config file.","Remove the override to use the default refresh interval.","Restart the meta node after correcting the value; the check runs only at startup."],"exampleFix":"// before\n[meta]\niceberg_compaction_config_refresh_interval_sec = 0\n\n// after\n[meta]\niceberg_compaction_config_refresh_interval_sec = 30","handlingStrategy":"validation","validationCode":"assert!(cfg.meta.iceberg_compaction_config_refresh_interval_sec > 0, \"iceberg_compaction_config_refresh_interval_sec must be > 0\");","typeGuard":null,"tryCatchPattern":null,"preventionTips":["Don't zero refresh intervals for immediacy; restart the node after config edits instead.","Add automated asserts on startup-critical meta fields.","Pin production configs to reviewed defaults."],"tags":["config","meta-node","iceberg","validation"],"backgroundTag":"invalid-config-value","analyzedSha":"6469eb736d691e8e9b8a419a57edd6429ca77417","analyzedAt":"2026-09-11T21:06:21.487Z","contentChangedAt":"2026-09-11T21:06:21.487Z","schemaVersion":2},"datasetVersion":"2026-09-14T16:17:12.679Z"}