influxdata / influxdb

Scalable datastore for metrics, events, and real-time analytics
https://influxdata.com
Apache License 2.0
29.04k stars 3.56k forks source link

2.7.10 may have a bug about function limit() #25487

Open Zys97kobe opened 1 month ago

Zys97kobe commented 1 month ago

I can find 532 pieces of data image

but when i used limit(n:20, offset: 530) i got a panic :index out of range image

Zys97kobe commented 1 month ago

2.7.9 has no this bug image

Zys97kobe commented 1 month ago

This seems to be related to the association of a certain label of a certain piece of data, but the panic only appeared in 2.7.10WX20241024-155407@2x WX20241024-155646

philjb commented 1 month ago

@Zys97kobe - any chance you can provide the stack trace as text instead of a screenshot like you did above? It is difficult to read the image.

Zys97kobe commented 1 month ago

@philjb OK I posted the log text here Oct 24 15:51:50 sdwan-controller-perf-1 50d326f48352[2124]: ts=2024-10-24T07:51:50.155427Z lvl=info msg="Invalid column reader received from predecessor" log_id=0rqs9kZ0000 service=storage-reads source="@12:6-12:31: limit" error="mismatched column lengths: map[_field:string:684 _measurement:string:684 accountId:string:684 accountName:string:684 category:string:684 event:string:684 level:string:684 module:string:684 others:string:684 receivedCircle:string:684 siteId:string:684 siteName:string:684 sn:string:684 time:time:684 vrfId:string:683 vrfName:string:684]" Oct 24 15:51:50 sdwan-controller-perf-1 50d326f48352[2124]: ts=2024-10-24T07:51:50.155528Z lvl=info msg="Dispatcher panic" log_id=0rqs9kZ0000 service=storage-reads component=dispatcher error="panic: arrow/array: index out of range" stacktrace="goroutine 193799306 [running]:\nruntime/debug.Stack()\n\t/go/src/runtime/debug/stack.go:24 +0x5e\ngithub.com/influxdata/flux/execute.(poolDispatcher).recover(0xc0129cea80)\n\t/go/pkg/mod/github.com/influxdata/flux@v0.195.2/execute/recover.go:53 +0x1f3\npanic({0x7f36c009bc20?, 0x7f36c067c200?})\n\t/go/src/runtime/panic.go:914 +0x21f\ngithub.com/apache/arrow/go/v7/arrow/array.NewSliceData({0x7f36c06ce170, 0xc01c81a4e0}, 0x2a8, 0x2ac)\n\t/go/pkg/mod/github.com/apache/arrow/go/v7@v7.0.1/arrow/array/data.go:154 +0x2ed\ngithub.com/influxdata/flux/array.(String).Slice(0xc017f451d0, 0x7f36c06cd9f0?, 0xc017f451d0?)\n\t/go/pkg/mod/github.com/influxdata/flux@v0.195.2/array/array.go:146 +0xfb\ngithub.com/influxdata/flux/array.Slice({0x7f36c06cd9f0?, 0xc017f451d0}, 0x7f36bcb47879?, 0x7f36c009bda0?)\n\t/go/pkg/mod/github.com/influxdata/flux@v0.195.2/array/array.go:177 +0xae\ngithub.com/influxdata/flux/arrow.Slice(...)\n\t/go/pkg/mod/github.com/influxdata/flux@v0.195.2/arrow/utils.go:130\ngithub.com/influxdata/flux/stdlib/universe.(limitTransformation).processChunk(0x7f36c06db6c0?, {{{0x7f36c06db6c0, 0xc021611b80}, {0xc010f92600, 0x10, 0x10}, {0xc01da23600, 0x10, 0x10}}}, 0xc032883070, ...)\n\t/go/pkg/mod/github.com/influxdata/flux@v0.195.2/stdlib/universe/limit.go:195 +0x425\ngithub.com/influxdata/flux/stdlib/universe.(limitTransformation).Process(0x7f36bcb473c5?, {{{0x7f36c06db6c0, 0xc021611b80}, {0xc010f92600, 0x10, 0x10}, {0xc01da23600, 0x10, 0x10}}}, 0xc032883070, ...)\n\t/go/pkg/mod/github.com/influxdata/flux@v0.195.2/stdlib/universe/limit.go:133 +0xdf\ngithub.com/influxdata/flux/execute.(narrowStateTransformation[...]).ProcessMessage(0x7f36c06c4da0, {0x7f36c06b1af0, 0xc01c81a6c0?})\n\t/go/pkg/mod/github.com/influxdata/flux@v0.195.2/execute/narrow_state_transformation.go:51 +0x2aa\ngithub.com/influxdata/flux/execute.(transportTransformationAdapter).processChunk(...)\n\t/go/pkg/mod/github.com/influxdata/flux@v0.195.2/execute/transport.go:762\ngithub.com/influxdata/flux/execute.(transportTransformationAdapter).Process.func1({0x7f36c06d3990?, 0xc0276d05c0?})\n\t/go/pkg/mod/github.com/influxdata/flux@v0.195.2/execute/transport.go:749 +0x294\ngithub.com/influxdata/flux/execute.(consecutiveTransportTable).Do.func1({0x7f36c06d3990, 0xc0276d05c0})\n\t/go/pkg/mod/github.com/influxdata/flux@v0.195.2/execute/transport.go:572 +0x45f\ngithub.com/influxdata/flux/execute/table.(BufferedTable).Do(0x7f36c0362e20?, 0xc02affce40)\n\t/go/pkg/mod/github.com/influxdata/flux@v0.195.2/execute/table/buffered.go:69 +0x177\ngithub.com/influxdata/flux/execute.(consecutiveTransportTable).Do(0xc02affce10, 0xc0357ce900)\n\t/go/pkg/mod/github.com/influxdata/flux@v0.195.2/execute/transport.go:554 +0x76\ngithub.com/influxdata/flux/execute.(transportTransformationAdapter).Process(0xc030b214d0, {0xe9, 0x75, 0x87, 0xdf, 0xa7, 0x57, 0x51, 0xf6, 0xa3, ...}, ...)\n\t/go/pkg/mod/github.com/influxdata/flux@v0.195.2/execute/transport.go:746 +0x370\ngithub.com/influxdata/flux/execute.(transportTransformationAdapter).ProcessMessage(0xc030b214d0, {0x7f36c06b1b98?, 0xc0357ce860})\n\t/go/pkg/mod/github.com/influxdata/flux@v0.195.2/execute/transport.go:727 +0x131\ngithub.com/influxdata/flux/execute.(consecutiveTransport).processMessage(0xc01b08ac30, {0x7f36c06b1b98, 0xc0357ce860})\n\t/go/pkg/mod/github.com/influxdata/flux@v0.195.2/execute/transport.go:297 +0xbb\ngithub.com/influxdata/flux/execute.(consecutiveTransport).processMessages(0xc01b08ac30, {0x7f36c06af1f0?, 0xc013d7f220?}, 0xa)\n\t/go/pkg/mod/github.com/influxdata/flux@v0.195.2/execute/transport.go:251 +0xe5\ngithub.com/influxdata/flux/execute.(poolDispatcher).doWork(0xc0129cea80, {0x7f36c06af1f0, 0xc013d7f220})\n\t/go/pkg/mod/github.com/influxdata/flux@v0.195.2/execute/dispatcher.go:157 +0x18c\ngithub.com/influxdata/flux/execute.(poolDispatcher).run(0xc0129cea80, {0x7f36c06af1f0, 0xc013d7f220})\n\t/go/pkg/mod/github.com/influxdata/flux@v0.195.2/execute/dispatcher.go:135 +0x49\ngithub.com/influxdata/flux/execute.(poolDispatcher).Start.func1()\n\t/go/pkg/mod/github.com/influxdata/flux@v0.195.2/execute/dispatcher.go:75 +0x85\ncreated by github.com/influxdata/flux/execute.(poolDispatcher).Start in goroutine 4073\n\t/go/pkg/mod/github.com/influxdata/flux@v0.195.2/execute/dispatcher.go:71 +0x46\n"