Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

parquet-cli reports nested columns as null

Aperta
#3,095 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
3/5
Tempo stimato
1-2 giorni
Idoneità per principianti
35/100
Tipo di issue
Bug
Chiarezza
Da chiarire
Stato di attività
Ferma
Stack tecnologico
java
Ambito
cli, data

Direzione di ricerca

Riproducete il problema con Parquet CLI 1.15.0 usando parquet schema, parquet dictionary -c subjects.list.element e cat o head su catalog.parquet. Confrontate i valori della colonna annidata riportati dal comando dictionary con i record visualizzati e analizzate il percorso di parquet-cli che gestisce questi comandi. Il lavoro è completato quando cat e head mostrano array annidati invece di visualizzarli erroneamente come null.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

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

Using Parquet CLI 1.15.0 via Mac Homebrew, I noticed some surprising behaviour with the parquet-cli and nested columns.

parquet schema catalog.parquet returns a schema showing the nested types (I've trimmed the field list slightly):

{
  "type" : "record",
  "name" : "schema",
  "fields" : [ {
    "name" : "item_id",
    "type" : "string"
  }, {
    "name" : "title",
    "type" : [ "null", "string" ],
    "default" : null
  }, {
    "name" : "language",
    "type" : [ "null", "string" ],
    "default" : null
  }, {
    "name" : "subjects",
    "type" : [ "null", {
      "type" : "array",
      "items" : {
        "type" : "record",
        "name" : "list",
        "fields" : [ {
          "name" : "element",
          "type" : "string"
        } ]
      }
    } ],
    "default" : null
  }, {
    "name" : "authors",
    "type" : [ "null", {
      "type" : "array",
      "items" : {
        "type" : "record",
        "name" : "list",
        "namespace" : "list2",
        "fields" : [ {
          "name" : "element",
          "type" : "string"
        } ]
      }
    } ],
    "default" : null
  } ]
}

parquet dictionary -c subjects.list.element catalog.parquet will return the expected values for those fields as well:

Row group 0 dictionary for "subjects.list.element":
     0: "Bestsellers"
     1: "Biography"
     2: "Fantasy Fiction"
     3: "Music Theory"
     4: "Disability"
     5: "Family"
     6: "Young Adult"

However, when using cat or head to display the file contents those fields are displayed as null:

{"bmc_id": "id1", "title": null, "language": "en", "subjects": null, "authors": null}
{"bmc_id": "id2", "title": null, "language": "en", "subjects": null, "authors": null,}
{"bmc_id": "id3", "title": null, "language": "en", "subjects": null, "authors": null}

Other tools like PyArrow or Pandas do display those values as arrays. I created this as a bug because it looks like it's working and if those fields are nullable, there's no way to tell whether the null value is correct.

Component(s)

No response

Lingua principale
Java
Stelle
3.1k
Fork
1.6k
Merge medio
6g 16h
PR unite (30g)
36

Guida per i contributori

Nessuna guida per i contributori indicizzata per questo repository

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di apache/parquet-java

Tutte le issue di apache/parquet-java

Issue simili

Altre issue su Java

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.