influxdata / influxdata/influxdb

InfluxDB v2.4.0 Exception signal arrived during external code execution

Open
#23,834 0 comments 0 reactions 0 assignees View on GitHub
area/backup and restore area/flux
Dominant language
Rust
Stars
31.7k
Forks
3.7k
Avg merge
13h 37m
Merged PRs (30d)
8

Description

The server is importing old data (from the year before last to the present), writing new data, and querying data. The runtime is suddenly abnormal.

Actual behavior:
influxdata crash

Environment info:
InfluxDB version: 2.4
windows server 2022
Memory 32GB
SSD:150GB/200GB

config:
{
"http-bind-address": ":24387",
"engine-path": "D:/influxdb/engine",
"http-read-timeout": "30s",
"flux-log-enabled": "true",
"storage-cache-max-memory-size": 4294967296,
"log-level": "error",
"http-write-timeout": "60s"
}

__Logs:__
Exception 0xc00000fd 0x1 0xcd533fe8 0x2153847
PC=0x2153847
signal arrived during external code execution

runtime.cgocall(0x2034f80, 0xc02f6e98d0)
/go/src/runtime/cgocall.go:157 +0x4a fp=0xc02f6e98a8 sp=0xc02f6e9870 pc=0x404b2a
github.com/influxdata/flux/libflux/go/libflux._Cfunc_flux_analyze(0x2f5ee5e0, 0x300f21a0, 0xc04a466848)
_cgo_gotypes.go:110 +0x5b fp=0xc02f6e98d0 sp=0xc02f6e98a8 pc=0x98883b
github.com/influxdata/flux/libflux/go/libflux.AnalyzeWithOptions.func3(0x300f21a0?, 0x2?, 0x0?)
/go/pkg/mod/github.com/influxdata/flux@v0.179.0/libflux/go/libflux/analyze.go:140 +0x87 fp=0xc02f6e9918 sp=0xc02f6e98d0 pc=0x98b007
github.com/influxdata/flux/libflux/go/libflux.AnalyzeWithOptions(0xc04a466820, {{0x0?, 0x30?, 0x19dac34270?}})
/go/pkg/mod/github.com/influxdata/flux@v0.179.0/libflux/go/libflux/analyze.go:140 +0x15c fp=0xc02f6e9a08 sp=0xc02f6e9918 pc=0x98abdc
github.com/influxdata/flux/runtime.AnalyzePackage({0x72ca250?, 0xc04a6c9320?}, {0x72c4240?, 0xc04a466820})
/go/pkg/mod/github.com/influxdata/flux@v0.179.0/runtime/analyze_libflux.go:23 +0xb2 fp=0xc02f6e9a88 sp=0xc02f6e9a08 pc=0x999f52
github.com/influxdata/flux/runtime.(*runtime).Eval(0x8b58210, {0x72ca250, 0xc04a6c9320}, {0x72c4240?, 0xc04a466820?}, {0x72bb008, 0x8bbc008}, {0xc04a469320, 0x2, 0x2})
/go/pkg/mod/github.com/influxdata/flux@v0.179.0/runtime/runtime.go:102 +0x8b fp=0xc02f6e9b08 sp=0xc02f6e9a88 pc=0x99bf2b
github.com/influxdata/flux/lang.(*AstProgram).getSpec(0xc02b176af0, {0x72ca250, 0xc04a6c92f0}, {0x72a6df0?, 0x6896ac0?})
/go/pkg/mod/github.com/influxdata/flux@v0.179.0/lang/compiler.go:445 +0x224 fp=0xc02f6e9c78 sp=0xc02f6e9b08 pc=0x131c284
github.com/influxdata/flux/lang.(*AstProgram).Start(0xc02b176af0, {0x72ca250, 0xc04a6c9170}, {0x72cb0f8, 0xc02b176be0})
/go/pkg/mod/github.com/influxdata/flux@v0.179.0/lang/compiler.go:483 +0x1cf fp=0xc02f6e9e88 sp=0xc02f6e9c78 pc=0x131cb4f
github.com/influxdata/influxdb/v2/query/control.(*Controller).executeQuery(0xc02b8dff78?, 0xc02e3faea0)
/root/project/query/control/controller.go:488 +0x22d fp=0xc02f6e9f38 sp=0xc02f6e9e88 pc=0x1e6f10d
github.com/influxdata/influxdb/v2/query/control.(*Controller).processQueryQueue(0xc059bc9d40)
/root/project/query/control/controller.go:446 +0x2e fp=0xc02f6e9fa8 sp=0xc02f6e9f38 pc=0x1e6ee4e
github.com/influxdata/influxdb/v2/query/control.New.func1()
/root/project/query/control/controller.go:231 +0x5d fp=0xc02f6e9fe0 sp=0xc02f6e9fa8 pc=0x1e6d35d
runtime.goexit()
/go/src/runtime/asm_amd64.s:1571 +0x1 fp=0xc02f6e9fe8 sp=0xc02f6e9fe0 pc=0x46bdc1
created by github.com/influxdata/influxdb/v2/query/control.New
/root/project/query/control/controller.go:229 +0x9be

goroutine 1 [chan receive]:
github.com/influxdata/influxdb/v2/cmd/influxd/launcher.cmdRunE.func1()
/root/project/cmd/influxd/launcher/cmd.go:127 +0x317
github.com/influxdata/influxdb/v2/kit/cli.NewCommand.func1(0xc000045340?, {0x8bbc008?, 0x0?, 0x0?})
/root/project/kit/cli/viper.go:54 +0x1e
github.com/spf13/cobra.(*Command).execute(0xc000045340, {0xc000078230, 0x0, 0x0})
/go/pkg/mod/github.com/spf13/cobra@v1.0.0/command.go:842 +0x67c
github.com/spf13/cobra.(*Command).ExecuteC(0xc000045340)
/go/pkg/mod/github.com/spf13/cobra@v1.0.0/command.go:950 +0x39c
....

Contributor guide

Open the contributing guide

Research direction

Start with query/control/controller.go at executeQuery (line 488), processQueryQueue (line 446), and New (line 229), then inspect the Flux AnalyzeWithOptions call in libflux/go/libflux/analyze.go. Reproduce the reported import, write, and query workload on Windows Server with the provided configuration, and determine whether the external-code-execution crash can be isolated and prevented.

Written by the indexing model from the issue text.

Assessment

Tech stack
go
Domain
backend, databases
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.