Deleted objects may show up as objects with the special meta-data property 
X-Riak-Deleted set, and an empty contents.  So, in your map function 
trend_riak:get_map_bucket_values you need to check

        riak_kv_util:is_x_deleted(Obj)

(Which is a utility function that checks for that property), and in that case 
just return the empty list from your map function.

Kresten
Trifork

On Sep 25, 2012, at 1:19 PM, 郎咸武 <langxian...@gmail.com> wrote:

> Hi guys, I need yours help.
> I using mapreduce in my server. I only query from riak, that is ok.  But 
> first delete some data,after query is error in the follow.
> 
> My  environment:
> Linux jason-lxw 3.2.0-30-generic #48-Ubuntu SMP Fri Aug 24 16:52:48 UTC 2012 
> x86_64 x86_64 x86_64 GNU/Linux
> Erlang R14B04
> riak-1.2
> riak-erlang-1.2
> 
> Thanks in advance.
> Jason
> 
> My server error message:
> =ERROR REPORT==== 25-Sep-2012::18:30:48 ===
> E(<0.411.0>:mod_pubsub_riak:3168) : In mod_pubsub_riak:get_newsfeed 3168 
> Erro={error,
>                                                                               
>  {0,
>                                                                               
>   
> <<"{\"phase\":0,\"error\":\"badarg\",\"input\":\"{ok,{r_object,<<\\\"itrends/ejabberd/pubsub_item\\\">>,<<131,104,2,107,0,13,53,52,52,56,56,48,70,56,66,52,54,53,48,97,5>>,[{r_content,{dict,4,16,16,8,80,48,{[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[]},{{[],[],[],[],[],[],[],[],[],[],[[<<\\\"X-Riak-VTag\\\">>,51,100,111,68,108,85,106,107,48,88,110,120,51,79,106,56,71,68,97,87,74,54]],[[<<\\\"index\\\">>]],[[<<\\\"X-Riak-Deleted\\\">>,116,114,117,101]],[[<<\\\"X-Riak-Last-Modified\\\">>|{1348,569048,516672}]],[],[]}}},<<>>}],[{<<35,9,254,249,80,93,197,65>>,{2,63515788248}}],...},...}\",\"type\":\"error\",\"stack\":\"[{erlang,binary_to_term,[<<>>]},{trend_riak,get_map_bucket_values,3},{riak_kv_mrc_map,map,3},{riak_kv_mrc_map,process,3},{riak_pipe_vnode_worker,process_input,3},{riak_pipe_vnode_worker,wait_for_input,2},{gen_fsm,handle_msg,7},{proc_lib,init_p_do_apply,3}]\"}">>}}
>  
> 
> 
> Riak error in the console:
> 
>                                  undefined}, Nodes=["jason1"], CategoryList=[]
> 16:24:01.346 [error] gen_fsm <0.2681.0> in state wait_for_input terminated 
> with reason: processing_error
> 16:24:01.346 [error] Pipe worker startup failed:
>    
> exit:{shutdown,{gen_fsm,sync_send_event,[<0.2654.0>,{get_details,#Ref<0.0.0.8144>,456719261665907161938651510223838443642478919680,<0.327.0>}]}}
>    
> [{gen_fsm,sync_send_event,2},{riak_pipe_fitting,get_details,2},{riak_pipe_vnode,new_worker,2},{riak_pipe_vnode,enqueue_internal,3},{riak_core_vnode,vnode_command,3},{gen_fsm,handle_msg,7},{proc_lib,init_p_do_apply,3}]
> 16:24:01.346 [error] Pipe worker startup failed:
>    
> exit:{shutdown,{gen_fsm,sync_send_event,[<0.2654.0>,{get_details,#Ref<0.0.0.8144>,799258707915337533392640142891717276374338109440,<0.357.0>}]}}
>    
> [{gen_fsm,sync_send_event,2},{riak_pipe_fitting,get_details,2},{riak_pipe_vnode,new_worker,2},{riak_pipe_vnode,enqueue_internal,3},{riak_core_vnode,vnode_command,3},{gen_fsm,handle_msg,7},{proc_lib,init_p_do_apply,3}]
> 16:24:01.347 [error] Pipe worker startup failed:fitting was gone before 
> startup
> 16:24:01.348 [error] Pipe worker startup failed:fitting was gone before 
> startup
> 16:24:01.389 [error] CRASH REPORT Process <0.2681.0> with 0 neighbours exited 
> with reason: processing_error in gen_fsm:terminate/7
> 16:24:01.408 [error] Unrecognized message 
> {pipe_log,#Ref<0.0.0.8144>,{kvget_map,0},{trace,[error],{vnode,{fitting_died,707914855582156101004909840846949587645842325504}}}}
> 16:24:01.545 [error] Supervisor riak_pipe_vnode_worker_sup had child 
> undefined started with {riak_pipe_vnode_worker,start_link,undefined} at 
> <0.2681.0> exit with reason processing_error in context child_terminated
> 16:24:01.567 [error] Unrecognized message 
> {pipe_log,#Ref<0.0.0.8144>,{kvget_map,0},{trace,[error],{vnode,{fitting_died,411047335499316445744786359201454599278231027712}}}}
> 16:24:01.622 [error] Unrecognized message 
> {pipe_log,#Ref<0.0.0.8144>,{kvget_map,0},{trace,[error],{vnode,{fitting_died,22835963083295358096932575511191922182123945984}}}}
> 16:24:01.645 [error] Unrecognized message 
> {pipe_log,#Ref<0.0.0.8144>,{kvget_map,0},{trace,[error],{vnode,{fitting_died,0}}}}
> 16:24:01.667 [error] Unrecognized message 
> {pipe_log,#Ref<0.0.0.8144>,{kvget_map,0},{trace,[error],{vnode,{fitting_died,1392993748081016843912887106182707253109560705024}}}}
> 16:24:01.729 [error] Unrecognized message 
> {pipe_log,#Ref<0.0.0.8144>,listkeys,{trace,[error],{vnode,{fitting_died,707914855582156101004909840846949587645842325504}}}}
> 
> 
> 
> get_map_bucket_values {} Record=rRecord, Nodes=["jason1"], CategoryList=[]
> get_map_bucket_values {} Record=r1Record, Nodes=["jason1"], CategoryList=[]
> 18:30:48.630 [error] gen_fsm <0.9097.0> in state wait_for_input terminated 
> with reason: processing_error
> 18:30:48.661 [error] CRASH REPORT Process <0.9097.0> with 0 neighbours exited 
> with reason: processing_error in gen_fsm:terminate/7
> 18:30:48.690 [error] Unrecognized message 
> {pipe_log,#Ref<0.0.0.63402>,{xform_map,0},{trace,[error],{vnode,{fitting_died,22835963083295358096932575511191922182123945984}}}}
> 18:30:48.717 [error] Supervisor riak_pipe_vnode_worker_sup had child 
> undefined started with {riak_pipe_vnode_worker,start_link,undefined} at 
> <0.9097.0> exit with reason processing_error in context child_terminated
> 18:30:48.750 [error] Unrecognized message 
> {pipe_log,#Ref<0.0.0.63402>,{xform_map,0},{trace,[error],{vnode,{fitting_died,936274486415109681974235595958868809467081785344}}}}
> 18:30:48.772 [error] Unrecognized message 
> {pipe_log,#Ref<0.0.0.63402>,{xform_map,0},{trace,[error],{vnode,{fitting_died,1392993748081016843912887106182707253109560705024}}}}
> 18:30:48.794 [error] Unrecognized message 
> {pipe_log,#Ref<0.0.0.63402>,{xform_map,0},{trace,[error],{vnode,{fitting_died,1255977969581244695331291653115555720016817029120}}}}
> 18:30:48.817 [error] Unrecognized message 
> {pipe_log,#Ref<0.0.0.63402>,{xform_map,0},{trace,[error],{vnode,{fitting_died,616571003248974668617179538802181898917346541568}}}}
> 18:30:48.828 [error] Unrecognized message 
> {pipe_log,#Ref<0.0.0.63402>,{xform_map,0},{trace,[error],{vnode,{fitting_died,0}}}}
> 18:30:48.839 [error] Unrecognized message 
> {pipe_log,#Ref<0.0.0.63402>,{xform_map,0},{trace,[error],{vnode,{fitting_died,411047335499316445744786359201454599278231027712}}}}
> 18:30:48.850 [error] Unrecognized message 
> {pipe_log,#Ref<0.0.0.63402>,{xform_map,0},{trace,[error],{vnode,{fitting_died,799258707915337533392640142891717276374338109440}}}}
> 18:30:48.872 [error] Unrecognized message 
> {pipe_log,#Ref<0.0.0.63402>,{xform_map,0},{trace,[error],{vnode,{fitting_died,685078892498860742907977265335757665463718379520}}}}
> 18:30:48.986 [error] Unrecognized message 
> {pipe_log,#Ref<0.0.0.63402>,{xform_map,0},{trace,[error],{vnode,{fitting_died,1187470080331358621040493926581979953470445191168}}}}
> 18:30:49.006 [error] Unrecognized message 
> {pipe_log,#Ref<0.0.0.63402>,{xform_map,0},{trace,[error],{vnode,{fitting_died,707914855582156101004909840846949587645842325504}}}}
> 18:30:49.039 [error] Unrecognized message 
> {pipe_log,#Ref<0.0.0.63402>,{xform_map,0},{trace,[error],{vnode,{fitting_died,662242929415565384811044689824565743281594433536}}}}
> 18:30:49.072 [error] Unrecognized message 
> {pipe_log,#Ref<0.0.0.63402>,1,{trace,[error],{vnode,{fitting_died,45671926166590716193865151022383844364247891968}}}}
> 
> -- 
> 只为成功找方法,不为失败找理由
> _______________________________________________
> riak-users mailing list
> riak-users@lists.basho.com
> http://lists.basho.com/mailman/listinfo/riak-users_lists.basho.com



Mobile: + 45 2343 4626 | Skype: krestenkrabthorup | Twitter: @drkrab
Trifork A/S  |  Margrethepladsen 4  | DK- 8000 Aarhus C |  Phone : +45 8732 
8787  |  www.trifork.com
 



_______________________________________________
riak-users mailing list
riak-users@lists.basho.com
http://lists.basho.com/mailman/listinfo/riak-users_lists.basho.com

Reply via email to