{"record":{"id":"15a24712ac52a950","repo":"apache/druid","slug":"unknown-primitive-conversion-s","errorCode":null,"errorMessage":"Unknown primitive conversion: %s","messagePattern":"Unknown primitive conversion: (.+?)","errorType":"exception","errorClass":"RE","httpStatus":null,"severity":"error","filePath":"extensions-core/parquet-extensions/src/main/java/org/apache/druid/data/input/parquet/simple/ParquetGroupConverter.java","lineNumber":486,"sourceCode":"            return g.getLong(fieldIndex, index);\n          case FLOAT:\n            return g.getFloat(fieldIndex, index);\n          case DOUBLE:\n            return g.getDouble(fieldIndex, index);\n          case INT96:\n            Binary tsBin = g.getInt96(fieldIndex, index);\n            return convertInt96BinaryToTimestamp(tsBin);\n          case FIXED_LEN_BYTE_ARRAY:\n          case BINARY:\n            Binary bin = g.getBinary(fieldIndex, index);\n            byte[] bytes = bin.getBytes();\n            if (binaryAsString) {\n              return StringUtils.fromUtf8(bytes);\n            } else {\n              return bytes;\n            }\n          default:\n            throw new RE(\"Unknown primitive conversion: %s\", pt.getPrimitiveTypeName());\n        }\n      }\n    }\n    catch (Exception ex) {\n      return null;\n    }\n  }\n\n  private long convertDateToMillis(int value)\n  {\n    if (convertCorruptDates) {\n      value -= CORRECT_CORRUPT_DATE_SHIFT;\n    }\n    return value * MILLIS_IN_DAY;\n  }\n\n  /**\n   * convert deprecated parquet int96 nanosecond timestamp to a long, based on","sourceCodeStart":468,"sourceCodeEnd":504,"githubUrl":"https://github.com/apache/druid/blob/9b90983fd291f26935af934383ce360473179e4d/extensions-core/parquet-extensions/src/main/java/org/apache/druid/data/input/parquet/simple/ParquetGroupConverter.java#L468-L504","documentation":"Default branch of ParquetGroupConverter.convertPrimitiveField: the parquet primitive type encountered has no mapping in the converter (an unmapped/unrecognized primitive), so the record cannot be converted to a Druid value.","triggerScenarios":"Thrown at extensions-core/parquet-extensions/src/main/java/org/apache/druid/data/input/parquet/simple/ParquetGroupConverter.java:486 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Identify the primitive type from the error and check supported types for the parquet-extensions version.","Upgrade parquet-extensions or convert the column to a supported type (BOOLEAN, INT32/64, FLOAT, DOUBLE, BINARY, etc.).","Use flattenSpec/exclusion to skip the unsupported column."],"exampleFix":null,"handlingStrategy":"type-guard","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"9b90983fd291f26935af934383ce360473179e4d","analyzedAt":"2026-09-07T13:32:30.957Z","contentChangedAt":"2026-09-07T13:32:30.957Z","schemaVersion":2},"datasetVersion":"2026-09-17T15:17:12.973Z"}