Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

AvroSchemaConverter silently drops typed_value when converting shredded variant schemas

Open
#3,477 6 comments 0 reactions 1 assignee View on GitHub

@nssalian is already working on this.

Since Apr 15, 2026.

Assessment

This issue has not been assessed yet.

Description

Type: bug
Describe the bug, including details regarding any error messages, version, and platform.

I noticed this on the parquet-cli while checking the schema for a shredded parquet file.

Essentially, given this Parquet schema:

message table {
  required group data (VARIANT(1)) {
    required binary metadata;
    optional binary value;
    optional group typed_value {
      required group name {
        optional binary value;
        optional binary typed_value (STRING);
      }
      required group age {
        optional binary value;
        optional int32 typed_value (INTEGER(8,true));
      }
    }
  }
}

AvroSchemaConverter.convert() produces:

{
  "type": "record",
  "name": "data",
  "fields": [
    {"name": "metadata", "type": "bytes"},
    {"name": "value", "type": "bytes"}
  ]
}

typed_value is missing

Expected: The converter should convert all children of the VARIANT group (including typed_value when present)

Version: 1.18.0-SNAPSHOT

I can add a fix to this myself if there are no objections. If we want to keep this behavior, we should make a note.

Component(s)

Avro

Dominant language
Java
Stars
3.1k
Forks
1.6k
Avg merge
4d 12h
Merged PRs (30d)
28

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from apache/parquet-java

All issues in apache/parquet-java

Similar issues

More Java issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.