2015-05-20 42 views
1

我的Lua代碼是從官方網站的例子得到:塞UDF錯誤試圖調用方法「地圖」(一個零值)

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日7時12分07秒GMT:DEBUG(UDF):(udf_rw.c:send_result:515) FAILURE調用stream_udf mycount的時 /選擇/塞的/ usr/UDF/lua/stream_udf.lua:10:嘗試cal l方法 '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:試圖調用 方法 '地圖'(一個零值))

如何解決呢? 謝謝

回答

1

這是一個Lua問題,它不會自動將nil轉換爲字符串,而print和info()這樣的函數會期望該類型。將您的產品線更改爲

info("lalalalal %s", tostring(rec['id'])) 
+0

這是否適合您? –

相關問題