我的lua代码来自官方网站的例子:
local function one(rec)
info("lalalalal %s",rec['id'])
return 1
end
local function add(a, b)
return a + b
end
function mycount(stream)
return stream : map(one) : reduce(add);
end
当我使用aql命令时:
日志中的错误,如打击:
2015年5月20日07:12:07 GMT:DEBUG(udf):( udf_rw.c:send_result:515) 调用stream_udf mycount时失败 /opt/aerospike/usr/udf/lua/stream_udf.lua:10:尝试调用方法 'map'(零值)2015年5月20日07:12:07 GMT:DEBUG(udf): (udf_rw.c:send_udf_failure:403)非特殊LDT或通用UDF 错误(/opt/aerospike/usr/udf/lua/stream_udf.lua:10:尝试打电话 方法'map'(零值))
如何解决? 谢谢
答案 0 :(得分:1)
这是一个Lua问题,它不会自动将nil转换为字符串,而print和info()等函数则需要该类型。将您的行更改为
info("lalalalal %s", tostring(rec['id']))