{"record":{"id":"5a8b5848447cb911","repo":"apache/pulsar","slug":"invalid-schema-definition-data-for","errorCode":null,"errorMessage":"Invalid schema definition data for ","messagePattern":"Invalid schema definition data for ","errorType":"validation","errorClass":"InvalidSchemaDataException","httpStatus":null,"severity":"error","filePath":"pulsar-broker/src/main/java/org/apache/pulsar/broker/service/schema/validator/StructSchemaDataValidator.java","lineNumber":108,"sourceCode":"            switch (schema.getType()) {\n                case RECORD: {\n                    break;\n                }\n                case UNION: {\n                    throw new InvalidSchemaDataException(\n                            \"Avro schema typed [UNION] is not supported\");\n                }\n                default: {\n                    // INT, LONG, FLOAT, DOUBLE, BOOLEAN, STRING, BYTES.\n                    // ARRAY, MAP, FIXED, NULL.\n                    LOGGER.info().attr(\"type\", schema.getType()).log(\"Registering a special avro schema\");\n                }\n            }\n    }\n\n    private static void throwInvalidSchemaDataException(SchemaData schemaData,\n                                                        Throwable cause) throws InvalidSchemaDataException {\n        throw new InvalidSchemaDataException(\"Invalid schema definition data for \"\n            + schemaData.getType() + \" schema\", cause);\n    }\n\n    static class CompatibleNameValidator implements NameValidator {\n\n        @Override\n        public Result validate(String name) {\n            if (name == null) {\n                return new Result(\"Null name\");\n            }\n            final int length = name.length();\n            if (length == 0) {\n                return new Result(\"Empty name\");\n            }\n            final char first = name.charAt(0);\n            if (!(Character.isLetter(first) || first == '_' || first == '$')) {\n                return new Result(\"Illegal initial character: \" + name);\n            }","sourceCodeStart":90,"sourceCodeEnd":126,"githubUrl":"https://github.com/apache/pulsar/blob/820761864ed8e2a7d2e52dd9763ad2ae117c1395/pulsar-broker/src/main/java/org/apache/pulsar/broker/service/schema/validator/StructSchemaDataValidator.java#L90-L126","documentation":"throwInvalidSchemaDataException is the StructSchemaDataValidator's generic rejection for schema definition bytes that fail avro parsing/validation — the registered schema payload is not a valid struct (avro) schema for the given schema type.","triggerScenarios":"Thrown at pulsar-broker/src/main/java/org/apache/pulsar/broker/service/schema/validator/StructSchemaDataValidator.java:108 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Fix the Avro schema JSON so it parses cleanly","Ensure the schema payload is not truncated or double-encoded"],"exampleFix":null,"handlingStrategy":"validation","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"820761864ed8e2a7d2e52dd9763ad2ae117c1395","analyzedAt":"2026-09-06T00:14:20.138Z","contentChangedAt":"2026-09-06T00:14:20.138Z","schemaVersion":2},"datasetVersion":"2026-09-14T00:17:10.932Z"}