GitHub user anthonyikeda added a comment to the discussion: [Bug] Pulsar Client
ignores producer schema
Am I getting my schemas mixed up? Tried using schema type AVRO but now getting:
product.avsc
```json
{
"type" : "record",
"namespace" : "com.pulsar.workshop",
"name" : "Product",
"fields" : [
{
"name" : "product_id",
"type" : "int"
},
{
"name" : "product_name",
"type" : "string"
},
{
"name" : "product_description",
"type" : [ "null", "string" ]
}
]
}
```
topic-schema.json
```json
{
"type" : "AVRO",
"schema" : "{ \"type\" : \"record\", \"namespace\" :
\"com.pulsar.workshop\", \"name\" : \"Product\", \"fields\" : [ { \"name\" :
\"product_id\", \"type\" : \"int\" }, { \"name\" : \"product_name\", \"type\" :
\"string\" }, {\"name\" : \"product_description\", \"type\" : [
\"null\",\"string\" ] } ] }"
}
```
```bash
2023-04-05T13:09:56,851-0700 [main] ERROR
org.apache.pulsar.client.cli.PulsarClientTool - Error while producing messages
2023-04-05T13:09:56,851-0700 [main] ERROR
org.apache.pulsar.client.cli.PulsarClientTool -
java.lang.ArrayIndexOutOfBoundsException: Index 56 out of bounds for length 2
org.apache.pulsar.client.api.SchemaSerializationException:
java.lang.ArrayIndexOutOfBoundsException: Index 56 out of bounds for length 2
at
org.apache.pulsar.client.impl.schema.generic.GenericAvroReader.read(GenericAvroReader.java:91)
~[org.apache.pulsar-pulsar-client-original-2.11.0.jar:2.11.0]
at
org.apache.pulsar.client.impl.schema.generic.GenericAvroReader.read(GenericAvroReader.java:41)
~[org.apache.pulsar-pulsar-client-original-2.11.0.jar:2.11.0]
at
org.apache.pulsar.client.api.schema.SchemaReader.read(SchemaReader.java:40)
~[org.apache.pulsar-pulsar-client-api-2.11.0.jar:2.11.0]
at
org.apache.pulsar.client.impl.schema.reader.AbstractMultiVersionReader.read(AbstractMultiVersionReader.java:61)
~[org.apache.pulsar-pulsar-client-original-2.11.0.jar:2.11.0]
at
org.apache.pulsar.client.api.schema.SchemaReader.read(SchemaReader.java:40)
~[org.apache.pulsar-pulsar-client-api-2.11.0.jar:2.11.0]
at
org.apache.pulsar.client.impl.schema.AbstractStructSchema.decode(AbstractStructSchema.java:66)
~[org.apache.pulsar-pulsar-client-original-2.11.0.jar:2.11.0]
at org.apache.pulsar.client.api.Schema.validate(Schema.java:63)
~[org.apache.pulsar-pulsar-client-api-2.11.0.jar:2.11.0]
at
org.apache.pulsar.client.impl.schema.AutoProduceBytesSchema.encode(AutoProduceBytesSchema.java:80)
~[org.apache.pulsar-pulsar-client-original-2.11.0.jar:2.11.0]
at
org.apache.pulsar.client.impl.schema.AutoProduceBytesSchema.encode(AutoProduceBytesSchema.java:32)
~[org.apache.pulsar-pulsar-client-original-2.11.0.jar:2.11.0]
at
org.apache.pulsar.client.impl.TypedMessageBuilderImpl.value(TypedMessageBuilderImpl.java:173)
~[org.apache.pulsar-pulsar-client-original-2.11.0.jar:2.11.0]
at org.apache.pulsar.client.cli.CmdProduce.publish(CmdProduce.java:288)
~[org.apache.pulsar-pulsar-client-tools-2.11.0.jar:2.11.0]
at org.apache.pulsar.client.cli.CmdProduce.run(CmdProduce.java:239)
~[org.apache.pulsar-pulsar-client-tools-2.11.0.jar:2.11.0]
at
org.apache.pulsar.client.cli.PulsarClientTool.run(PulsarClientTool.java:219)
~[org.apache.pulsar-pulsar-client-tools-2.11.0.jar:2.11.0]
at
org.apache.pulsar.client.cli.PulsarClientTool.main(PulsarClientTool.java:259)
~[org.apache.pulsar-pulsar-client-tools-2.11.0.jar:2.11.0]
Caused by: java.lang.ArrayIndexOutOfBoundsException: Index 56 out of bounds for
length 2
at
org.apache.avro.io.parsing.Symbol$Alternative.getSymbol(Symbol.java:460)
~[org.apache.avro-avro-1.10.2.jar:1.10.2]
at
org.apache.avro.io.ResolvingDecoder.readIndex(ResolvingDecoder.java:283)
~[org.apache.avro-avro-1.10.2.jar:1.10.2]
at
org.apache.avro.generic.GenericDatumReader.readWithoutConversion(GenericDatumReader.java:187)
~[org.apache.avro-avro-1.10.2.jar:1.10.2]
at
org.apache.avro.generic.GenericDatumReader.read(GenericDatumReader.java:160)
~[org.apache.avro-avro-1.10.2.jar:1.10.2]
at
org.apache.avro.generic.GenericDatumReader.readField(GenericDatumReader.java:259)
~[org.apache.avro-avro-1.10.2.jar:1.10.2]
at
org.apache.avro.generic.GenericDatumReader.readRecord(GenericDatumReader.java:247)
~[org.apache.avro-avro-1.10.2.jar:1.10.2]
at
org.apache.avro.generic.GenericDatumReader.readWithoutConversion(GenericDatumReader.java:179)
~[org.apache.avro-avro-1.10.2.jar:1.10.2]
at
org.apache.avro.generic.GenericDatumReader.read(GenericDatumReader.java:160)
~[org.apache.avro-avro-1.10.2.jar:1.10.2]
at
org.apache.avro.generic.GenericDatumReader.read(GenericDatumReader.java:153)
~[org.apache.avro-avro-1.10.2.jar:1.10.2]
at
org.apache.pulsar.client.impl.schema.generic.GenericAvroReader.read(GenericAvroReader.java:86)
~[org.apache.pulsar-pulsar-client-original-2.11.0.jar:2.11.0]
... 13 more
2023-04-05T13:09:56,859-0700 [main] INFO
org.apache.pulsar.client.cli.PulsarClientTool - 0 messages successfully produced
```
GitHub link:
https://github.com/apache/pulsar/discussions/20586#discussioncomment-6187221
----
This is an automatically sent email for [email protected].
To unsubscribe, please send an email to: [email protected]