{"record":{"id":"7fe3aa2bc8521b0b","repo":"langchain-ai/langgraph","slug":"synctoolcallhandle-deltas-can-only-be-iterated-by","errorCode":null,"errorMessage":"SyncToolCallHandle.deltas can only be iterated by a single consumer.","messagePattern":"SyncToolCallHandle\\.deltas can only be iterated by a single consumer\\.","errorType":"exception","errorClass":"RuntimeError","httpStatus":null,"severity":"error","filePath":"libs/sdk-py/langgraph_sdk/_sync/stream.py","lineNumber":501,"sourceCode":"        self._result: _BlockingResult = _BlockingResult()\n        self._deltas: queue.Queue[str | None] = queue.Queue(maxsize=max_queue_size)\n        self._deltas_consumed: bool = False\n\n    @property\n    def output(self) -> Any:\n        \"\"\"Block until the tool call completes and return its output.\"\"\"\n        return self._result.result()\n\n    @property\n    def deltas(self) -> Iterator[str]:\n        \"\"\"Iterate over tool output deltas emitted before the terminal event.\n\n        Raises:\n            RuntimeError: if called more than once — the underlying queue is\n                single-consumer and cannot be fanned out safely.\n        \"\"\"\n        if self._deltas_consumed:\n            raise RuntimeError(\n                \"SyncToolCallHandle.deltas can only be iterated by a single consumer.\"\n            )\n        self._deltas_consumed = True\n        return self._delta_iter()\n\n    def _delta_iter(self) -> Iterator[str]:\n        while True:\n            item = self._deltas.get()\n            if item is None:\n                return\n            yield item\n\n    def _push_delta(self, delta: str) -> None:\n        if self.done:\n            return\n        self._deltas.put_nowait(delta)\n\n    def _finish(self, output: Any) -> None:","sourceCodeStart":483,"sourceCodeEnd":519,"githubUrl":"https://github.com/langchain-ai/langgraph/blob/38031739e551638e373fb553453256c23feeb41f/libs/sdk-py/langgraph_sdk/_sync/stream.py#L483-L519","documentation":"Error \"SyncToolCallHandle.deltas can only be iterated by a single consumer.\" thrown in langchain-ai/langgraph.","triggerScenarios":"Thrown at libs/sdk-py/langgraph_sdk/_sync/stream.py:501 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":[],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"38031739e551638e373fb553453256c23feeb41f","analyzedAt":"2026-08-26T18:02:49.312Z","schemaVersion":2},"datasetVersion":"2026-08-26T21:11:00.512Z"}