bilibili / gengine

Other
1.95k stars 272 forks source link

Concurrent map NEEDED FOR GENGINE\ #61

Open xStarrrrrr opened 1 year ago

xStarrrrrr commented 1 year ago

I get the following panic message when using gengine. I figured out that this is beacuse I injected a map into dataCtx. I wonder if concurrent map will be supported soon in the future?

goroutine 171337 [running]: runtime.throw({0x8165867, 0x287269e}) /usr/local/go/src/runtime/panic.go:1198 +0x71 fp=0xc004b33980 sp=0xc004b33950 pc=0x2805bb1 runtime.mapassign(0x78b0f60, 0xc000024a70, 0x7) /usr/local/go/src/runtime/map.go:585 +0x4d6 fp=0xc004b33a00 sp=0xc004b33980 pc=0x27dea96 reflect.mapassign(0x7a21140, 0xc000024a70, 0x811c355, 0x81874c6) /usr/local/go/src/runtime/map.go:1328 +0x25 fp=0xc004b33a30 sp=0xc004b33a00 pc=0x28332c5 reflect.Value.SetMapIndex({0x7a21140, 0xc006f1bb90, 0xc005607cb0}, {0x78b0f60, 0xc006394fd0, 0x98}, {0x78b0f60, 0xc000024a70, 0x98}) /usr/local/go/src/reflect/value.go:2051 +0x228 fp=0xc004b33aa8 sp=0xc004b33a30 pc=0x286fca8 github.com/bilibili/gengine/context.(DataContext).SetMapVarValue(0xa, 0x78b0f60, {0xc002588c60, 0x11}, {0x0, 0x8107b3a}, {0xc005607cb0, 0xa}, 0x0, {0x78b0f60, ...}) /opt/tiger/compile_path/pkg/mod/github.com/bilibili/gengine@v1.5.6/context/data_context.go:482 +0x11bc fp=0xc004b33c38 sp=0xc004b33aa8 pc=0x728f65c github.com/bilibili/gengine/internal/base.(Assignment).Evaluate(0xc005918540, 0xc006c50960, 0x0) /opt/tiger/compile_path/pkg/mod/github.com/bilibili/gengine@v1.5.6/internal/base/assignment.go:122 +0xdf6 fp=0xc004b33e60 sp=0xc004b33c38 pc=0x7344636 github.com/bilibili/gengine/internal/base.(Statement).Evaluate(0x27dcfa7, 0x30, 0x7de6540) /opt/tiger/compile_path/pkg/mod/github.com/bilibili/gengine@v1.5.6/internal/base/statement.go:35 +0xd1 fp=0xc004b33e88 sp=0xc004b33e60 pc=0x734e891 github.com/bilibili/gengine/internal/base.(Statements).Evaluate(0xc0086328e0, 0xc005872c40, 0x0) /opt/tiger/compile_path/pkg/mod/github.com/bilibili/gengine@v1.5.6/internal/base/statements.go:15 +0x73 fp=0xc004b33ed8 sp=0xc004b33e88 pc=0x734ec13 github.com/bilibili/gengine/internal/base.(RuleContent).Execute(...) /opt/tiger/compile_path/pkg/mod/github.com/bilibili/gengine@v1.5.6/internal/base/rule_content.go:14 github.com/bilibili/gengine/internal/base.(RuleEntity).Execute(0xc0061dabd0, 0xc008a87280) /opt/tiger/compile_path/pkg/mod/github.com/bilibili/gengine@v1.5.6/internal/base/rule_entity.go:37 +0x46 fp=0xc004b33f28 sp=0xc004b33ed8 pc=0x734e746 github.com/bilibili/gengine/engine.(*Gengine).ExecuteMixModel.func1() /opt/tiger/compile_path/pkg/mod/github.com/bilibili/gengine@v1.5.6/engine/gengine.go:210 +0x65 fp=0xc004b33fe0 sp=0xc004b33f28 pc=0x73d4825