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

Simplify union wrapping logic.

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Closed
    • Major
    • Resolution: Fixed
    • None
    • 1.8.0
    • javascript
    • None

    Description

      Previously, union wrapping during `type.clone` calls would be done in place
      of normal copy. Now it is done as a backup if a normal copy fails. This is
      more consistent with the documentation, and makes it much simpler to wrap
      nested unions.

      See here for more information and examples: https://github.com/mtth/avsc/issues/16

      Other changes:

      + Add an optional argument to `type.getName` to expose built-in type names
      (useful to implement an "optional" logical type for example).

      + Document (and rename) `assertLogicalTypes` parsing option.

      + Tweak logical type validity check, enabling error hooks to work even when a
      logical type is valid for a subset of its underlying type's values (e.g. when
      defining an "even integer" type). Previously the path would have been correct
      but the type would have been that of the underlying one.

      Attachments

        1. AVRO-1767.patch
          11 kB
          Matthieu Monsch

        Activity

          People

            rdblue Ryan Blue
            mtth Matthieu Monsch
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: