{"record":{"id":"27bd0a97f1958dce","repo":"prestodb/presto","slug":"not-supported-27bd0a","errorCode":"NOT_SUPPORTED","errorMessage":"Black hole connector does not supported distributed reads","messagePattern":"Black hole connector does not supported distributed reads","errorType":"error_code","errorClass":"PrestoException","httpStatus":null,"severity":"error","filePath":"presto-blackhole/src/main/java/com/facebook/presto/plugin/blackhole/BlackHoleNodePartitioningProvider.java","lineNumber":59,"sourceCode":"    {\n        this.nodeManager = requireNonNull(nodeManager, \"nodeManager is null\");\n    }\n\n    @Override\n    public ConnectorBucketNodeMap getBucketNodeMap(ConnectorTransactionHandle transactionHandle, ConnectorSession session, ConnectorPartitioningHandle partitioningHandle, List<Node> sortedNodes)\n    {\n        // create one bucket per node\n        return createBucketNodeMap(nodeManager.getRequiredWorkerNodes().size());\n    }\n\n    @Override\n    public ToIntFunction<ConnectorSplit> getSplitBucketFunction(\n            ConnectorTransactionHandle transactionHandle,\n            ConnectorSession session,\n            ConnectorPartitioningHandle partitioningHandle)\n    {\n        return value -> {\n            throw new PrestoException(NOT_SUPPORTED, \"Black hole connector does not supported distributed reads\");\n        };\n    }\n\n    @Override\n    public BucketFunction getBucketFunction(\n            ConnectorTransactionHandle transactionHandle,\n            ConnectorSession session,\n            ConnectorPartitioningHandle partitioningHandle,\n            List<Type> partitionChannelTypes, int bucketCount)\n    {\n        return (page, position) -> {\n            long hash = 13;\n            for (int i = 0; i < partitionChannelTypes.size(); i++) {\n                Type type = partitionChannelTypes.get(i);\n                hash = 31 * hash + type.hash(page.getBlock(i), position);\n            }\n\n            // clear the sign bit","sourceCodeStart":41,"sourceCodeEnd":77,"githubUrl":"https://github.com/prestodb/presto/blob/55bb57d202de3b926896fa966c2c4a44c779634e/presto-blackhole/src/main/java/com/facebook/presto/plugin/blackhole/BlackHoleNodePartitioningProvider.java#L41-L77","documentation":"The BlackHole connector only supports system-created partitioning for writes; requesting a split-to-bucket mapping (distributed reads) hits an unsupported-operation sentinel in getSplitBucketFunction.","triggerScenarios":"Thrown at presto-blackhole/src/main/java/com/facebook/presto/plugin/blackhole/BlackHoleNodePartitioningProvider.java:59 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Remove partitioning/table-layout requirements that force bucketed reads against BlackHole","Use a real connector for distributed read tests"],"exampleFix":null,"handlingStrategy":"type-guard","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"55bb57d202de3b926896fa966c2c4a44c779634e","analyzedAt":"2026-09-04T12:50:26.162Z","contentChangedAt":"2026-09-04T12:50:26.162Z","schemaVersion":2},"datasetVersion":"2026-09-12T02:17:10.037Z"}