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

Optimizing ResolvingDecoder for default values

    Details

    • Type: Improvement
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 1.3.0
    • Component/s: java
    • Labels:
      None

      Description

      When the reader's and writer's schemas are records and the reader's schema has a field with default value and the writer's schema doesn't have the field, the ResolvingDecoder keeps the default value in a byte array. This byte array is in Json format. Moving this to Avro binary format improves performance.

      Apply the test patch and try "Perf -M". Then apply the patch and run it again. On my machine, the performance is three times the original.

        Attachments

        1. AVRO-383-test.patch
          2 kB
          Thiruvalluvan M. G.
        2. AVRO-383.patch
          11 kB
          Thiruvalluvan M. G.
        3. AVRO-383-new-test.patch
          1 kB
          Thiruvalluvan M. G.
        4. AVRO-383-new.patch
          2 kB
          Thiruvalluvan M. G.

          Activity

            People

            • Assignee:
              thiru_mg Thiruvalluvan M. G.
              Reporter:
              thiru_mg Thiruvalluvan M. G.
            • Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: