zed icon indicating copy to clipboard operation
zed copied to clipboard

VNG bounds error in roundtrip

Open jamii opened this issue 2 years ago • 2 comments

To reproduce:

> git checkout origin/jamii-fuzz-vng-repro
> cd vng
> ZED_USE_DICT=1 go test -fuzz FuzzVngRoundtripGen/f5c94e3a7a95e75c
--- FAIL: FuzzVngRoundtripGen (0.00s)
    --- FAIL: FuzzVngRoundtripGen/f5c94e3a7a95e75c (0.00s)
panic: runtime error: slice bounds out of range [:-3] [recovered]
	panic: runtime error: slice bounds out of range [:-3]

goroutine 7 [running]:
testing.tRunner.func1.2({0x798f80, 0xc00002e528})
	/nix/store/m3mi5km1zdmaqdb33byirlixigzh3f4l-go-1.20.7/share/go/src/testing/testing.go:1526 +0x24e
testing.tRunner.func1()
	/nix/store/m3mi5km1zdmaqdb33byirlixigzh3f4l-go-1.20.7/share/go/src/testing/testing.go:1529 +0x39f
panic({0x798f80, 0xc00002e528})
	/nix/store/m3mi5km1zdmaqdb33byirlixigzh3f4l-go-1.20.7/share/go/src/runtime/panic.go:884 +0x213
github.com/brimdata/zed/pkg/peeker.(*Reader).Peek(0x8cb700?, 0xc00009f180?)
	/home/jamie/zed/pkg/peeker/reader.go:77 +0x110
github.com/brimdata/zed/pkg/peeker.(*Reader).Read(0xc00009f180, 0xfffffffffffffffd)
	/home/jamie/zed/pkg/peeker/reader.go:81 +0x27
github.com/brimdata/zed/zio/zngio.(*parser).readCompressedFrame(0xc00029b5b0, 0x27?)
	/home/jamie/zed/zio/zngio/parser.go:186 +0x1a8
github.com/brimdata/zed/zio/zngio.(*parser).decodeTypes(0xc00029b5b0, 0x60?)
	/home/jamie/zed/zio/zngio/parser.go:61 +0x2e
github.com/brimdata/zed/zio/zngio.(*parser).read(0xc00029b5b0)
	/home/jamie/zed/zio/zngio/parser.go:45 +0x1a8
github.com/brimdata/zed/zio/zngio.(*scannerSync).Pull(0xc00029b570, 0x70?)
	/home/jamie/zed/zio/zngio/sync.go:60 +0x6d
github.com/brimdata/zed/zbuf.(*pullerReader).Read(0xc000015d40)
	/home/jamie/zed/zbuf/batch.go:190 +0x9f
github.com/brimdata/zed/zio/zngio.(*Reader).Read(0xc000094de0)
	/home/jamie/zed/zio/zngio/reader.go:106 +0x4c
github.com/brimdata/zed/zio/zngio.readTrailer({0xc00003828d, 0x7, 0x7})
	/home/jamie/zed/zio/zngio/trailer.go:129 +0x16a
github.com/brimdata/zed/zio/zngio.findTrailer({0xc0000381c0, 0xd4, 0xd4})
	/home/jamie/zed/zio/zngio/trailer.go:96 +0xf4
github.com/brimdata/zed/zio/zngio.ReadTrailer({0x7f1413cf78a8?, 0xc0002a1290?}, 0xb?)
	/home/jamie/zed/zio/zngio/trailer.go:54 +0x45
github.com/brimdata/zed/vng.readTrailer({0x7f1413cf78a8?, 0xc0002a1290?}, 0xc0002bd410?)
	/home/jamie/zed/vng/trailer.go:22 +0x2a
github.com/brimdata/zed/vng.NewObject(0xc000094d20, {0x7f1413cf78a8?, 0xc0002a1290}, 0xd4)
	/home/jamie/zed/vng/object.go:36 +0x48
github.com/brimdata/zed/zio/vngio.NewReader(0xc000043580?, {0x8cb4a0, 0xc0002a1290})
	/home/jamie/zed/zio/vngio/reader.go:27 +0xe9
github.com/brimdata/zed/vng_test.roundtrip(0xc000169520, {0xad1748, 0x0, 0x1?}, {0x0?, 0x0?})
	/home/jamie/zed/vng/vng_test.go:106 +0x37c
github.com/brimdata/zed/vng_test.FuzzVngRoundtripGen.func1(0x0?, {0xc000019270?, 0x0?, 0x468859?})
	/home/jamie/zed/vng/vng_test.go:51 +0x2b2
reflect.Value.call({0x751a60?, 0x7f1250?, 0x13?}, {0x7b8c3d, 0x4}, {0xc0002a04e0, 0x2, 0x2?})
	/nix/store/m3mi5km1zdmaqdb33byirlixigzh3f4l-go-1.20.7/share/go/src/reflect/value.go:586 +0xb0b
reflect.Value.Call({0x751a60?, 0x7f1250?, 0xa21c48?}, {0xc0002a04e0?, 0x7b7f00?, 0xc000019598?})
	/nix/store/m3mi5km1zdmaqdb33byirlixigzh3f4l-go-1.20.7/share/go/src/reflect/value.go:370 +0xbc
testing.(*F).Fuzz.func1.1(0x0?)
	/nix/store/m3mi5km1zdmaqdb33byirlixigzh3f4l-go-1.20.7/share/go/src/testing/fuzz.go:335 +0x3f3
testing.tRunner(0xc000169520, 0xc0001d0630)
	/nix/store/m3mi5km1zdmaqdb33byirlixigzh3f4l-go-1.20.7/share/go/src/testing/testing.go:1576 +0x10b
created by testing.(*F).Fuzz.func1
	/nix/store/m3mi5km1zdmaqdb33byirlixigzh3f4l-go-1.20.7/share/go/src/testing/fuzz.go:322 +0x5b9
exit status 2
FAIL	github.com/brimdata/zed/vng	0.006s

This crash was only found after varying the skew/column thresholds. May be related to https://github.com/brimdata/zed/issues/4840.

jamii avatar Nov 02 '23 19:11 jamii

Closing this as I've verified it's a duplicate of #4840.

nwt avatar Nov 03 '23 10:11 nwt

Doh! No, it's not.

nwt avatar Nov 03 '23 10:11 nwt