Skip to content

panic in tagValuesIterator #3300

Closed
influxdata/influxdb
#19894
@adrian-thurston

Description

2020-11-02T18:31:57.110296Z     info    Execute source panic    {"log_id": "0QEZRfcl000", "service": "storage-reads", "error": "panic: runtime error: invalid memory address or nil pointer dereference"}
goroutine 1375 [running]:
runtime/debug.Stack(0xc000672d80, 0x3ba6200, 0x291f5b1)
        /opt/golang/1.15/go/src/runtime/debug/stack.go:24 +0x9f
github.com/influxdata/flux/execute.(*executionState).do.func1.1(0xc003e3a780)
        /home/thurston/go/pkg/mod/github.com/influxdata/flux@v0.92.1-0.20201102163214-958736c09599/execute/executor.go:279 +0x1e5
panic(0x255b5e0, 0x4f60da0)
        /opt/golang/1.15/go/src/runtime/panic.go:969 +0x175
github.com/influxdata/influxdb/v2/storage/flux.(*tagValuesIterator).handleRead(0xc003e3aa00, 0xc003f2d920, 0x0, 0x0, 0x0, 0x0)
        /home/thurston/devel/worktree/flux-init/influxdb/storage/flux/reader.go:968 +0x14b
github.com/influxdata/influxdb/v2/storage/flux.(*tagValuesIterator).Do(0xc003e3aa00, 0xc003f2d920, 0x6c3c06, 0x5fa0509d)
        /home/thurston/devel/worktree/flux-init/influxdb/storage/flux/reader.go:953 +0x1b4
github.com/influxdata/influxdb/v2/query/stdlib/influxdata/influxdb.(*Source).processTables(0xc001d315f0, 0x3bf6660, 0xc003f33290, 0x3bd0fa0, 0xc003e3aa00, 0x1643c479339f9b3d, 0x1643c479334709bb, 0xc002d36738)
        /home/thurston/devel/worktree/flux-init/influxdb/query/stdlib/influxdata/influxdb/source.go:76 +0x94
github.com/influxdata/influxdb/v2/query/stdlib/influxdata/influxdb.(*readTagValuesSource).run(0xc001d315f0, 0x3bf6660, 0xc003f33290, 0xa0b5e6eb70e349cd, 0x290a459)
        /home/thurston/devel/worktree/flux-init/influxdb/query/stdlib/influxdata/influxdb/source.go:491 +0x178
github.com/influxdata/influxdb/v2/query/stdlib/influxdata/influxdb.(*Source).Run(0xc001d315f0, 0x3bf6660, 0xc003f33290)
        /home/thurston/devel/worktree/flux-init/influxdb/query/stdlib/influxdata/influxdb/source.go:56 +0x33c
github.com/influxdata/flux/execute.(*executionState).do.func1(0x3bf6660, 0xc003f33290, 0xc0035fe990, 0xc003e3a780, 0x3bf8160, 0xc001d315f0)
        /home/thurston/go/pkg/mod/github.com/influxdata/flux@v0.92.1-0.20201102163214-958736c09599/execute/executor.go:284 +0x1da
created by github.com/influxdata/flux/execute.(*executionState).do
        /home/thurston/go/pkg/mod/github.com/influxdata/flux@v0.92.1-0.20201102163214-958736c09599/execute/executor.go:254 +0xf8

Looks like rs is nil here: https://github.com/influxdata/influxdb/blob/master/storage/flux/reader.go#L968
Chris Wolfe writes: My guess is that it happens when the filters make it so there are no tag values returned? That is a test case that I forgot about in the Flux tests.

Metadata

Assignees

Labels

Type

No type

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions