-
Notifications
You must be signed in to change notification settings - Fork 1.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Protobuf schema incompatibility between registered version and version used by producer #1851
Comments
In Java you can specify |
@rayokota Is this only a client error or should this also be addressed in the schema registry as well? Seems like the schema registry could also address this bug |
Is the client fix only available for Java? For example, I use Go. Since there is no Confluent schema registry client for Go, I have to use broker side validation. Is the fix available in Go? If not available, what’s the workaround? Otherwise this issue will be blocking. Thanks! |
With confluent platform 6.1.0 (other versions tested as well), there exists the following issue:
Expected: the producer will produce a message to the topic
Actual: The schema registry fails the compatiblity check before the producer can produce
More explicitly,
Given:
and then register that with curl with the payload:
like
Then use
protoc
to generate a python binding, which outputs a file namedschema_pb2.py
and use the following producer code:
It fails with:
Looking at the generated python, the descriptor is slightly different which causes the mismatch of:
in the schema registry:
vs
what the python client is attempting to use:
As can be seen, the
protoc
generated language binding for python fully qualifies the names of the nested types in the definition of theMessageEnvelope
. I believe the protobuf provider in the schema registry should not treat this as an incompatibility.The text was updated successfully, but these errors were encountered: