2

我需要问一个关于在 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: Unable to create a new Lua state"

有人对如何解决此错误有任何想法吗?

我搜索了论坛,我认为没有人遇到过与我相同的问题。

谢谢

4

1 回答 1

1

错误消息本身来自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-26T07:05:11.477 回答