{"record":{"id":"aea1909029c0aab9","repo":"apache/seatunnel","slug":"input-queue-is-no-longer-supported-configure-top","errorCode":null,"errorMessage":"input.queue is no longer supported; configure top-level queue: instead.","messagePattern":"input\\.queue is no longer supported; configure top-level queue: instead\\.","errorType":"validation","errorClass":"IllegalArgumentException","httpStatus":null,"severity":"error","filePath":"seatunnel-edge-agent/seatunnel-edge-agent-starter/src/main/java/org/apache/seatunnel/edge/agent/starter/yaml/AgentYamlConfig.java","lineNumber":151,"sourceCode":"        private String onError;\n\n        private MultilineDefinition multiline;\n\n        @JsonProperty(\"output-format\")\n        private OutputFormatDefinition outputFormat;\n\n        @JsonProperty(\"queue\")\n        private QueueDefinition legacyQueue;\n\n        public void ensureDefaults() {\n            if (paths == null) {\n                paths = Collections.emptyList();\n            }\n        }\n\n        public void rejectLegacyQueue() {\n            if (legacyQueue != null) {\n                throw new IllegalArgumentException(\n                        \"input.queue is no longer supported; configure top-level queue: instead.\");\n            }\n        }\n\n        public void normalizeLegacyPath() {\n            if ((paths == null || paths.isEmpty()) && path != null && !path.trim().isEmpty()) {\n                paths = Collections.singletonList(path.trim());\n            }\n        }\n\n        public FileInputDefinition toFileInputDefinition() {\n            return FileInputDefinition.fromReader(this);\n        }\n    }\n\n    @Getter\n    @JsonIgnoreProperties(ignoreUnknown = true)\n    public static final class FileInputDefinition implements Serializable {","sourceCodeStart":133,"sourceCodeEnd":169,"githubUrl":"https://github.com/apache/seatunnel/blob/cf67b549a7a6c35fa0beb12d83c62892427ea919/seatunnel-edge-agent/seatunnel-edge-agent-starter/src/main/java/org/apache/seatunnel/edge/agent/starter/yaml/AgentYamlConfig.java#L133-L169","documentation":"AgentYamlConfig.normalize()/rejectLegacyQueue() enforces that the deprecated input.queue configuration key is no longer accepted. When a config file defines input.queue, the loader fails fast with this IllegalArgumentException, instructing users to move queue settings to the top-level queue: key.","triggerScenarios":"Starting the agent with a YAML config that still contains the legacy input.queue block; the check runs during config normalization on every load.","commonSituations":"Upgrading from an older agent version whose configs used input.queue; copying example configs from outdated documentation or blog posts; template files not migrated after the queue config was flattened to top level.","solutions":["Move the queue settings from input.queue to the top-level queue: key in the YAML config.","Consult the current version's config template/docs for the new queue option names and defaults.","Delete the obsolete input.queue block if the top-level queue is already configured.","Search deployment scripts/config repos for 'input.queue' and update all environments."],"exampleFix":"// before\ninput:\n  queue:\n    capacity: 1000\n// after\nqueue:\n  capacity: 1000","handlingStrategy":"validation","validationCode":"if (yaml.contains(\"input:\")) { /* parse and reject input.queue before load */ }","typeGuard":null,"tryCatchPattern":"try { cfg = AgentYamlLoader.load(path); } catch (IllegalArgumentException e) { if (e.getMessage().contains(\"input.queue is no longer supported\")) { migrateLegacyQueueConfig(path); cfg = AgentYamlLoader.load(path); } else { throw e; } }","preventionTips":["Migrate all configs to top-level queue: after upgrading.","Grep config repositories for 'input.queue' in CI.","Use the current version's config template as the base.","Pin docs/examples to your agent version to avoid outdated snippets."],"tags":["config","yaml","deprecated","migration"],"backgroundTag":"deprecated-api-usage","analyzedSha":"cf67b549a7a6c35fa0beb12d83c62892427ea919","analyzedAt":"2026-09-10T21:44:55.265Z","contentChangedAt":"2026-09-10T21:44:55.265Z","schemaVersion":2},"datasetVersion":"2026-09-14T05:17:10.506Z"}