From: Marten Seemann Date: Fri, 14 Nov 2025 08:44:33 +0000 (+0800) Subject: qlogwriter: fix storing of event schemas (#5430) X-Git-Url: https://git.feebdaed.xyz/?a=commitdiff_plain;h=e46470d68fb47b8afcf247e6413385dae1c6708c;p=0xmirror%2Fquic-go.git qlogwriter: fix storing of event schemas (#5430) HTTP/3 qlogging (and qlogging for any other application protocol) only works if the event schemas are stored. --- diff --git a/qlogwriter/trace_test.go b/qlogwriter/trace_test.go index 69d018b1..cae4d203 100644 --- a/qlogwriter/trace_test.go +++ b/qlogwriter/trace_test.go @@ -59,6 +59,11 @@ func TestTraceMetadata(t *testing.T) { protocol.ParseConnectionID([]byte{0xde, 0xad, 0xbe, 0xef}), []string{"urn:ietf:params:qlog:events:foo", "urn:ietf:params:qlog:events:bar"}, ) + + require.False(t, trace.SupportsSchemas("urn:ietf:params:qlog:events:baz")) + require.True(t, trace.SupportsSchemas("urn:ietf:params:qlog:events:foo")) + require.True(t, trace.SupportsSchemas("urn:ietf:params:qlog:events:bar")) + go trace.Run() producer := trace.AddProducer() producer.Close() diff --git a/qlogwriter/writer.go b/qlogwriter/writer.go index 390039d6..c2921d91 100644 --- a/qlogwriter/writer.go +++ b/qlogwriter/writer.go @@ -115,6 +115,7 @@ func newFileSeq(w io.WriteCloser, pers string, odcid *ConnectionID, eventSchemas runStopped: make(chan struct{}), encodeErr: encodeErr, events: make(chan event, eventChanSize), + eventSchemas: eventSchemas, } }