janl commented on issue #745: Replication with attachments never completes, 
{mp_parser_died,noproc} error
URL: https://github.com/apache/couchdb/issues/745#issuecomment-361960288
 
 
   Moar data from affected nodes. I?ve listed process by `current_function` and 
sorted by occurrence
   
   <details>
   <summary>current function count/group script (click to reveal)</summary>
   
   ```erlang
   io:format("~p", [
       lists:keysort(2,
           maps:to_list(lists:foldl(
               fun(Elm, Acc) ->
                   case Elm of
                       {M, F, A} ->
                           N = maps:get({M, F, A}, Acc, 0),
                           maps:put({M, F, A}, N + 1, Acc);
                       Else ->
                           Acc
                       end
               end,
               #{},
               lists:map(
                   fun(Pid) ->
                       case process_info(Pid) of
                           undefined -> [];
                           Info -> proplists:get_value(current_function, Info)
                       end
                   end, 
                   processes()
               )
           ))
       )
   ])
   ```
   </details>
   
   ### Output
   
   Output from an affected node:
   
   ```erlang
   [{{code_server,loop,1},1},
    {{couch_replicator_scheduler,stats_updater_loop,1},1},
    {{cpu_sup,measurement_server_loop,1},1},
    {{cpu_sup,port_server_loop,2},1},
    {{erl_eval,do_apply,6},1},
    {{erl_prim_loader,loop,3},1},
    {{erlang,hibernate,3},1},
    {{gen,do_call,4},1},
    {{global,loop_the_locker,1},1},
    {{global,loop_the_registrar,0},1},
    {{inet_gethost_native,main_loop,1},1},
    {{init,loop,1},1},
    {{mem3_shards,'-start_changes_listener/1-fun-0-',1},1},
    {{memsup,port_idle,1},1},
    {{net_kernel,ticker_loop,2},1},
    {{shell,shell_rep,4},1},
    {{standard_error,server_loop,1},1},
    {{user,server_loop,2},1},
    {{couch_changes,wait_updated,3},2},
    {{prim_inet,recv0,3},2},
    {{dist_util,con_loop,9},3},
    {{gen_event,fetch_msg,5},6},
    {{couch_os_process,'-init/1-fun-0-',2},23},
    {{application_master,loop_it,4},25},
    {{application_master,main_loop,2},25},
    {{prim_inet,accept0,2},29},
    {{couch_httpd_multipart,mp_parse_atts,2},31},
    {{fabric_db_update_listener,cleanup_monitor,3},210},
    {{fabric_db_update_listener,wait_db_updated,1},210},
    {{rexi_monitor,wait_monitors,1},210},
    {{rexi_utils,process_message,6},212},
    {{couch_event_listener,loop,2},412},
    {{couch_httpd_multipart,maybe_send_data,1},881},
    {{couch_doc,'-doc_from_multi_part_stream/4-fun-1-',1},912},
    {{gen_server,loop,6},2816}]
   ```
   
   Unaffected node in the same cluster:
   
   ```erlang
   [{{code_server,loop,1},1},
    {{couch_ejson_compare,less,2},1},
    {{couch_index_server,get_index,3},1},
    {{couch_replicator_scheduler,stats_updater_loop,1},1},
    {{cpu_sup,measurement_server_loop,1},1},
    {{cpu_sup,port_server_loop,2},1},
    {{erl_eval,do_apply,6},1},
    {{erl_prim_loader,loop,3},1},
    {{fabric_util,get_shard,4},1},
    {{global,loop_the_locker,1},1},
    {{global,loop_the_registrar,0},1},
    {{inet_gethost_native,main_loop,1},1},
    {{init,loop,1},1},
    {{mem3_shards,'-start_changes_listener/1-fun-0-',1},1},
    {{memsup,port_idle,1},1},
    {{net_kernel,ticker_loop,2},1},
    {{prim_inet,recv0,3},1},
    {{shell,shell_rep,4},1},
    {{standard_error,server_loop,1},1},
    {{user,server_loop,2},1},
    {{couch_changes,wait_updated,3},2},
    {{dist_util,con_loop,9},3},
    {{erlang,hibernate,3},3},
    {{gen_event,fetch_msg,5},6},
    {{rexi,wait_for_ack,2},8},
    {{couch_os_process,'-init/1-fun-0-',2},16},
    {{application_master,loop_it,4},25},
    {{application_master,main_loop,2},25},
    {{prim_inet,accept0,2},28},
    {{couch_httpd_multipart,mp_parse_atts,2},37},
    {{fabric_db_update_listener,wait_db_updated,1},112},
    {{fabric_db_update_listener,cleanup_monitor,3},113},
    {{rexi_monitor,wait_monitors,1},114},
    {{rexi_utils,process_message,6},114},
    {{couch_event_listener,loop,2},344},
    {{couch_httpd_multipart,maybe_send_data,1},361},
    {{couch_doc,'-doc_from_multi_part_stream/4-fun-1-',1},398},
    {{gen_server,loop,6},10270}]
   ```
   
   Output from a cluster that doesn?t have attachments:
   
   ```erlang
   {{code_server,loop,1},1},
    {{cpu_sup,measurement_server_loop,1},1},
    {{cpu_sup,port_server_loop,2},1},
    {{erl_eval,do_apply,6},1},
    {{erl_prim_loader,loop,3},1},
    {{erts_code_purger,loop,0},1},
    {{fabric_db_update_listener,cleanup_monitor,3},1},
    {{fabric_db_update_listener,wait_db_updated,1},1},
    {{global,loop_the_locker,1},1},
    {{global,loop_the_registrar,0},1},
    {{init,loop,1},1},
    {{net_kernel,ticker_loop,2},1},
    {{rexi_monitor,wait_monitors,1},1},
    {{rexi_utils,process_message,6},1},
    {{shell,shell_rep,4},1},
    {{standard_error,server_loop,1},1},
    {{timer,sleep,1},1},
    {{user,server_loop,2},1},
    {{dist_util,con_loop,2},3},
    {{gen_event,fetch_msg,5},6},
    {{couch_changes,wait_updated,3},10},
    {{couch_event_listener,loop,2},19},
    {{application_master,loop_it,4},24},
    {{application_master,main_loop,2},24},
    {{couch_os_process,'-init/1-fun-0-',2},32},
    {{prim_inet,accept0,2},33},
    {{erlang,hibernate,3},75},
    {{gen_server,loop,6},2521}]
   ```

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

Reply via email to