{"record":{"id":"280a954fa5a905ad","repo":"apache/druid","slug":"not-supported","errorCode":null,"errorMessage":"not supported","messagePattern":"not supported","errorType":"exception","errorClass":"UnsupportedOperationException","httpStatus":null,"severity":"error","filePath":"extensions-contrib/cassandra-storage/src/main/java/org/apache/druid/storage/cassandra/CassandraDataSegmentPusher.java","lineNumber":114,"sourceCode":"      }\n      catch (Exception e) {\n        throw new IOException(e);\n      }\n\n      return segment.withSize(indexSize)\n                    .withLoadSpec(ImmutableMap.of(\"type\", \"c*\", \"key\", key))\n                    .withBinaryVersion(version);\n    }\n    finally {\n      log.info(\"Deleting zipped index File[%s]\", compressedIndexFile);\n      compressedIndexFile.delete();\n    }\n  }\n\n  @Override\n  public Map<String, Object> makeLoadSpec(URI uri)\n  {\n    throw new UnsupportedOperationException(\"not supported\");\n  }\n\n  private boolean doesObjectExist(ChunkedStorageProvider provider, String objectName) throws Exception\n  {\n    try {\n      return ChunkedStorage.newInfoReader(provider, objectName).call().isValidForRead();\n    }\n    catch (NotFoundException e) {\n      return false;\n    }\n  }\n}\n","sourceCodeStart":96,"sourceCodeEnd":127,"githubUrl":"https://github.com/apache/druid/blob/9b90983fd291f26935af934383ce360473179e4d/extensions-contrib/cassandra-storage/src/main/java/org/apache/druid/storage/cassandra/CassandraDataSegmentPusher.java#L96-L127","documentation":"makeLoadSpec in the Cassandra deep-storage extension is deliberately unimplemented: Cassandra segments cannot be reconstructed from a bare URI, they load only via the c*-typed load spec produced during push. Any code path that asks this extension to build a load spec from a URI hits this unconditional guard.","triggerScenarios":"Thrown at extensions-contrib/cassandra-storage/src/main/java/org/apache/druid/storage/cassandra/CassandraDataSegmentPusher.java:114 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Do not use URI-based segment loading with the Cassandra extension; ensure all segments were pushed via CassandraDataSegmentPusher so they carry the c* load spec.","If historical servers must load segments from URIs, switch to a deep-storage implementation whose makeLoadSpec is supported."],"exampleFix":null,"handlingStrategy":"validation","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"}