Uploaded image for project: 'Avro'
  1. Avro
  2. AVRO-1933

SchemaCompatibility class could be more user-friendly about incompatibilities

    Details

    • Type: Improvement
    • Status: Resolved
    • Priority: Minor
    • Resolution: Fixed
    • Affects Version/s: 1.7.7, 1.8.1
    • Fix Version/s: 1.9.0
    • Component/s: java
    • Labels:
      None
    • Environment:

      Any Java env

    • Hadoop Flags:
      Incompatible change
    • Release Note:
      SchemaCompatibility returns the more detailed object SchemaCompatibilityResult instead of the simple enum SchemaCompatibilityType.
    • Flags:
      Patch

      Description

      Today, the class SchemaCompatibility reports incompatibilities with quite little detail. The whole reader and the whole writer schema is listed, and no particular detail about what was incompatible.

      The attached patch fixes this, introducing a new enum (SchemaIncompatibilityType), and more specific sub-schemas that were incompatible.
      The old, overall picture, is still there - the new compatibility state is encapsulated in the SchemaCompatibilityDetails class.
      Lots of test cases have been added, and there has been refactoring done in the TestSchemaCompatibility and other test classes.

        Attachments

        1. AVRO-1933-compatible-with-AVRO-1931.patch
          105 kB
          Anders Sundelin
        2. AVRO-1933.patch
          106 kB
          Anders Sundelin

          Issue Links

            Activity

              People

              • Assignee:
                epkanol Anders Sundelin
                Reporter:
                epkanol Anders Sundelin
              • Votes:
                3 Vote for this issue
                Watchers:
                9 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved:

                  Time Tracking

                  Estimated:
                  Original Estimate - 1h
                  1h
                  Remaining:
                  Remaining Estimate - 1h
                  1h
                  Logged:
                  Time Spent - Not Specified
                  Not Specified