[ https://issues.apache.org/jira/browse/AVRO-3950?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17821222#comment-17821222 ]
Martin Tzvetanov Grigorov commented on AVRO-3950: ------------------------------------------------- Please do! > [rust] Some code when checking schema compatibility is never reached > -------------------------------------------------------------------- > > Key: AVRO-3950 > URL: https://issues.apache.org/jira/browse/AVRO-3950 > Project: Apache Avro > Issue Type: Improvement > Reporter: Marcos Schroh > Priority: Minor > > When checking schema compatibility between schemas some code blocks are never > reached. For example, [these lines > |https://github.com/apache/avro/blob/main/lang/rust/avro/src/schema_compatibility.rs#L365-L374] > are never reached because writer and readers schemas are for sure the same > type (record) which is [previously > compared|https://github.com/apache/avro/blob/main/lang/rust/avro/src/schema_compatibility.rs#L346]. > This issue leads to unnecessary *if let* blocks which can be suppressed and > `Errors` that are never reached. For example the following code could be > removed because it is know before hand that the schema is Record which it has > a name and only one error can be retrieved. > {code} > let Schema::Record(RecordSchema { name: w_name, .. }) = writers_schema { ... > } > {code} > *Solution*: Refactor the code and add more unittest to match_schemas function > to clean up the unreachable code -- This message was sent by Atlassian Jira (v8.20.10#820010)