2012-09-30 44 views
0

我正在嘗試map reduce中的函數,它對數據進行排序並將其返回。當輸入查詢中的所有存儲桶密鑰對都存在於riak羣集中時,它工作良好。當一個桶/密鑰對不存在時,它會給出如下的輸出。riak mapreduce「未找到」輸出

[{"not_found":{"bucket":"newspaper-issue","key":"56276","keydata":"undefined"}}]

我無法從地圖上相中除去此輸出,即使我只是return []在map階段,它返回一個對象。

我的問題是我怎樣才能避免這種輸出,因爲它可能在輸入中有一些桶/密鑰丟失。

地圖功能是這樣的:

"language" => "javascript", 
"source" => "function(value,keyData,arg){ 
    return [] 
}, 
"keep"=>true 

回答

2

我認爲這已經回答了我們對您的郵件列表上,但想在這裏有可用的答案上左右爲好:

有一個內置JS函數在你的reduce階段用來解決這個問題; filterNotFound()

return Riak.filterNotFound(your_object_passed_from_map_phase);