{"record":{"id":"c35c4f30d6217a6e","repo":"apache/druid","slug":"unknown-value-type-s","errorCode":null,"errorMessage":"Unknown value type: [%s]","messagePattern":"Unknown value type: \\[(.+?)\\]","errorType":"exception","errorClass":"IllegalStateException","httpStatus":null,"severity":"error","filePath":"extensions-contrib/compressed-bigdecimal/src/main/java/org/apache/druid/compressedbigdecimal/Utils.java","lineNumber":170,"sourceCode":"          throw e;\n        } else {\n          result = new ArrayCompressedBigDecimal(0L, 0);\n        }\n      }\n    } else if (obj instanceof BigDecimal) {\n      result = new ArrayCompressedBigDecimal((BigDecimal) obj);\n    } else if (obj instanceof Long) {\n      result = new ArrayCompressedBigDecimal(new BigDecimal((Long) obj));\n    } else if (obj instanceof Integer) {\n      result = new ArrayCompressedBigDecimal(new BigDecimal((Integer) obj));\n    } else if (obj instanceof Double) {\n      result = new ArrayCompressedBigDecimal(BigDecimal.valueOf((Double) obj));\n    } else if (obj instanceof Float) {\n      result = new ArrayCompressedBigDecimal(BigDecimal.valueOf((Float) obj));\n    } else if (obj instanceof CompressedBigDecimal) {\n      result = (CompressedBigDecimal) obj;\n    } else {\n      throw new ISE(\"Unknown value type: [%s]\", obj.getClass().getName());\n    }\n\n    return result;\n  }\n\n  /**\n   * Helper class that maintains a cache of thread local objects that can be used to access\n   * a ByteBuffer in {@link Utils#accumulateSum(ByteBuffer, int, int, int, CompressedBigDecimal)}.\n   */\n  private static class BufferAccessor implements ToIntBiFunction<ByteBuffer, Integer>, ObjBiIntConsumer<ByteBuffer>\n  {\n    private static final ThreadLocal<BufferAccessor> CACHE = ThreadLocal.withInitial(BufferAccessor::new);\n\n    private int position = 0;\n\n    /**\n     * Initialized the BufferAccessor with the location that should be used for access.\n     *","sourceCodeStart":152,"sourceCodeEnd":188,"githubUrl":"https://github.com/apache/druid/blob/9b90983fd291f26935af934383ce360473179e4d/extensions-contrib/compressed-bigdecimal/src/main/java/org/apache/druid/compressedbigdecimal/Utils.java#L152-L188","documentation":"objToCompressedBigDecimal accepts null, CompressedBigDecimal, BigDecimal, Long, Integer, Double and Float selector values; any other object type reaches the final branch and is rejected by this instanceof-chain guard.","triggerScenarios":"Thrown at extensions-contrib/compressed-bigdecimal/src/main/java/org/apache/druid/compressedbigdecimal/Utils.java:170 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Convert the selector output to a supported numeric type before aggregation.","Fix the ingestion/parser configuration so the column only yields numeric values."],"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"}