{"record":{"id":"d7c3bc0b1bbead37","repo":"apache/seatunnel","slug":"unrecognized-option-for-boolean-s-expected-eith","errorCode":null,"errorMessage":"Unrecognized option for boolean: %s. Expected either true or false(case insensitive)","messagePattern":"Unrecognized option for boolean: (.+?)\\. Expected either true or false\\(case insensitive\\)","errorType":"validation","errorClass":"java.lang.IllegalArgumentException","httpStatus":null,"severity":"error","filePath":"seatunnel-api/src/main/java/org/apache/seatunnel/api/configuration/util/ConfigUtil.java","lineNumber":279,"sourceCode":"            start = 1;\n        }\n\n        for (int i = start; i < value.length(); i++) {\n            if (!Character.isDigit(value.charAt(i))) {\n                return false;\n            }\n        }\n        return true;\n    }\n\n    static Boolean convertToBoolean(Object o) {\n        switch (o.toString().toUpperCase()) {\n            case \"TRUE\":\n                return true;\n            case \"FALSE\":\n                return false;\n            default:\n                throw new IllegalArgumentException(\n                        String.format(\n                                \"Unrecognized option for boolean: %s. Expected either true or false(case insensitive)\",\n                                o));\n        }\n    }\n\n    static <E extends Enum<?>> E convertToEnum(Object o, Class<E> clazz) {\n        return Arrays.stream(clazz.getEnumConstants())\n                .filter(\n                        e ->\n                                e.toString()\n                                        .toUpperCase(Locale.ROOT)\n                                        .equals(o.toString().toUpperCase(Locale.ROOT)))\n                .findAny()\n                .orElseThrow(\n                        () ->\n                                new IllegalArgumentException(\n                                        String.format(","sourceCodeStart":261,"sourceCodeEnd":297,"githubUrl":"https://github.com/apache/seatunnel/blob/cf67b549a7a6c35fa0beb12d83c62892427ea919/seatunnel-api/src/main/java/org/apache/seatunnel/api/configuration/util/ConfigUtil.java#L261-L297","documentation":"Thrown from ConfigUtil.convertToBoolean as the switch default: a Boolean-typed option received text that uppercases to neither TRUE nor FALSE. This guard fires for typos like \"ture\", \"yes\", \"1\", or \" enabled\" — boolean options accept only the exact words true/false case-insensitively; numeric truthiness is intentionally not supported.","triggerScenarios":"Thrown at seatunnel-api/src/main/java/org/apache/seatunnel/api/configuration/util/ConfigUtil.java:279 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Set the option to exactly true or false (case-insensitive), e.g. enable = true","Replace informal values like yes/no or 1/0 with true/false","Trim stray whitespace or invisible characters around the value in the config file"],"exampleFix":null,"handlingStrategy":"validation","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"cf67b549a7a6c35fa0beb12d83c62892427ea919","analyzedAt":"2026-09-10T21:44:55.265Z","contentChangedAt":"2026-09-10T21:44:55.265Z","schemaVersion":2},"datasetVersion":"2026-09-23T08:17:48.524Z"}