Open hw-dwalter opened 1 month ago
started with docker as described. issued api call and get this segfault:
wiretap-wiretap-1 | panic: runtime error: invalid memory address or nil pointer dereference [recovered] wiretap-wiretap-1 | panic: runtime error: invalid memory address or nil pointer dereference wiretap-wiretap-1 | [signal SIGSEGV: segmentation violation code=0x1 addr=0x48 pc=0x8aa393] wiretap-wiretap-1 | wiretap-wiretap-1 | wiretap-wiretap-1 | goroutine 488 [running]: wiretap-wiretap-1 | gopkg.in/yaml%2ev3.handleErr(0xc0006a0858) wiretap-wiretap-1 | /go/pkg/mod/gopkg.in/yaml.v3@v3.0.1/yaml.go:294 +0x6d wiretap-wiretap-1 | panic({0xd4c780?, 0x1e62a90?}) wiretap-wiretap-1 | /usr/local/go/src/runtime/panic.go:914 +0x21f wiretap-wiretap-1 | gopkg.in/yaml%2ev3.(*Node).Encode(0xc0005c4780, {0xddcfc0, 0xc000357720}) wiretap-wiretap-1 | /go/pkg/mod/gopkg.in/yaml.v3@v3.0.1/yaml.go:269 +0x593 wiretap-wiretap-1 | github.com/pb33f/libopenapi/datamodel/high.(*NodeBuilder).AddYAMLNode(0xc0005b0500, 0xc0005c41e0, 0xc0005be5a0) wiretap-wiretap-1 | /go/pkg/mod/github.com/pb33f/libopenapi@v0.16.6/datamodel/high/node_builder.go:514 +0xb96 wiretap-wiretap-1 | github.com/pb33f/libopenapi/datamodel/high.(*NodeBuilder).Render(0xc0005b0500) wiretap-wiretap-1 | /go/pkg/mod/github.com/pb33f/libopenapi@v0.16.6/datamodel/high/node_builder.go:257 +0x236 wiretap-wiretap-1 | github.com/pb33f/libopenapi/datamodel/high/base.(*SchemaProxy).MarshalYAMLInline(0xc000362880) wiretap-wiretap-1 | /go/pkg/mod/github.com/pb33f/libopenapi@v0.16.6/datamodel/high/base/schema_proxy.go:230 +0xb7 wiretap-wiretap-1 | github.com/pb33f/libopenapi/datamodel/high.(*NodeBuilder).AddYAMLNode(0xc0005b0140, 0xc0005a8820, 0xc0005be3c0) wiretap-wiretap-1 | /go/pkg/mod/github.com/pb33f/libopenapi@v0.16.6/datamodel/high/node_builder.go:459 +0xde2 wiretap-wiretap-1 | github.com/pb33f/libopenapi/orderedmap.(*Map[...]).ToYamlNode(0x16f7980, {0x16e0040, 0xc0005b0140}, {0xe6d200, 0xc000363b80}) wiretap-wiretap-1 | /go/pkg/mod/github.com/pb33f/libopenapi@v0.16.6/orderedmap/builder.go:81 +0x14e wiretap-wiretap-1 | github.com/pb33f/libopenapi/datamodel/high.(*NodeBuilder).AddYAMLNode(0xc0005b0140, 0xc0005a85a0, 0xc0005379e0) wiretap-wiretap-1 | /go/pkg/mod/github.com/pb33f/libopenapi@v0.16.6/datamodel/high/node_builder.go:431 +0x737 wiretap-wiretap-1 | github.com/pb33f/libopenapi/datamodel/high.(*NodeBuilder).Render(0xc0005b0140) wiretap-wiretap-1 | /go/pkg/mod/github.com/pb33f/libopenapi@v0.16.6/datamodel/high/node_builder.go:257 +0x236 wiretap-wiretap-1 | github.com/pb33f/libopenapi/datamodel/high/base.(*SchemaProxy).MarshalYAMLInline(0xc000541140) wiretap-wiretap-1 | /go/pkg/mod/github.com/pb33f/libopenapi@v0.16.6/datamodel/high/base/schema_proxy.go:230 +0xb7 wiretap-wiretap-1 | github.com/pb33f/libopenapi/datamodel/high.(*NodeBuilder).AddYAMLNode(0xc0000174a0, 0xc000393a40, 0xc000536fc0) wiretap-wiretap-1 | /go/pkg/mod/github.com/pb33f/libopenapi@v0.16.6/datamodel/high/node_builder.go:459 +0xde2 wiretap-wiretap-1 | github.com/pb33f/libopenapi/orderedmap.(*Map[...]).ToYamlNode(0x16f7980, {0x16e0040, 0xc0000174a0}, {0xe6d200, 0xc000541240}) wiretap-wiretap-1 | /go/pkg/mod/github.com/pb33f/libopenapi@v0.16.6/orderedmap/builder.go:81 +0x14e wiretap-wiretap-1 | github.com/pb33f/libopenapi/datamodel/high.(*NodeBuilder).AddYAMLNode(0xc0000174a0, 0xc00007f7c0, 0xc00014b620) wiretap-wiretap-1 | /go/pkg/mod/github.com/pb33f/libopenapi@v0.16.6/datamodel/high/node_builder.go:431 +0x737 wiretap-wiretap-1 | github.com/pb33f/libopenapi/datamodel/high.(*NodeBuilder).Render(0xc0000174a0) wiretap-wiretap-1 | /go/pkg/mod/github.com/pb33f/libopenapi@v0.16.6/datamodel/high/node_builder.go:257 +0x236 wiretap-wiretap-1 | github.com/pb33f/libopenapi/datamodel/high/base.(*SchemaProxy).MarshalYAMLInline(0xc0004987c0) wiretap-wiretap-1 | /go/pkg/mod/github.com/pb33f/libopenapi@v0.16.6/datamodel/high/base/schema_proxy.go:230 +0xb7 wiretap-wiretap-1 | github.com/pb33f/libopenapi/datamodel/high.(*NodeBuilder).AddYAMLNode(0xc000016730, 0xc00007f540, 0xc00014a720) wiretap-wiretap-1 | /go/pkg/mod/github.com/pb33f/libopenapi@v0.16.6/datamodel/high/node_builder.go:459 +0xde2 wiretap-wiretap-1 | github.com/pb33f/libopenapi/orderedmap.(*Map[...]).ToYamlNode(0x16f7980, {0x16e0040, 0xc000016730}, {0xe6d200, 0xc000498800}) wiretap-wiretap-1 | /go/pkg/mod/github.com/pb33f/libopenapi@v0.16.6/orderedmap/builder.go:81 +0x14e wiretap-wiretap-1 | github.com/pb33f/libopenapi/datamodel/high.(*NodeBuilder).AddYAMLNode(0xc000016730, 0xc00007f040, 0xc00014a6c0) wiretap-wiretap-1 | /go/pkg/mod/github.com/pb33f/libopenapi@v0.16.6/datamodel/high/node_builder.go:431 +0x737 wiretap-wiretap-1 | github.com/pb33f/libopenapi/datamodel/high.(*NodeBuilder).Render(0xc000016730) wiretap-wiretap-1 | /go/pkg/mod/github.com/pb33f/libopenapi@v0.16.6/datamodel/high/node_builder.go:257 +0x236 wiretap-wiretap-1 | github.com/pb33f/libopenapi/datamodel/high/base.(*Schema).MarshalYAMLInline(0xc0002a5680) wiretap-wiretap-1 | /go/pkg/mod/github.com/pb33f/libopenapi@v0.16.6/datamodel/high/base/schema.go:529 +0x6a wiretap-wiretap-1 | github.com/pb33f/libopenapi/datamodel/high/base.(*Schema).RenderInline(0xc000540540?) wiretap-wiretap-1 | /go/pkg/mod/github.com/pb33f/libopenapi@v0.16.6/datamodel/high/base/schema.go:478 +0x13 wiretap-wiretap-1 | github.com/pb33f/libopenapi-validator/responses.(*responseBodyValidator).checkResponseSchema(0xc0004984c0, 0xc0002b5f20?, 0xc000470700?, {0xc000470700?, 0x16e7028?}, 0xc00040e1e0) wiretap-wiretap-1 | /go/pkg/mod/github.com/pb33f/libopenapi-validator@v0.0.56/responses/validate_body.go:142 +0x146 wiretap-wiretap-1 | github.com/pb33f/libopenapi-validator/responses.(*responseBodyValidator).ValidateResponseBody(0xc0004984c0, 0xc000566a00, 0xc00029a2d0) wiretap-wiretap-1 | /go/pkg/mod/github.com/pb33f/libopenapi-validator@v0.0.56/responses/validate_body.go:66 +0x4ff wiretap-wiretap-1 | github.com/pb33f/libopenapi-validator.(*validator).ValidateHttpResponse(0xc00055c400, 0x450a85?, 0xc000064ef8?) wiretap-wiretap-1 | /go/pkg/mod/github.com/pb33f/libopenapi-validator@v0.0.56/validator.go:120 +0xd3 wiretap-wiretap-1 | github.com/pb33f/wiretap/daemon.(*WiretapService).ValidateResponse(0xc00001d5f0, 0xc00057e6c0, 0xc00050a2a0?) wiretap-wiretap-1 | /work/daemon/validate.go:19 +0x68 wiretap-wiretap-1 | created by github.com/pb33f/wiretap/daemon.(*WiretapService).handleHttpRequest in goroutine 469 wiretap-wiretap-1 | /work/daemon/handle_request.go:176 +0xe91
Would you be able to share the spec that caused this? It's an issue being thrown at the bottom of the stack, by a dependency of the project. I'd like to see if I can patch it, but I need a way to trigger it.
started with docker as described. issued api call and get this segfault: