mgodave commented on a change in pull request #1232: Schema registry (1/4)
URL: https://github.com/apache/incubator-pulsar/pull/1232#discussion_r167996154
 
 

 ##########
 File path: pulsar-common/src/main/proto/PulsarApi.proto
 ##########
 @@ -22,6 +22,20 @@ package pulsar.proto;
 option java_package = "org.apache.pulsar.common.api.proto";
 option optimize_for = LITE_RUNTIME;
 
+message Schema {
+       required string name = 1;
+       required bytes version = 2;
+       required bytes schema_data = 7;
+    repeated KeyValue properties = 8;
+}
 
 Review comment:
   I took a comment from the PIP email thread regarding the arbitrariness of 
the fields chosen in the original proposal. It occurred to me that schema type 
is equally as arbitrary. First, adding a new type would require a binary 
protocol change, a new cut release, and a coordinated client/server deployment. 
By removing the schema as a hard coded field we're making the choice of how to 
identify it an end-to-end problem. If, as you commented above, we need the 
client to send the actual schema (which is an oversight on my part), then we 
only need to compare the schemas. If we need to compare them semantically then 
we can devise a server side plugin scheme to allow us to identify and compare 
"like" versions ("is this avro schema 'compatible' with this other avro 
schema?" for instance).

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

Reply via email to