[jira] [Updated] (AVRO-2322) Compatibility checks report false positive when record fullnames differ
[ https://issues.apache.org/jira/browse/AVRO-2322?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Chris Egerton updated AVRO-2322: Labels: (was: beginner) > Compatibility checks report false positive when record fullnames differ > --- > > Key: AVRO-2322 > URL: https://issues.apache.org/jira/browse/AVRO-2322 > Project: Apache Avro > Issue Type: Bug > Components: java >Affects Versions: 1.8.1, 1.8.2 >Reporter: Chris Egerton >Priority: Major > > When testing for backward compatibility between two record schemas which > differ in their fullnames (namespace + name) but are otherwise identical, a > false positive is reported. > Example: > {code:java} > // Create two schemas with differing fullnames and no fields > Schema writtenSchema = Schema.createRecord("write", null, "namespace", false, > Collections.emptyList()); > Schema readSchema = Schema.createRecord("read", null, "namespace", false, > Collections.emptyList()); > // Validate the two schemas for compatibility > // Should throw a SchemaValidationException; does not > new > SchemaValidatorBuilder().canReadStrategy().validateLatest().validate(readSchema, > Collections.singleton(writtenSchema));{code} > It looks like this behavior partially stems from discussion on AVRO-1590, > although I'm unfortunately not familiar enough with some of the concepts > brought up there to understand why it's advantageous to deviate from the spec > like this. > I'd be happy to work on a fix myself; just want to understand how to > implement this correctly without stepping on the decisions of others before > opening a PR. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (AVRO-2322) Compatibility checks report false positive when record fullnames differ
[ https://issues.apache.org/jira/browse/AVRO-2322?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16769568#comment-16769568 ] Chris Egerton commented on AVRO-2322: - [~rdblue] [~cutting] I know it was a while ago but I saw that you were involved in the fix for AVRO-1590; any chance you could take a look at this and give your thoughts? > Compatibility checks report false positive when record fullnames differ > --- > > Key: AVRO-2322 > URL: https://issues.apache.org/jira/browse/AVRO-2322 > Project: Apache Avro > Issue Type: Bug > Components: java >Affects Versions: 1.8.1, 1.8.2 >Reporter: Chris Egerton >Priority: Major > > When testing for backward compatibility between two record schemas which > differ in their fullnames (namespace + name) but are otherwise identical, a > false positive is reported. > Example: > {code:java} > // Create two schemas with differing fullnames and no fields > Schema writtenSchema = Schema.createRecord("write", null, "namespace", false, > Collections.emptyList()); > Schema readSchema = Schema.createRecord("read", null, "namespace", false, > Collections.emptyList()); > // Validate the two schemas for compatibility > // Should throw a SchemaValidationException; does not > new > SchemaValidatorBuilder().canReadStrategy().validateLatest().validate(readSchema, > Collections.singleton(writtenSchema));{code} > It looks like this behavior partially stems from discussion on AVRO-1590, > although I'm unfortunately not familiar enough with some of the concepts > brought up there to understand why it's advantageous to deviate from the spec > like this. > I'd be happy to work on a fix myself; just want to understand how to > implement this correctly without stepping on the decisions of others before > opening a PR. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Created] (AVRO-2322) Compatibility checks report false positive when record fullnames differ
Chris Egerton created AVRO-2322: --- Summary: Compatibility checks report false positive when record fullnames differ Key: AVRO-2322 URL: https://issues.apache.org/jira/browse/AVRO-2322 Project: Apache Avro Issue Type: Bug Components: java Affects Versions: 1.8.2, 1.8.1 Reporter: Chris Egerton When testing for backward compatibility between two record schemas which differ in their fullnames (namespace + name) but are otherwise identical, a false positive is reported. Example: {code:java} // Create two schemas with differing fullnames and no fields Schema writtenSchema = Schema.createRecord("write", null, "namespace", false, Collections.emptyList()); Schema readSchema = Schema.createRecord("read", null, "namespace", false, Collections.emptyList()); // Validate the two schemas for compatibility // Should throw a SchemaValidationException; does not new SchemaValidatorBuilder().canReadStrategy().validateLatest().validate(readSchema, Collections.singleton(writtenSchema));{code} It looks like this behavior partially stems from discussion on AVRO-1590, although I'm unfortunately not familiar enough with some of the concepts brought up there to understand why it's advantageous to deviate from the spec like this. I'd be happy to work on a fix myself; just want to understand how to implement this correctly without stepping on the decisions of others before opening a PR. -- This message was sent by Atlassian JIRA (v7.6.3#76005)