prestodb/presto · error · ParquetDecodingException

Unsupported values type:

Error message

Unsupported  values type: 

What it means

Sentinel guard in getMaxLevel: the ValuesType argument (repetition level, definition level, or values) is not one of the enumerated cases, so the max bit-width for level encoding cannot be determined. In practice only a caller bug or a new unhandled ValuesType reaches this.

Source

Thrown at presto-parquet/src/main/java/com/facebook/presto/parquet/ParquetEncoding.java:209

            return true;
        }
    };

    static final int INT96_TYPE_LENGTH = 12;

    static int getMaxLevel(ColumnDescriptor descriptor, ValuesType valuesType)
    {
        switch (valuesType) {
            case REPETITION_LEVEL:
                return descriptor.getMaxRepetitionLevel();
            case DEFINITION_LEVEL:
                return descriptor.getMaxDefinitionLevel();
            case VALUES:
                if (descriptor.getType() == BOOLEAN) {
                    return 1;
                }
            default:
                throw new ParquetDecodingException("Unsupported  values type: " + valuesType);
        }
    }

    public boolean usesDictionary()
    {
        return false;
    }

    public Dictionary initDictionary(ColumnDescriptor descriptor, DictionaryPage dictionaryPage)
            throws IOException
    {
        throw new UnsupportedOperationException(" Dictionary encoding is not supported for: " + name());
    }

    public ValuesReader getValuesReader(ColumnDescriptor descriptor, ValuesType valuesType)
    {
        throw new UnsupportedOperationException("Error decoding  values in encoding: " + this.name());
    }

View on GitHub (pinned to 55bb57d202)

Solutions

  1. Fix the caller to pass REPETITION_LEVEL, DEFINITION_LEVEL or VALUES
  2. Add a case for the new ValuesType if extending the reader
  3. Update Presto if caused by an internal regression
Defensive patterns

Strategy: type-guard

When it happens

Trigger: Thrown at presto-parquet/src/main/java/com/facebook/presto/parquet/ParquetEncoding.java:209 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of prestodb/presto@55bb57d202 (2026-09-04). Data as JSON: /api/errors/e026a07fd63bc8f2. Report an issue: GitHub.