[
https://issues.apache.org/jira/browse/AVRO-3939?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Martin Tzvetanov Grigorov resolved AVRO-3939.
---------------------------------------------
Fix Version/s: 1.12.0
1.11.4
Resolution: Fixed
> [Rust] Make it possible to use custom schema comparators
> --------------------------------------------------------
>
> Key: AVRO-3939
> URL: https://issues.apache.org/jira/browse/AVRO-3939
> Project: Apache Avro
> Issue Type: Improvement
> Components: rust
> Reporter: Martin Tzvetanov Grigorov
> Assignee: Martin Tzvetanov Grigorov
> Priority: Major
> Labels: pull-request-available
> Fix For: 1.12.0, 1.11.4
>
> Time Spent: 0.5h
> Remaining Estimate: 0h
>
> Currently comparing two schemas for equality compares their canonical forms -
> https://github.com/apache/avro/blob/main/lang/rust/avro/src/schema.rs#L160.
> I.e. the schemas are first serialized to their canonical forms and then
> compared as strings.
> The main issue here is the performance! The serialization takes it time!
> Comparing the schemas field by field (following the same rules as the
> canonical forms -
> https://avro.apache.org/docs/1.11.1/specification/#parsing-canonical-form-for-schemas)
> will return as soon as a field is different. For example: record schema with
> a different name will return false without comparing all the fields.
> Another request by users is to compare the schemas even with fields which are
> not part of the canonical form, e.g. the custom attributes -
> https://github.com/apache/avro/pull/2708#discussion_r1467183416
--
This message was sent by Atlassian Jira
(v8.20.10#820010)