You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
JSON Schema compatibility checks in Creek differentiate between producer and consumer schemas. Producers use closed, vs consumer using open content models.
When registering a new producer schema, compatibility is confirmed by ensuring all existing consumer schemas are backward compatible with the new producer. These 'existing consumer schemas' as the open content model equivalents of the closed producer schemas registered in the schema registry.
When checking if a consuming schema is compatible, we currently just check the closed content model equivalent_ of the open consumer schema is registered in the schema registry, i.e. that a matching producer schema is registered.
A reduced-view consumer schema is one holding a subset of properties defined in an, already compatible, known consumer schema. The reduced-view schema is fully compatible if it is backwards compatible with at least one known compatible consumer schema.
Using a reduced view consumer schema and matching pojos would reduce deserialisation and validation costs.
To avoid unnecessarily having to pull down potentially all registered producer schemas and synthesis consumers from them to find one the reduced-view schema is backwards compatible with... the implementation should accept as inputs a known producer schema and the view schema, where the view schema is known to be backwards compatible with the consumer schema synthesised from the known producer schema. The code can then confirm view schema is backwards compatible with synthesised consumer schema, before checked the producer schema is registered.
The text was updated successfully, but these errors were encountered:
JSON Schema compatibility checks in Creek differentiate between producer and consumer schemas. Producers use closed, vs consumer using open content models.
When registering a new producer schema, compatibility is confirmed by ensuring all existing consumer schemas are backward compatible with the new producer. These 'existing consumer schemas' as the open content model equivalents of the closed producer schemas registered in the schema registry.
When checking if a consuming schema is compatible, we currently just check the closed content model equivalent_ of the open consumer schema is registered in the schema registry, i.e. that a matching producer schema is registered.
A reduced-view consumer schema is one holding a subset of properties defined in an, already compatible, known consumer schema. The reduced-view schema is fully compatible if it is backwards compatible with at least one known compatible consumer schema.
Using a reduced view consumer schema and matching pojos would reduce deserialisation and validation costs.
To avoid unnecessarily having to pull down potentially all registered producer schemas and synthesis consumers from them to find one the reduced-view schema is backwards compatible with... the implementation should accept as inputs a known producer schema and the view schema, where the view schema is known to be backwards compatible with the consumer schema synthesised from the known producer schema. The code can then confirm view schema is backwards compatible with synthesised consumer schema, before checked the producer schema is registered.
The text was updated successfully, but these errors were encountered: