Influxdb: SHOW TAG VALUES WITH key = mykey WHERE foo = 'bar' : panic

Created on 13 Mar 2018  路  5Comments  路  Source: influxdata/influxdb

Bug report

We recently upgraded influxdb from 1.4.2 to 1.5.0 and now we have a panic when retrieving tag values : SHOW TAG VALUES FROM my_measurement WITH KEY = stack_name WHERE application_name = 'foo' [panic:runtime error: invalid memory address or nil pointer dereference]

Here is the detailed log of influxdb when the query occurs.

Mar 13 14:46:54 servername influxd[3228]: ts=2018-03-13T13:46:54.327234Z lvl=error msg="SHOW TAG VALUES FROM my_measurement WITH KEY = stack_name WHERE application_name = 'foo'
[panic:runtime error: invalid memory address or nil pointer dereference] goroutine 3100870 [running]:\n
runtime/debug.Stack(0xc5381cada0, 0xc5473e8060, 0x5e)\n
    \t/usr/local/go/src/runtime/debug/stack.go:24 +0xa7\n
github.com/influxdata/influxdb/query.(*QueryExecutor).recover(0xc420210ed0, 0xc5381cada0, 0xc5210c6420)\n
    \t/go/src/github.com/influxdata/influxdb/query/query_executor.go:451 +0xaf\n
panic(0xce4120, 0x1302970)\n
    \t/usr/local/go/src/runtime/panic.go:491 +0x283\n
github.com/influxdata/influxdb/tsdb.(*MeasurementFields).HasField(0x0, 0xc4f0060410, 0x10, 0x99c937)\n
    \t/go/src/github.com/influxdata/influxdb/tsdb/shard.go:1408 +0x26\n
github.com/influxdata/influxdb/tsdb.IndexSet.seriesByBinaryExprIterator(0xc558510000, 0x10, 0x10, 0xc4202419a0, 0xc436279344, 0x14, 0x1b9, 0xc4bae002a0, 0x0, 0x7800000000d4d240, ...)\n
    \t/go/src/github.com/influxdata/influxdb/tsdb/index.go:1833 +0xdd2\n
github.com/influxdata/influxdb/tsdb.IndexSet.seriesByExprIterator(0xc558510000, 0x10, 0x10, 0xc4202419a0, 0xc436279344, 0x14, 0x1b9, 0x12cae00, 0xc4bae002a0, 0x0, ...)\n
    \t/go/src/github.com/influxdata/influxdb/tsdb/index.go:1786 +0x476\n
github.com/influxdata/influxdb/tsdb.IndexSet.tagValuesByKeyAndExpr(0xc558510000, 0x10, 0x10, 0xc4202419a0, 0x12ce9c0, 0x1336238, 0xc436279344, 0x14, 0x1b9, 0xc5482afc50, ...)\n
    \t/go/src/github.com/influxdata/influxdb/tsdb/index.go:2144 +0x1a0\n
github.com/influxdata/influxdb/tsdb.IndexSet.MeasurementTagKeyValuesByExpr(0xc558510000, 0x10, 0x10, 0xc4202419a0, 0x12ce9c0, 0x1336238, 0xc436279344, 0x14, 0x1b9, 0xc5482afc50, ...)\n
    \t/go/src/github.com/influxdata/influxdb/tsdb/index.go:2293 +0xca1\n
github.com/influxdata/influxdb/tsdb.(*Store).TagValues(0xc420001980, 0x12ce9c0, 0x1336238, 0xc4dcb1ce00, 0x10, 0x10, 0x12cae00, 0xc50f583f50, 0x10, 0x40, ...)\n
    \t/go/src/github.com/influxdata/influxdb/tsdb/store.go:1517 +0x946\n
github.com/influxdata/influxdb/coordinator.LocalTSDBStor
Mar 13 14:46:54 servername influxd[3228]: e.TagValues(0xc420001980, 0x12ce9c0, 0x1336238, 0xc4dcb1ce00, 0x10, 0x10, 0x12cae00, 0xc50f583f50, 0x32f2d7fe, 0x109d537404, ...)\n
    \t<autogenerated>:1 +0x97\n
github.com/influxdata/influxdb/coordinator.(*StatementExecutor).executeShowTagValues(0xc4202378f0, 0xc52cc83500, 0xc4668afc48, 0xdf7588, 0xf)\n
    \t/go/src/github.com/influxdata/influxdb/coordinator/statement_executor.go:1066 +0x840\n
github.com/influxdata/influxdb/coordinator.(*StatementExecutor).ExecuteStatement(0xc4202378f0, 0x12ce780, 0xc52cc83500, 0x0, 0x11f4, 0xc4255a5810, 0xc5210c6420, 0xc4a10735c0, 0xc4e663801c, 0x6, ...)\n
    \t/go/src/github.com/influxdata/influxdb/coordinator/statement_executor.go:194 +0x2937\n
github.com/influxdata/influxdb/query.(*QueryExecutor).executeQuery(0xc420210ed0, 0xc5381cada0, 0xc4e663801c, 0x6, 0x12ce9c0, 0x1336238, 0x2710, 0x0, 0x0, 0x0, ...)\n
    \t/go/src/github.com/influxdata/influxdb/query/query_executor.go:389 +0xae8\n
created by github.com/influxdata/influxdb/query.(*QueryExecutor).ExecuteQuery\n
    \t/go/src/github.com/influxdata/influxdb/query/query_executor.go:285 +0xc3\n" log_id=06ohrsP0000 service=query

Most helpful comment

I work with seuf, In grafana all dashboard where 2 variables are linked are broken :(
I liked Grafana / influxdb a lot :(

Something strange, many measurement have a fake column call "" due to comma in tag_value maybe

---->SHOW MEASUREMENTS WHERE ""=''<-----

return no value before 1.5

make influxdb great again

All 5 comments

I work with seuf, In grafana all dashboard where 2 variables are linked are broken :(
I liked Grafana / influxdb a lot :(

Something strange, many measurement have a fake column call "" due to comma in tag_value maybe

---->SHOW MEASUREMENTS WHERE ""=''<-----

return no value before 1.5

make influxdb great again

Trouble with user_agent
This makes trouble :
Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.108 Safari/537.36
This does not :
Mozilla/5.0 (Windows NT 6.1; WOW64; rv:56.0) Gecko/20100101 Firefox/56.0

Maybe parentheses with simple comma inside in tag value !!!

It seems inserting tag like : . . . . .(bla, bla, blabla) . . .
_eq : stuff separated by comma(s) inside parenthesis_
generate extra columns with empty title
make a simple test demain (means tomorrow)

This is fixed in #9551. It will be part of a 1.5.1 release, currently due the end of this week or early next.

@lipoteFR your issue looks to be a duplicate of #9545, which I'm looking at today. If you have some extra information on reproducing it, could you add it to that issue?

@lipoteFR I just found your other issue. Thanks for the repro steps!

Was this page helpful?
0 / 5 - 0 ratings