Skip to content

quic: QuicStream writer creates unhandled error #64290

Description

@martenrichter

I have currently a pattern, where the stream arrives with onheaders,
and then after some processing I may answer with:

  stream.sendHeaders({ ':status': status.toString() })
   stream.writer.endSync()

status is 404, the client on the other side (not a node.js client),
then errors the stream with code 256
and I get:

node:internal/quic/quic:1009
        error = makeQuicError(
                ^

QuicError: QUIC application error 256: stream reset with code 256
    at Stream.onStreamClose (node:internal/quic/quic:1009:17) {
  code: 'ERR_QUIC_APPLICATION_ERROR',
  reason: 'stream reset with code 256'
}

This caused by the drainWakeup promise, here:

drainWakeup.reject(error);

I wonder, if the user has to subscribe to some error to handle it.
But I think it is probably a problem how the writer interface is made here.
That is above my js skills.
@jasnell @pimterry do one of you have an idea, if it is a problem inside node.js or on my code outside node.js

Metadata

Metadata

Assignees

No one assigned

    Labels

    quicIssues and PRs related to the QUIC implementation / HTTP/3.

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions