influxdata / influxdata/influxdb
segmentation violation in TagValueSeriesIDCache. checkEviction
- Dominant language
- Rust
- Stars
- 31.7k
- Forks
- 3.7k
- Avg merge
- 13h 37m
- Merged PRs (30d)
- 8
Description
**System info:** InfluxDB v1.7.1, Linux amd64
**Index:** tsi1
**Steps to reproduce:** SIGSEGV happening randomly
**Expected behavior:** no panic and SIGSEGV
**Actual behavior:**
unexpected fault address 0x7f3081eaceb5
fatal error: fault
[signal SIGSEGV: segmentation violation code=0x1 addr=0x7f3081eaceb5 pc=0x45eb97]
goroutine 606350673 [running]:
runtime.throw(0x11ec38c, 0x5)
/usr/local/go/src/runtime/panic.go:608 +0x72 fp=0xc0347cf630 sp=0xc0347cf600 pc=0x42df92
runtime.sigpanic()
/usr/local/go/src/runtime/signal_unix.go:397 +0x275 fp=0xc0347cf680 sp=0xc0347cf630 pc=0x443845
runtime.memmove(0xc0347cf758, 0x7f3081eaceb5, 0x11)
/usr/local/go/src/runtime/memmove_amd64.s:178 +0x147 fp=0xc0347cf688 sp=0xc0347cf680 pc=0x45eb97
runtime.slicebytetostring(0xc0347cf758, 0x7f3081eaceb5, 0x11, 0x175ce, 0xc0347cf758, 0x11)
/usr/local/go/src/runtime/string.go:106 +0x7e fp=0xc0347cf6b8 sp=0xc0347cf688 pc=0x4486fe
github.com/influxdata/influxdb/tsdb/index/tsi1.(*TagValueSeriesIDCache).checkEviction(0xc0477c1290)
/go/src/github.com/influxdata/influxdb/tsdb/index/tsi1/cache.go:176 +0x1bc fp=0xc0347cf7c0 sp=0xc0347cf6b8 pc=0xe4449c
github.com/influxdata/influxdb/tsdb/index/tsi1.(*TagValueSeriesIDCache).Put(0xc0477c1290, 0xc022071350, 0x2b, 0x30, 0xc06511f650, 0xa, 0x10, 0xc0895a3c20, 0x16, 0x20, ...)
/go/src/github.com/influxdata/influxdb/tsdb/index/tsi1/cache.go:138 +0x28c fp=0xc0347cf848 sp=0xc0347cf7c0 pc=0xe43bac
github.com/influxdata/influxdb/tsdb/index/tsi1.(*Index).TagValueSeriesIDIterator(0xc06c8b00e0, 0xc022071350, 0x2b, 0x30, 0xc06511f650, 0xa, 0x10, 0xc0895a3c20, 0x16, 0x20, ...)
/go/src/github.com/influxdata/influxdb/tsdb/index/tsi1/index.go:1025 +0x3ff fp=0xc0347cf920 sp=0xc0347cf848 pc=0xe4e1bf
github.com/influxdata/influxdb/tsdb.IndexSet.tagValueSeriesIDIterator(0xc0378ee5a0, 0x1, 0x1, 0xc0003fe870, 0x0, 0x0, 0x0, 0xc022071350, 0x2b, 0x30, ...)
/go/src/github.com/influxdata/influxdb/tsdb/index.go:1858 +0x155 fp=0xc0347cf9f0 sp=0xc0347cf920 pc=0x991ba5
github.com/influxdata/influxdb/tsdb.IndexSet.seriesByBinaryExprStringIterator(0xc0378ee5a0, 0x1, 0x1, 0xc0003fe870, 0x0, 0x0, 0x0, 0xc022071350, 0x2b, 0x30, ...)
/go/src/github.com/influxdata/influxdb/tsdb/index.go:2078 +0x522 fp=0xc0347cfb00 sp=0xc0347cf9f0 pc=0x9942c2
github.com/influxdata/influxdb/tsdb.IndexSet.seriesByBinaryExprIterator(0xc0378ee5a0, 0x1, 0x1, 0xc0003fe870, 0x0, 0x0, 0x0, 0xc022071350, 0x2b, 0x30, ...)
/go/src/github.com/influxdata/influxdb/tsdb/index.go:2050 +0xc5f fp=0xc0347cfc68 sp=0xc0347cfb00 pc=0x9939cf
github.com/influxdata/influxdb/tsdb.IndexSet.seriesByExprIterator(0xc0378ee5a0, 0x1, 0x1, 0xc0003fe870, 0x0, 0x0, 0x0, 0xc022071350, 0x2b, 0x30, ...)
/go/src/github.com/influxdata/influxdb/tsdb/index.go:1977 +0x379 fp=0xc0347cfd20 sp=0xc0347cfc68 pc=0x992b09
github.com/influxdata/influxdb/tsdb.IndexSet.seriesByExprIterator(0xc0378ee5a0, 0x1, 0x1, 0xc0003fe870, 0x0, 0x0, 0x0, 0xc022071350, 0x2b, 0x30, ...)
/go/src/github.com/influxdata/influxdb/tsdb/index.go:1954 +0xf7 fp=0xc0347cfdd8 sp=0xc0347cfd20 pc=0x992887
github.com/influxdata/influxdb/tsdb.IndexSet.seriesByExprIterator(0xc0378ee5a0, 0x1, 0x1, 0xc0003fe870, 0x0, 0x0, 0x0, 0xc022071350, 0x2b, 0x30, ...)
/go/src/github.com/influxdata/influxdb/tsdb/index.go:1954 +0xf7 fp=0xc0347cfe90 sp=0xc0347cfdd8 pc=0x992887
github.com/influxdata/influxdb/tsdb.IndexSet.seriesByExprIterator(0xc0378ee5a0, 0x1, 0x1, 0xc0003fe870, 0x0, 0x0, 0x0, 0xc022071350, 0x2b, 0x30, ...)
/go/src/github.com/influxdata/influxdb/tsdb/index.go:1954 +0xf7 fp=0xc0347cff48 sp=0xc0347cfe90 pc=0x992887
github.com/influxdata/influxdb/tsdb.IndexSet.seriesByExprIterator(0xc0378ee5a0, 0x1, 0x1, 0xc0003fe870, 0x0, 0x0, 0x0, 0xc022071350, 0x2b, 0x30, ...)
/go/src/github.com/influxdata/influxdb/tsdb/index.go:1981 +0x579 fp=0xc0347d0000 sp=0xc0347cff48 pc=0x992d09
github.com/influxdata/influxdb/tsdb.IndexSet.seriesByExprIterator(0xc0378ee5a0, 0x1, 0x1, 0xc0003fe870, 0x0, 0x0, 0x0, 0xc022071350, 0x2b, 0x30, ...)
/go/src/github.com/influxdata/influxdb/tsdb/index.go:1960 +0x19d fp=0xc0347d00b8 sp=0xc0347d0000 pc=0x99292d
github.com/influxdata/influxdb/tsdb.IndexSet.measurementSeriesByExprIterator(0xc0378ee5a0, 0x1, 0x1, 0xc0003fe870, 0x0, 0x0, 0x0, 0xc022071350, 0x2b, 0x30, ...)
/go/src/github.com/influxdata/influxdb/tsdb/index.go:1893 +0xb1 fp=0xc0347d0178 sp=0xc0347d00b8 pc=0x991f91
github.com/influxdata/influxdb/tsdb.IndexSet.TagSets(0xc0378ee5a0, 0x1, 0x1, 0xc0003fe870, 0x0, 0x0, 0x0, 0xc0003fe870, 0xc022071350, 0x2b, ...)
/go/src/github.com/influxdata/influxdb/tsdb/index.go:2545 +0xef fp=0xc0347d0448 sp=0xc0347d0178 pc=0x99893f
github.com/influxdata/influxdb/tsdb/engine/tsm1.(*Engine).createVarRefIterator(0xc04026d7a0, 0x134e560, 0xc04571f0e0, 0xc026cc16b0, 0x2b, 0x134b720, 0xc053329900, 0x0, 0x0, 0x0, ...)
/go/src/github.com/influxdata/influxdb/tsdb/engine/tsm1/engine.go:2455 +0x256 fp=0xc0347d0670 sp=0xc0347d0448 pc=0xec4906
github.com/influxdata/influxdb/tsdb/engine/tsm1.(*Engine).CreateIterator(0xc04026d7a0, 0x134e560, 0xc04571f0e0, 0xc026cc16b0, 0x2b, 0x134b3e0, 0xc05d96e8a0, 0x0, 0x0, 0x0, ...)
/go/src/github.com/influxdata/influxdb/tsdb/engine/tsm1/engine.go:2328 +0x1e9 fp=0xc0347d0960 sp=0xc0347d0670 pc=0xec37b9
github.com/influxdata/influxdb/tsdb.(*Shard).CreateIterator(0xc037bd06c0, 0x134e560, 0xc04571f0e0, 0xc0440a0550, 0x134b3e0, 0xc05d96e8a0, 0x0, 0x0, 0x0, 0x0, ...)
/go/src/github.com/influxdata/influxdb/tsdb/shard.go:861 +0x120 fp=0xc0347d0b10 sp=0xc0347d0960 pc=0x9abd20
github.com/influxdata/influxdb/tsdb.Shards.CreateIterator(0xc03f5c3de0, 0x3, 0x3, 0x134e560, 0xc04571f0e0, 0xc0440a0550, 0x134b3e0, 0xc05d96e8a0, 0x0, 0x0, ...)
/go/src/github.com/influxdata/influxdb/tsdb/shard.go:1305 +0x13a fp=0xc0347d0cd0 sp=0xc0347d0b10 pc=0x9af43a
github.com/influxdata/influxdb/tsdb.(*Shards).CreateIterator(0xc03f5c3e00, 0x134e560, 0xc04571f0e0, 0xc0440a0550, 0x134b3e0, 0xc05d96e8a0, 0x0, 0x0, 0x0, 0x0, ...)
:1 +0xb5 fp=0xc0347d0e30 sp=0xc0347d0cd0 pc=0x9cc525
github.com/influxdata/influxdb/coordinator.(*LocalShardMapping).CreateIterator.func1(0xc0aa0c6940, 0x4, 0x4, 0xc01dfa2690, 0x1358160, 0xc03f5c3e00, 0x134e560, 0xc04571f0e0, 0xc0347d11a8, 0xc0347d1140, ...)
/go/src/github.com/influxdata/influxdb/coordinator/shard_mapper.go:194 +0x1e3 fp=0xc0347d0fc8 sp=0xc0347d0e30 pc=0xa79613
github.com/influxdata/influxdb/coordinator.(*LocalShardMapping).CreateIterator(0xc06c760740, 0x134e560, 0xc04571f0e0, 0xc01dfa2690, 0x134b3e0, 0xc05d96e8a0, 0x0, 0x0, 0x0, 0x0, ...)
/go/src/github.com/influxdata/influxdb/coordinator/shard_mapper.go:201 +0x26c fp=0xc0347d1188 sp=0xc0347d0fc8 pc=0xa6ac6c
github.com/influxdata/influxdb/query.(*exprIteratorBuilder).callIterator.func1(0xc0347d27b0, 0x134e560, 0xc04571f0e0, 0xc0347d1610, 0xc0347d15c8, 0xc05d96e8a0, 0x108ed40, 0xc053329640)
/go/src/github.com/influxdata/influxdb/query/select.go:581 +0x13a fp=0xc0347d1470 sp=0xc0347d1188 pc=0x8f434a
github.com/influxdata/influxdb/query.(*exprIteratorBuilder).callIterator(0xc0347d27b0, 0x134e560, 0xc04571f0e0, 0xc05d96e8a0, 0x134b3e0, 0xc05d96e8a0, 0x0, 0x0, 0x0, 0x0, ...)
/go/src/github.com/influxdata/influxdb/query/select.go:605 +0xd5 fp=0xc0347d15f0 sp=0xc0347d1470 pc=0x8e1cf5
github.com/influxdata/influxdb/query.(*exprIteratorBuilder).buildCallIterator.func1(0xc05d96e8a0, 0x134e560, 0xc04571f0e0, 0xc0347d27b0, 0xc0347d1c90, 0x28, 0xc0347d18f8, 0x40e1d8, 0x10)
/go/src/github.com/influxdata/influxdb/query/select.go:513 +0xd0 fp=0xc0347d1898 sp=0xc0347d15f0 pc=0x8f3340
github.com/influxdata/influxdb/query.(*exprIteratorBuilder).buildCallIterator(0xc0347d27b0, 0x134e560, 0xc04571f0e0, 0xc05d96e8a0, 0xc0347d2820, 0x40d94f, 0xc00aa60098, 0x8)
/go/src/github.com/influxdata/influxdb/query/select.go:557 +0xd41 fp=0xc0347d2760 sp=0xc0347d1898 pc=0x8deb51
github.com/influxdata/influxdb/query.buildExprIterator(0x134e560, 0xc04571f0e0, 0x134b3e0, 0xc05d96e8a0, 0x7f2fa9641440, 0xc06c760740, 0xc013dadf60, 0x1, 0x1, 0x134b3e0, ...)
/go/src/github.com/influxdata/influxdb/query/select.go:154 +0x1f4 fp=0xc0347d28f0 sp=0xc0347d2760 pc=0x8ddae4
github.com/influxdata/influxdb/query.buildFieldIterator(0x134e560, 0xc04571f0e0, 0x134b3e0, 0xc05d96e8a0, 0x7f2fa9641440, 0xc06c760740, 0xc013dadf60, 0x1, 0x1, 0x0, ...)
/go/src/github.com/influxdata/influxdb/query/select.go:851 +0x44b fp=0xc0347d2ae8 sp=0xc0347d28f0 pc=0x8e475b
github.com/influxdata/influxdb/query.buildCursor(0x134e560, 0xc04571f0e0, 0xc0201f8b00, 0x7f2fa9641440, 0xc06c760740, 0x0, 0x0, 0x0, 0x0, 0x0, ...)
/go/src/github.com/influxdata/influxdb/query/select.go:736 +0xc7c fp=0xc0347d2f78 sp=0xc0347d2ae8 pc=0x8e2b3c
github.com/influxdata/influxdb/query.(*subqueryBuilder).buildVarRefIterator(0xc053329260, 0x134e560, 0xc04571f0e0, 0xc0533291e0, 0x134b720, 0xc0533291e0, 0x0, 0x0, 0x0, 0x0, ...)
/go/src/github.com/influxdata/influxdb/query/subquery.go:110 +0x1fe fp=0xc0347d33f0 sp=0xc0347d2f78 pc=0x8eac9e
github.com/influxdata/influxdb/query.(*exprIteratorBuilder).buildVarRefIterator.func1(0xc0347d3730, 0x134e560, 0xc04571f0e0, 0xc0347d36b8, 0xc0533291e0, 0x1, 0xc021431200)
/go/src/github.com/influxdata/influxdb/query/select.go:185 +0x32f fp=0xc0347d3580 sp=0xc0347d33f0 pc=0x8f30af
github.com/influxdata/influxdb/query.(*exprIteratorBuilder).buildVarRefIterator(0xc0347d3730, 0x134e560, 0xc04571f0e0, 0xc0533291e0, 0xc00a44dda0, 0xc00a47d770, 0xc00a62c390, 0xc00a47cf00)
/go/src/github.com/influxdata/influxdb/query/select.go:194 +0xc8 fp=0xc0347d36e0 sp=0xc0347d3580 pc=0x8ddc98
github.com/influxdata/influxdb/query.buildExprIterator(0x134e560, 0xc04571f0e0, 0x134b720, 0xc0533291e0, 0x7f2fa9641440, 0xc06c760740, 0xc0436f8f20, 0x1, 0x1, 0x134b720, ...)
/go/src/github.com/influxdata/influxdb/query/select.go:152 +0x27d fp=0xc0347d3870 sp=0xc0347d36e0 pc=0x8ddb6d
github.com/influxdata/influxdb/query.(*exprIteratorBuilder).callIterator.func1(0xc0347d4e98, 0x134e560, 0xc04571f0e0, 0xc0347d3cf8, 0xc0347d3cb0, 0xc04571f200, 0x40, 0x60)
/go/src/github.com/influxdata/influxdb/query/select.go:590 +0x3ca fp=0xc0347d3b58 sp=0xc0347d3870 pc=0x8f45da
github.com/influxdata/influxdb/query.(*exprIteratorBuilder).callIterator(0xc02e0fce98, 0x134e560, 0xc04571f0e0, 0xc04571f200, 0x134b3e0, 0xc04571f200, 0x0, 0x0, 0x0, 0x0, ...)
/go/src/github.com/influxdata/influxdb/query/select.go:605 +0xd5 fp=0xc0347d3cd8 sp=0xc0347d3b58 pc=0x8e1cf5
github.com/influxdata/influxdb/query.(*exprIteratorBuilder).buildCallIterator.func1(0xc04571f200, 0x134e560, 0xc04571f0e0, 0xc02e0fce98, 0xc02e0fc378, 0x0, 0xc03648a700, 0x38, 0x7f30b23ddd80)
/go/src/github.com/influxdata/influxdb/query/select.go:513 +0xd0 fp=0xc0347d3f80 sp=0xc0347d3cd8 pc=0x8f3340
github.com/influxdata/influxdb/query.(*exprIteratorBuilder).buildCallIterator(0xc0347d4e98, 0x134e560, 0xc04571f0e0, 0xc04571f200, 0x203014, 0x203014, 0xc00aa60010, 0x8)
/go/src/github.com/influxdata/influxdb/query/select.go:557 +0xd41 fp=0xc0347d4e48 sp=0xc0347d3f80 pc=0x8deb51
github.com/influxdata/influxdb/query.buildExprIterator(0x134e560, 0xc04571f0e0, 0x134b3e0, 0xc04571f200, 0x7f2fa9641440, 0xc06c760740, 0xc013dadee0, 0x1, 0x1, 0x134b3e0, ...)
/go/src/github.com/influxdata/influxdb/query/select.go:154 +0x1f4 fp=0xc0347d4fd8 sp=0xc0347d4e48 pc=0x8ddae4
github.com/influxdata/influxdb/query.buildFieldIterator(0x134e560, 0xc04571f0e0, 0x134b3e0, 0xc04571f200, 0x7f2fa9641440, 0xc06c760740, 0xc013dadee0, 0x1, 0x1, 0x0, ...)
/go/src/github.com/influxdata/influxdb/query/select.go:851 +0x44b fp=0xc0347d51d0 sp=0xc0347d4fd8 pc=0x8e475b
github.com/influxdata/influxdb/query.buildCursor(0x134e560, 0xc04571f0e0, 0xc0201f8900, 0x7f2fa9641440, 0xc06c760740, 0x0, 0x0, 0x0, 0x0, 0x0, ...)
/go/src/github.com/influxdata/influxdb/query/select.go:736 +0xc7c fp=0xc0347d5660 sp=0xc0347d51d0 pc=0x8e2b3c
github.com/influxdata/influxdb/query.(*preparedStatement).Select(0xc02c0ea000, 0x134e560, 0xc04571f0e0, 0x1350220, 0x1d1fed8, 0x0, 0x0)
/go/src/github.com/influxdata/influxdb/query/select.go:119 +0x180 fp=0xc0347d58e0 sp=0xc0347d5660 pc=0x8dd740
github.com/influxdata/influxdb/query.Select(0x134e720, 0xc043ac00c0, 0xc0201f8300, 0x1338480, 0xc0003626c0, 0x1350220, 0x1d1fed8, 0x0, 0x0, 0x0, ...)
/go/src/github.com/influxdata/influxdb/query/select.go:96 +0xfe fp=0xc0347d5968 sp=0xc0347d58e0 pc=0x8dd52e
github.com/influxdata/influxdb/coordinator.(*StatementExecutor).createIterators(0xc000827880, 0x134e720, 0xc043ac00c0, 0xc0201f8300, 0xc051ad918e, 0x8, 0x0, 0x0, 0x1350220, 0x1d1fed8, ...)
/go/src/github.com/influxdata/influxdb/coordinator/statement_executor.go:635 +0x113 fp=0xc0347d5a20 sp=0xc0347d5968 pc=0xa70d53
github.com/influxdata/influxdb/coordinator.(*StatementExecutor).executeSelectStatement(0xc000827880, 0xc0201f8300, 0xc043ac00c0, 0x0, 0x0)
/go/src/github.com/influxdata/influxdb/coordinator/statement_executor.go:540 +0x99 fp=0xc0347d5bc8 sp=0xc0347d5a20 pc=0xa70109
github.com/influxdata/influxdb/coordinator.(*StatementExecutor).ExecuteStatement(0xc000827880, 0x134f220, 0xc0201f8300, 0xc043ac00c0, 0x1, 0x1)
/go/src/github.com/influxdata/influxdb/coordinator/statement_executor.go:62 +0x2400 fp=0xc0347d5ce8 sp=0xc0347d5bc8 pc=0xa6db80
github.com/influxdata/influxdb/query.(*Executor).executeQuery(0xc000369500, 0xc03f5c34c0, 0xc051ad918e, 0x8, 0x0, 0x0, 0x1350220, 0x1d1fed8, 0x2710, 0x1, ...)
/go/src/github.com/influxdata/influxdb/query/executor.go:334 +0x355 fp=0xc0347d5f68 sp=0xc0347d5ce8 pc=0x883f05
runtime.goexit()
/usr/local/go/src/runtime/asm_amd64.s:1333 +0x1 fp=0xc0347d5f70 sp=0xc0347d5f68 pc=0x45d971
created by github.com/influxdata/influxdb/query.(*Executor).ExecuteQuery
/go/src/github.com/influxdata/influxdb/query/executor.go:236 +0xc9
goroutine 1 [chan receive, 11414 minutes]:
main.(*Main).Run(0xc000075f58, 0xc00003a0a0, 0x2, 0x2, 0xc000075f68, 0xf223d6)
/go/src/github.com/influxdata/influxdb/cmd/influxd/main.go:90 +0x2d1
main.main()
/go/src/github.com/influxdata/influxdb/cmd/influxd/main.go:45 +0x12f
goroutine 5 [syscall, 11414 minutes]:
os/signal.signal_recv(0x0)
/usr/local/go/src/runtime/sigqueue.go:139 +0x9c
os/signal.loop()
/usr/local/go/src/os/signal/signal_unix.go:23 +0x22
created by os/signal.init.0
/usr/local/go/src/os/signal/signal_unix.go:29 +0x41
goroutine 9 [IO wait]:
internal/poll.runtime_pollWait(0x7f30b2381f00, 0x72, 0x0)
/usr/local/go/src/runtime/netpoll.go:173 +0x66
internal/poll.(*pollDesc).wait(0xc000182b98, 0x72, 0xc005d0a500, 0x0, 0x0)
/usr/local/go/src/internal/poll/fd_poll_runtime.go:85 +0x9a
internal/poll.(*pollDesc).waitRead(0xc000182b98, 0xffffffffffffff00, 0x0, 0x0)
/usr/local/go/src/internal/poll/fd_poll_runtime.go:90 +0x3d
internal/poll.(*FD).Accept(0xc000182b80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0)
/usr/local/go/src/internal/poll/fd_unix.go:384 +0x1a0
net.(*netFD).accept(0xc000182b80, 0xc071a7b3b8, 0x0, 0x0)
/usr/local/go/src/net/fd_unix.go:238 +0x42
net.(*TCPListener).accept(0xc000188578, 0xc00a10cee8, 0xc00a10cef0, 0x18)
/usr/local/go/src/net/tcpsock_posix.go:139 +0x2e
net.(*TCPListener).Accept(0xc000188578, 0x12345b8, 0xc000896480, 0x13590c0, 0xc071a7b3b8)
/usr/local/go/src/net/tcpsock.go:260 +0x47
github.com/influxdata/influxdb/tcp.(*Mux).Serve(0xc000896480, 0x134c960, 0xc000188578, 0xc000188578, 0x0)
/go/src/github.com/influxdata/influxdb/tcp/mux.go:75 +0x92
created by github.com/influxdata/influxdb/cmd/influxd/run.(*Server).Open
/go/src/github.com/influxdata/influxdb/cmd/influxd/run/server.go:386 +0x28b
goroutine 10 [select, 11414 minutes]:
github.com/influxdata/influxdb/vendor/github.com/influxdata/flux/control.(*Controller).run(0xc000860840)
/go/src/github.com/influxdata/influxdb/vendor/github.com/influxdata/flux/control/controller.go:232 +0x1ae
created by github.com/influxdata/influxdb/vendor/github.com/influxdata/flux/control.New
/go/src/github.com/influxdata/influxdb/vendor/github.com/influxdata/flux/control/controller.go:104 +0x2fe
goroutine 128 [select]:
github.com/influxdata/influxdb/tsdb.(*Store).monitorShards(0xc000158c00)
/go/src/github.com/influxdata/influxdb/tsdb/store.go:1814 +0x16f
github.com/influxdata/influxdb/tsdb.(*Store).Open.func1(0xc000158c00)
/go/src/github.com/influxdata/influxdb/tsdb/store.go:199 +0x42
created by github.com/influxdata/influxdb/tsdb.(*Store).Open
/go/src/github.com/influxdata/influxdb/tsdb/store.go:197 +0x2e7
goroutine 129 [select]:
github.com/influxdata/influxdb/services/subscriber.(*Service).run(0xc000860780)
/go/src/github.com/influxdata/influxdb/services/subscriber/service.go:239 +0x29c
github.com/influxdata/influxdb/services/subscriber.(*Service).Open.func1(0xc000860780)
/go/src/github.com/influxdata/influxdb/services/subscriber/service.go:98 +0x57
created by github.com/influxdata/influxdb/services/subscriber.(*Service).Open
/go/src/github.com/influxdata/influxdb/services/subscriber/service.go:96 +0x160
goroutine 130 [select, 374 minutes]:
github.com/influxdata/influxdb/services/subscriber.(*Service).waitForMetaUpdates(0xc000860780)
/go/src/github.com/influxdata/influxdb/services/subscriber/service.go:165 +0xcf
github.com/influxdata/influxdb/services/subscriber.(*Service).Open.func2(0xc000860780)
/go/src/github.com/influxdata/influxdb/services/subscriber/service.go:102 +0x57
created by github.com/influxdata/influxdb/services/subscriber.(*Service).Open
/go/src/github.com/influxdata/influxdb/services/subscriber/service.go:100 +0x182
goroutine 131 [select, 1 minutes]:
github.com/influxdata/influxdb/monitor.(*Monitor).storeStatistics(0xc0008920f0)
/go/src/github.com/influxdata/influxdb/monitor/service.go:434 +0xb53
created by github.com/influxdata/influxdb/monitor.(*Monitor).Open
/go/src/github.com/influxdata/influxdb/monitor/service.go:126 +0x333
goroutine 132 [select, 3 minutes]:
github.com/influxdata/influxdb/services/precreator.(*Service).runPrecreation(0xc000500080)
/go/src/github.com/influxdata/influxdb/services/precreator/service.go:76 +0x10a
created by github.com/influxdata/influxdb/services/precreator.(*Service).Open
/go/src/github.com/influxdata/influxdb/services/precreator/service.go:54 +0x22b
goroutine 133 [select, 11414 minutes]:
github.com/influxdata/influxdb/tcp.(*listener).Accept(0xc000369ef0, 0x0, 0x0, 0x0, 0x0)
/go/src/github.com/influxdata/influxdb/tcp/mux.go:236 +0x10b
github.com/influxdata/influxdb/services/snapshotter.(*Service).serve(0xc00042d8b0)
/go/src/github.com/influxdata/influxdb/services/snapshotter/service.go:94 +0x7b
created by github.com/influxdata/influxdb/services/snapshotter.(*Service).Open
/go/src/github.com/influxdata/influxdb/services/snapshotter/service.go:68 +0x92
goroutine 134 [select]:
github.com/influxdata/influxdb/services/continuous_querier.(*Service).backgroundLoop(0xc000138e10)
/go/src/github.com/influxdata/influxdb/services/continuous_querier/service.go:215 +0x187
created by github.com/influxdata/influxdb/services/continuous_querier.(*Service).Open
/go/src/github.com/influxdata/influxdb/services/continuous_querier/service.go:133 +0x167
goroutine 135 [IO wait]:
internal/poll.runtime_pollWait(0x7f30b2381d60, 0x72, 0x0)
/usr/local/go/src/runtime/netpoll.go:173 +0x66
internal/poll.(*pollDesc).wait(0xc017164718, 0x72, 0xc00232d300, 0x0, 0x0)
/usr/local/go/src/internal/poll/fd_poll_runtime.go:85 +0x9a
internal/poll.(*pollDesc).waitRead(0xc017164718, 0xffffffffffffff00, 0x0, 0x0)
/usr/local/go/src/internal/poll/fd_poll_runtime.go:90 +0x3d
internal/poll.(*FD).Accept(0xc017164700, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0)
/usr/local/go/src/internal/poll/fd_unix.go:384 +0x1a0
net.(*netFD).accept(0xc017164700, 0x60e932a9, 0xedad2ebdcc70d45a, 0x44d418)
/usr/local/go/src/net/fd_unix.go:238 +0x42
net.(*TCPListener).accept(0xc00d282068, 0x6321720b, 0xc022f08df0, 0x48d606)
/usr/local/go/src/net/tcpsock_posix.go:139 +0x2e
net.(*TCPListener).Accept(0xc00d282068, 0xc022f08e40, 0x18, 0xc01b4c3500, 0x712fa5)
/usr/local/go/src/net/tcpsock.go:260 +0x47
net/http.(*Server).Serve(0xc029634000, 0x134c960, 0xc00d282068, 0x0, 0x0)
/usr/local/go/src/net/http/server.go:2826 +0x22f
net/http.Serve(0x134c960, 0xc00d282068, 0x13399e0, 0xc00013b000, 0x0, 0x0)
/usr/local/go/src/net/http/server.go:2423 +0x6e
github.com/influxdata/influxdb/services/httpd.(*Service).serve(0xc0002572c0, 0x134c960, 0xc00d282068)
/go/src/github.com/influxdata/influxdb/services/httpd/service.go:249 +0x62
github.com/influxdata/influxdb/services/httpd.(*Service).serveTCP(0xc0002572c0)
/go/src/github.com/influxdata/influxdb/services/httpd/service.go:237 +0x3c
created by github.com/influxdata/influxdb/services/httpd.(*Service).Open
/go/src/github.com/influxdata/influxdb/services/httpd/service.go:186 +0x6aa
goroutine 136 [select, 14 minutes]:
github.com/influxdata/influxdb/services/retention.(*Service).run(0xc00042d950)
/go/src/github.com/influxdata/influxdb/services/retention/service.go:78 +0x10f9
github.com/influxdata/influxdb/services/retention.(*Service).Open.func1(0xc00042d950)
/go/src/github.com/influxdata/influxdb/services/retention/service.go:51 +0x57
created by github.com/influxdata/influxdb/services/retention.(*Service).Open
/go/src/github.com/influxdata/influxdb/services/retention/service.go:51 +0x1ae
goroutine 137 [select, 11414 minutes]:
github.com/influxdata/influxdb/cmd/influxd/run.(*Command).monitorServerErrors(0xc0001011e0)
/go/src/github.com/influxdata/influxdb/cmd/influxd/run/command.go:174 +0x178
created by github.com/influxdata/influxdb/cmd/influxd/run.(*Command).Run
/go/src/github.com/influxdata/influxdb/cmd/influxd/run/command.go:155 +0xefd
goroutine 603149090 [select]:
github.com/influxdata/influxdb/tsdb/engine/tsm1.(*Engine).compact(0xc04026d7a0, 0xc00f97c5a0)
/go/src/github.com/influxdata/influxdb/tsdb/engine/tsm1/engine.go:1964 +0x25b
github.com/influxdata/influxdb/tsdb/engine/tsm1.(*Engine).enableLevelCompactions.func1(0xc00f97c5a0, 0xc04026d7a0)
/go/src/github.com/influxdata/influxdb/tsdb/engine/tsm1/engine.go:420 +0x5b
created by github.com/influxdata/influxdb/tsdb/engine/tsm1.(*Engine).enableLevelCompactions
/go/src/github.com/influxdata/influxdb/tsdb/engine/tsm1/engine.go:420 +0x132
goroutine 606350672 [select]:
github.com/influxdata/influxdb/services/httpd.(*Handler).serveQuery.func2(0xc038d231a0, 0xc0191f5f80, 0xc038d23140)
/go/src/github.com/influxdata/influxdb/services/httpd/handler.go:544 +0xa0
created by github.com/influxdata/influxdb/services/httpd.(*Handler).serveQuery
/go/src/github.com/influxdata/influxdb/services/httpd/handler.go:541 +0x1391
goroutine 579519814 [select]:
github.com/influxdata/influxdb/tsdb/engine/tsm1.(*Engine).compact(0xc02852db00, 0xc013ef14d0)
/go/src/github.com/influxdata/influxdb/tsdb/engine/tsm1/engine.go:1964 +0x25b
github.com/influxdata/influxdb/tsdb/engine/tsm1.(*Engine).enableLevelCompactions.func1(0xc013ef14d0, 0xc02852db00)
/go/src/github.com/influxdata/influxdb/tsdb/engine/tsm1/engine.go:420 +0x5b
created by github.com/influxdata/influxdb/tsdb/engine/tsm1.(*Engine).enableLevelCompactions
/go/src/github.com/influxdata/influxdb/tsdb/engine/tsm1/engine.go:420 +0x132
goroutine 579519813 [select]:
github.com/influxdata/influxdb/tsdb/engine/tsm1.(*Engine).compactCache(0xc02852db00)
/go/src/github.com/influxdata/influxdb/tsdb/engine/tsm1/engine.go:1917 +0x11b
github.com/influxdata/influxdb/tsdb/engine/tsm1.(*Engine).enableSnapshotCompactions.func1(0xc013ef14c0, 0xc02852db00)
/go/src/github.com/influxdata/influxdb/tsdb/engine/tsm1/engine.go:499 +0x51
created by github.com/influxdata/influxdb/tsdb/engine/tsm1.(*Engine).enableSnapshotCompactions
/go/src/github.com/influxdata/influxdb/tsdb/engine/tsm1/engine.go:499 +0x124
goroutine 402140805 [select]:
github.com/influxdata/influxdb/tsdb/engine/tsm1.(*Engine).compact(0xc03278d320, 0xc0129cc9e0)
/go/src/github.com/influxdata/influxdb/tsdb/engine/tsm1/engine.go:1964 +0x25b
github.com/influxdata/influxdb/tsdb/engine/tsm1.(*Engine).enableLevelCompactions.func1(0xc0129cc9e0, 0xc03278d320)
/go/src/github.com/influxdata/influxdb/tsdb/engine/tsm1/engine.go:420 +0x5b
created by github.com/influxdata/influxdb/tsdb/engine/tsm1.(*Engine).enableLevelCompactions
/go/src/github.com/influxdata/influxdb/tsdb/engine/tsm1/engine.go:420 +0x132
goroutine 606350671 [IO wait]:
internal/poll.runtime_pollWait(0x7f30842990a0, 0x72, 0xc0641ad658)
/usr/local/go/src/runtime/netpoll.go:173 +0x66
internal/poll.(*pollDesc).wait(0xc0a9ef6298, 0x72, 0xffffffffffffff00, 0x133d120, 0x1c9d7d8)
/usr/local/go/src/internal/poll/fd_poll_runtime.go:85 +0x9a
internal/poll.(*pollDesc).waitRead(0xc0a9ef6298, 0xc034461a00, 0x1, 0x1)
/usr/local/go/src/internal/poll/fd_poll_runtime.go:90 +0x3d
internal/poll.(*FD).Read(0xc0a9ef6280, 0xc034461a51, 0x1, 0x1, 0x0, 0x0, 0x0)
/usr/local/go/src/internal/poll/fd_unix.go:169 +0x179
net.(*netFD).Read(0xc0a9ef6280, 0xc034461a51, 0x1, 0x1, 0xc0261bbac0, 0x1237b00, 0x1641ad788)
/usr/local/go/src/net/fd_unix.go:202 +0x4f
net.(*conn).Read(0xc0171e4098, 0xc034461a51, 0x1, 0x1, 0x0, 0x0, 0x0)
/usr/local/go/src/net/net.go:177 +0x68
net/http.(*connReader).backgroundRead(0xc034461a40)
/usr/local/go/src/net/http/server.go:676 +0x5a
created by net/http.(*connReader).startBackgroundRead
/usr/local/go/src/net/http/server.go:672 +0xd2
goroutine 402140583 [chan receive]:
github.com/influxdata/influxdb/tsdb/engine/tsm1.(*Compactor).WriteSnapshot(0xc02c3d0120, 0xc04d237550, 0xc0338eac10, 0xc04026d7a0, 0x35, 0xc0338ea760, 0x448396)
/go/src/github.com/influxdata/influxdb/tsdb/engine/tsm1/compact.go:856 +0x39c
github.com/influxdata/influxdb/tsdb/engine/tsm1.(*Engine).writeSnapshotAndCommit(0xc04026d7a0, 0xc036b6a1e0, 0xc013dad550, 0x1, 0x1, 0xc04d237550, 0x0, 0x0)
/go/src/github.com/influxdata/influxdb/tsdb/engine/tsm1/engine.go:1874 +0x9c
github.com/influxdata/influxdb/tsdb/engine/tsm1.(*Engine).WriteSnapshot(0xc04026d7a0, 0x0, 0x0)
/go/src/github.com/influxdata/influxdb/tsdb/engine/tsm1/engine.go:1844 +0x449
github.com/influxdata/influxdb/tsdb/engine/tsm1.(*Engine).compactCache(0xc04026d7a0)
/go/src/github.com/influxdata/influxdb/tsdb/engine/tsm1/engine.go:1926 +0x317
github.com/influxdata/influxdb/tsdb/engine/tsm1.(*Engine).enableSnapshotCompactions.func1(0xc02b373fd0, 0xc04026d7a0)
/go/src/github.com/influxdata/influxdb/tsdb/engine/tsm1/engine.go:499 +0x51
created by github.com/influxdata/influxdb/tsdb/engine/tsm1.(*Engine).enableSnapshotCompactions
/go/src/github.com/influxdata/influxdb/tsdb/engine/tsm1/engine.go:499 +0x124
goroutine 606350674 [select]:
github.com/influxdata/influxdb/query.(*TaskManager).waitForQuery(0xc00042d810, 0x1834d, 0xc038d232c0, 0xc038d23140, 0xc038d23320)
/go/src/github.com/influxdata/influxdb/query/task_manager.go:289 +0xf3
created by github.com/influxdata/influxdb/query.(*TaskManager).AttachQuery
/go/src/github.com/influxdata/influxdb/query/task_manager.go:196 +0x309
goroutine 402140226 [select]:
github.com/influxdata/influxdb/tsdb/engine/tsm1.(*Engine).compactCache(0xc0323b1560)
/go/src/github.com/influxdata/influxdb/tsdb/engine/tsm1/engine.go:1917 +0x11b
github.com/influxdata/influxdb/tsdb/engine/tsm1.(*Engine).enableSnapshotCompactions.func1(0xc02bbb2620, 0xc0323b1560)
/go/src/github.com/influxdata/influxdb/tsdb/engine/tsm1/engine.go:499 +0x51
created by github.com/influxdata/influxdb/tsdb/engine/tsm1.(*Engine).enableSnapshotCompactions
/go/src/github.com/influxdata/influxdb/tsdb/engine/tsm1/engine.go:499 +0x124
goroutine 546500162 [select]:
github.com/influxdata/influxdb/tsdb/engine/tsm1.(*Engine).compact(0xc0323b1560, 0xc0730acd90)
/go/src/github.com/influxdata/influxdb/tsdb/engine/tsm1/engine.go:1964 +0x25b
github.com/influxdata/influxdb/tsdb/engine/tsm1.(*Engine).enableLevelCompactions.func1(0xc0730acd90, 0xc0323b1560)
/go/src/github.com/influxdata/influxdb/tsdb/engine/tsm1/engine.go:420 +0x5b
created by github.com/influxdata/influxdb/tsdb/engine/tsm1.(*Engine).enableLevelCompactions
/go/src/github.com/influxdata/influxdb/tsdb/engine/tsm1/engine.go:420 +0x132
goroutine 402140804 [select]:
github.com/influxdata/influxdb/tsdb/engine/tsm1.(*Engine).compactCache(0xc03278d320)
/go/src/github.com/influxdata/influxdb/tsdb/engine/tsm1/engine.go:1917 +0x11b
github.com/influxdata/influxdb/tsdb/engine/tsm1.(*Engine).enableSnapshotCompactions.func1(0xc0129cc9d0, 0xc03278d320)
/go/src/github.com/influxdata/influxdb/tsdb/engine/tsm1/engine.go:499 +0x51
created by github.com/influxdata/influxdb/tsdb/engine/tsm1.(*Engine).enableSnapshotCompactions
/go/src/github.com/influxdata/influxdb/tsdb/engine/tsm1/engine.go:499 +0x124
goroutine 606350675 [select]:
github.com/influxdata/influxdb/query.(*ExecutionContext).watch.func1(0xc043ac00c0)
/go/src/github.com/influxdata/influxdb/query/execution_context.go:47 +0x135
created by github.com/influxdata/influxdb/query.(*ExecutionContext).watch
/go/src/github.com/influxdata/influxdb/query/execution_context.go:39 +0x90
goroutine 606350670 [chan receive]:
github.com/influxdata/influxdb/services/httpd.(*Handler).serveQuery(0xc00013b000, 0x7f2fa9686000, 0xc03f5c3180, 0xc0201f8200, 0x0, 0x0)
/go/src/github.com/influxdata/influxdb/services/httpd/handler.go:580 +0x7e1
github.com/influxdata/influxdb/services/httpd.(*Handler).serveQuery-fm(0x7f2fa9686000, 0xc03f5c3180, 0xc0201f8200, 0x0, 0x0)
/go/src/github.com/influxdata/influxdb/services/httpd/handler.go:162 +0x5c
github.com/influxdata/influxdb/services/httpd.authenticate.func1(0x7f2fa9686000, 0xc03f5c3180, 0xc0201f8200)
/go/src/github.com/influxdata/influxdb/services/httpd/handler.go:1495 +0x788
net/http.HandlerFunc.ServeHTTP(0xc000362820, 0x7f2fa9686000, 0xc03f5c3180, 0xc0201f8200)
/usr/local/go/src/net/http/server.go:1964 +0x44
github.com/influxdata/influxdb/services/httpd.(*Handler).responseWriter.func1(0x13487e0, 0xc01dfa2370, 0xc0201f8200)
/go/src/github.com/influxdata/influxdb/services/httpd/handler.go:1675 +0xab
net/http.HandlerFunc.ServeHTTP(0xc000362840, 0x13487e0, 0xc01dfa2370, 0xc0201f8200)
/usr/local/go/src/net/http/server.go:1964 +0x44
github.com/influxdata/influxdb/services/httpd.gzipFilter.func1(0x1348860, 0xc03f5c3160, 0xc0201f8200)
/go/src/github.com/influxdata/influxdb/services/httpd/gzip.go:39 +0x204
net/http.HandlerFunc.ServeHTTP(0xc000362860, 0x1348860, 0xc03f5c3160, 0xc0201f8200)
/usr/local/go/src/net/http/server.go:1964 +0x44
github.com/influxdata/influxdb/services/httpd.cors.func1(0x1348860, 0xc03f5c3160, 0xc0201f8200)
/go/src/github.com/influxdata/influxdb/services/httpd/handler.go:1617 +0xf3
net/http.HandlerFunc.ServeHTTP(0xc000362880, 0x1348860, 0xc03f5c3160, 0xc0201f8200)
/usr/local/go/src/net/http/server.go:1964 +0x44
github.com/influxdata/influxdb/services/httpd.requestID.func1(0x1348860, 0xc03f5c3160, 0xc0201f8200)
/go/src/github.com/influxdata/influxdb/services/httpd/handler.go:1648 +0x179
net/http.HandlerFunc.ServeHTTP(0xc0003628a0, 0x1348860, 0xc03f5c3160, 0xc0201f8200)
/usr/local/go/src/net/http/server.go:1964 +0x44
github.com/influxdata/influxdb/services/httpd.(*Handler).recovery.func1(0x134cbe0, 0xc000a4c0e0, 0xc0201f8200)
/go/src/github.com/influxdata/influxdb/services/httpd/handler.go:1712 +0x147
net/http.HandlerFunc.ServeHTTP(0xc0003628c0, 0x134cbe0, 0xc000a4c0e0, 0xc0201f8200)
/usr/local/go/src/net/http/server.go:1964 +0x44
github.com/influxdata/influxdb/vendor/github.com/bmizerany/pat.(*PatternServeMux).ServeHTTP(0xc000362720, 0x134cbe0, 0xc000a4c0e0, 0xc0201f8200)
/go/src/github.com/influxdata/influxdb/vendor/github.com/bmizerany/pat/mux.go:117 +0x155
github.com/influxdata/influxdb/services/httpd.(*Handler).ServeHTTP(0xc00013b000, 0x134cbe0, 0xc000a4c0e0, 0xc0201f8200)
/go/src/github.com/influxdata/influxdb/services/httpd/handler.go:380 +0x247
net/http.serverHandler.ServeHTTP(0xc029634000, 0x134cbe0, 0xc000a4c0e0, 0xc0201f8200)
/usr/local/go/src/net/http/server.go:2741 +0xab
net/http.(*conn).serve(0xc03f80a0a0, 0x134e4a0, 0xc06c760600)
/usr/local/go/src/net/http/server.go:1847 +0x646
created by net/http.(*Server).Serve
/usr/local/go/src/net/http/server.go:2851 +0x2f5
goroutine 606350525 [runnable]:
github.com/influxdata/influxdb/pkg/bytesutil.(*byteSlices).Swap(0xc064c8ba40, 0x1f691, 0x1fa76)
:1 +0x78
sort.doPivot(0x134cd20, 0xc064c8ba40, 0x1f4d5, 0x1fd31, 0x14, 0x1fd32)
/usr/local/go/src/sort/sort.go:129 +0x1ec
sort.quickSort(0x134cd20, 0xc064c8ba40, 0x1f4d5, 0x1fd31, 0x1d)
/usr/local/go/src/sort/sort.go:190 +0x9a
sort.quickSort(0x134cd20, 0xc064c8ba40, 0x1e723, 0x1ff49, 0x1e)
/usr/local/go/src/sort/sort.go:197 +0x133
sort.quickSort(0x134cd20, 0xc064c8ba40, 0x1b362, 0x1ff49, 0x1f)
/usr/local/go/src/sort/sort.go:197 +0x133
sort.quickSort(0x134cd20, 0xc064c8ba40, 0x1b362, 0x2a7de, 0x20)
/usr/local/go/src/sort/sort.go:194 +0xf8
sort.Sort(0x134cd20, 0xc064c8ba40)
/usr/local/go/src/sort/sort.go:218 +0x79
github.com/influxdata/influxdb/pkg/bytesutil.Sort(0xc0af4fa000, 0x2a7de, 0x33155)
/go/src/github.com/influxdata/influxdb/pkg/bytesutil/bytesutil.go:11 +0x6d
github.com/influxdata/influxdb/tsdb/engine/tsm1.(*ring).keys(0xc0387e9320, 0xc01c8ccb01, 0xc012c8e720, 0x0, 0x0)
/go/src/github.com/influxdata/influxdb/tsdb/engine/tsm1/ring.go:127 +0x220
github.com/influxdata/influxdb/tsdb/engine/tsm1.(*Cache).Keys(0xc04d237550, 0xc01c8ccba0, 0xc01c8ccb98, 0x4587d0)
/go/src/github.com/influxdata/influxdb/tsdb/engine/tsm1/cache.go:504 +0x78
github.com/influxdata/influxdb/tsdb/engine/tsm1.NewCacheKeyIterator(0xc04d237550, 0x3e8, 0xc018dc3080, 0xc000c08500, 0x94e97b2ddb3d2)
/go/src/github.com/influxdata/influxdb/tsdb/engine/tsm1/compact.go:1875 +0x40
github.com/influxdata/influxdb/tsdb/engine/tsm1.(*Compactor).WriteSnapshot.func1(0xc018dc3080, 0xc02c3d0120, 0xc0026cf8e6, 0xc06c904240, 0xc04d237550)
/go/src/github.com/influxdata/influxdb/tsdb/engine/tsm1/compact.go:846 +0x56
created by github.com/influxdata/influxdb/tsdb/engine/tsm1.(*Compactor).WriteSnapshot
/go/src/github.com/influxdata/influxdb/tsdb/engine/tsm1/compact.go:845 +0x226
Contributor guide
Research direction
Start with the supplied stack trace and inspect tsdb/index/tsi1/cache.go, especially TagValueSeriesIDCache.checkEviction at line 176 and Put at line 138. Trace how the cache is reached from tsi1/index.go and determine the cause of the reported SIGSEGV. Done means the reported workload no longer produces a panic or segmentation violation.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- go
- Domain
- databases
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100