I need to ask a question on creating UDF on aerospike. My configuration is as below:
My application is running this code:
AerospikeClient.RegisterUDF(nil, []byte({UDF_BODY}), {UDF_FILENAME}+".lua", aerospike.LUA)
and it keeps on producing this error:
Error registering UDF in aerospike. common_error="Registration failed: compile_error\nFile: \nLine: 0\nMessage: Unable to create a new Lua state"
Does anybody have any idea on how to resolve this error?
I searched the forum and I don't think there is anybody that have encountered the same issue as me.
Thanks
The error message itself comes from aerospike/aerospike-mod-lua/src/main/mod_lua.c#validate()
, relayed by aerospike/aerospike-client-go/client.go#RegisterUDF()
Considering the filename is empty in the error message, it makes sense it triggers from the code, because lua_open()
returns null, which has been seen before as a linking option issue.
In that page, lua_open()
is a macro for luaL_newstate()
, and this error could reflect the fact the M1 support for luajit is not yet fully completed.
The OP David Budiman confirms in the comments:
My teammates that are not using M1 macbook do not encounter this problem. I'll try to use another machine first