You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@couchdb.apache.org by GitBox <gi...@apache.org> on 2018/01/31 15:07:11 UTC

[GitHub] janl commented on issue #745: Replication with attachments never completes, {mp_parser_died,noproc} error

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:
users@infra.apache.org


With regards,
Apache Git Services