关于创建UDF,返回"无法创建新的Lua状态"的帮助请求

我需要在aerospike上创建UDF的问题。我的配置如下:

  • M1 Macbook Pro
  • Docker使用最新的aerospike

我的应用正在运行以下代码:

AerospikeClient.RegisterUDF(nil,[]byte({UDF_BODY}),{UDF_FILENAME}+".lua", aerospike.LUA)

它不断产生这个错误:

Error registering UDF in aerospike.     common_error="Registration failed: compile_error\nFile: \nLine: 0\nMessage: 无法创建新的Lua状态"

是否有人知道如何解决这个错误?

我在论坛上搜索过,我觉得没有人遇到过和我一样的问题。

谢谢

原文链接 https://stackoverflow.com/questions/70093217

点赞
stackoverflow用户6309
stackoverflow用户6309

错误消息本身来自aerospike/aerospike-mod-lua/src/main/mod_lua.c#validate(),由aerospike/aerospike-client-go/client.go#RegisterUDF()传递。

考虑到错误消息中的文件名为空,因此从代码中触发是有意义的,因为lua_open()返回null,这种情况之前也出现过,可能是链接选项问题。

在该页面中,lua_open()luaL_newstate()的宏,这个错误可能反映了M1芯片支持luajit尚未完全完成的事实。

OP David Budiman评论中确认:

我的队友们没有使用M1 MacBook遇到这个问题。 我将先尝试使用另一台机器。

2021-11-26 07:05:11