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

'conversions' array is not populated for Avro Union Logicaltype fields

    XMLWordPrintableJSON

    Details

    • Type: Bug
    • Status: Open
    • Priority: Minor
    • Resolution: Unresolved
    • Affects Version/s: 1.9.2
    • Fix Version/s: None
    • Component/s: logical types
    • Labels:
      None
    • Environment:
      • Apache Avro Version [1.9.2]
      • Java Version [11]

      Description

      Steps to reproduce :

      1. Using the maven/gradle plugin generate code with the following avsc:
           
      {
        "type": "record",
        "name": "Messages",
        "namespace": "com.somedomain",
        "fields": [
          {
            "name": "start",
            "type": {
              "type": "long",
              "logicalType": "timestamp-millis"
            }
          },
          {
            "name": "optional_date",
            "type": [
              "null",
              {
                "type": "long",
                "logicalType": "timestamp-millis"
              }
            ],
            "default": null
          }
        ]
      }

       

      Actual behavior
      In the generated code, the return types of the getter methods for both fields are correct, however the conversions array only has an element for the field which isn't a union.
       

        private static final org.apache.avro.Conversion<?>[] conversions =
            new org.apache.avro.Conversion<?>[] {
            new org.apache.avro.data.TimeConversions.TimestampMillisConversion(),
            null,
            null
        };
      

       

      Expected output:
      Based on the above avsc the following is expected.
       

        private static final org.apache.avro.Conversion[] conversions =
            new org.apache.avro.Conversion[] {
            new org.apache.avro.data.TimeConversions.TimestampMillisConversion(),
            new org.apache.avro.data.TimeConversions.TimestampMillisConversion(),
            null
        };
      

       

       

       

        Attachments

          Activity

            People

            • Assignee:
              Unassigned
              Reporter:
              pdebuitlear Pádraig de Buitléar
            • Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

              • Created:
                Updated: