-
Notifications
You must be signed in to change notification settings - Fork 555
NPE with Iterator.SeekGE on stacked range keys via NewExternalIter #1760
Copy link
Copy link
Closed
Description
Consider the following sequence, which builds an in-memory SST and then attempts to iterate over it via NewExternalIter():
sst_put_rangekey k=a end=c ts=2
sst_put_rangekey k=a end=c ts=1
sst_finish
sst_iter_new
iter_seek_ge k=a
This panics with:
panic: runtime error: invalid memory address or nil pointer dereference [recovered]
panic: runtime error: invalid memory address or nil pointer dereference [recovered]
panic: runtime error: invalid memory address or nil pointer dereference
[signal SIGSEGV: segmentation violation code=0x1 addr=0x0 pc=0xfcd9e5]
goroutine 1762 [running]:
testing.tRunner.func1.2({0x18daba0, 0x2bf46b0})
GOROOT/src/testing/testing.go:1209 +0x24e
testing.tRunner.func1()
GOROOT/src/testing/testing.go:1212 +0x218
panic({0x18daba0, 0x2bf46b0})
GOROOT/src/runtime/panic.go:1038 +0x215
github.com/cockroachdb/datadriven.runDirective.func1.1()
github.com/cockroachdb/datadriven/external/com_github_cockroachdb_datadriven/datadriven.go:318 +0xdb
panic({0x18daba0, 0x2bf46b0})
GOROOT/src/runtime/panic.go:1038 +0x215
github.com/cockroachdb/pebble.bySuffix.Less(...)
github.com/cockroachdb/pebble/external/com_github_cockroachdb_pebble/iterator.go:287
sort.insertionSort({0x1eddc50, 0xc0007cdc60}, 0x0, 0x2)
GOROOT/src/sort/sort.go:40 +0xb1
sort.quickSort({0x1eddc50, 0xc0007cdc60}, 0xc0007cdc60, 0x19e03a0, 0xc0006d2158)
GOROOT/src/sort/sort.go:222 +0x171
sort.Sort({0x1eddc50, 0xc0007cdc60})
GOROOT/src/sort/sort.go:231 +0x53
github.com/cockroachdb/pebble.(*Iterator).saveRangeKey(0xc0009de500)
github.com/cockroachdb/pebble/external/com_github_cockroachdb_pebble/iterator.go:1640 +0x7bb
github.com/cockroachdb/pebble.(*Iterator).findNextEntry(0xc0009de500, {0x0, 0x0, 0x0})
github.com/cockroachdb/pebble/external/com_github_cockroachdb_pebble/iterator.go:412 +0x60a
github.com/cockroachdb/pebble.(*Iterator).SeekGEWithLimit(0xc0009de500, {0xc000f606a0, 0x2, 0x1c}, {0x0, 0x0, 0x0})
github.com/cockroachdb/pebble/external/com_github_cockroachdb_pebble/iterator.go:1014 +0x549
github.com/cockroachdb/pebble.(*Iterator).SeekGE(...)
github.com/cockroachdb/pebble/external/com_github_cockroachdb_pebble/iterator.go:936
...
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels