{"record":{"id":"70bb3177f348cd2b","repo":"sqlmapproject/sqlmap","slug":"goaway-partially-processed-a-multi-stream-exchange","errorCode":null,"errorMessage":"GOAWAY partially processed a multi-stream exchange","messagePattern":"GOAWAY partially processed a multi-stream exchange","errorType":"exception","errorClass":"H2Error","httpStatus":null,"severity":"error","filePath":"lib/request/http2.py","lineNumber":1228,"sourceCode":"            self._connection_error(\"non-CONTINUATION frame interleaved in a field section\")\n\n        if ftype == SETTINGS:\n            self._handle_settings(flags, sid, payload)\n        elif ftype == PING:\n            self._handle_ping(flags, sid, payload)\n        elif ftype == WINDOW_UPDATE:\n            self._handle_window_update(sid, payload)\n        elif ftype == GOAWAY:\n            if sid != 0 or len(payload) < 8:\n                self._connection_error(\"invalid GOAWAY frame\")\n            self.usable = False\n            last_sid = struct.unpack(\"!I\", payload[:4])[0] & MAX_STREAM_ID\n            active = sorted(states)\n            unprocessed = [stream_id for stream_id in active if stream_id > last_sid]\n            if len(unprocessed) == len(active):\n                raise _UnprocessedStream(\"GOAWAY confirms active stream(s) were not processed\")\n            if unprocessed:\n                raise H2Error(\"GOAWAY partially processed a multi-stream exchange\")\n        elif ftype == RST_STREAM:\n            if sid == 0 or len(payload) != 4:\n                self._connection_error(\"invalid RST_STREAM frame\")\n            if sid in states:\n                error_code = struct.unpack(\"!I\", payload)[0]\n                if len(states) == 1 and error_code == REFUSED_STREAM:\n                    raise _UnprocessedStream(\"peer refused the stream before processing\")\n                raise H2Error(\"stream %d reset by peer (error %d)\" % (sid, error_code))\n            if sid % 2 == 0 or sid >= self.next_sid:\n                self._connection_error(\"RST_STREAM referenced an idle stream\")\n        elif ftype == PUSH_PROMISE:\n            self._connection_error(\"server push received despite SETTINGS_ENABLE_PUSH=0\")\n        elif ftype in (HEADERS, CONTINUATION):\n            continuation_sid = self._process_header_frame(\n                ftype, flags, sid, payload, states, continuation_sid\n            )\n        elif ftype == DATA:\n            if sid == 0:","sourceCodeStart":1210,"sourceCodeEnd":1246,"githubUrl":"https://github.com/sqlmapproject/sqlmap/blob/0a35b20e3953d341be6c7ac75ccb0b3362540c8d/lib/request/http2.py#L1210-L1246","documentation":"Error \"GOAWAY partially processed a multi-stream exchange\" thrown in sqlmapproject/sqlmap.","triggerScenarios":"Thrown at lib/request/http2.py:1228 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":"0a35b20e3953d341be6c7ac75ccb0b3362540c8d","analyzedAt":"2026-08-26T23:02:52.002Z","schemaVersion":2},"datasetVersion":"2026-08-27T03:17:27.898Z"}