[GitHub] [couchdb] rnewson commented on issue #3061: couch_index_server crashes too easily

2020-08-10 Thread GitBox


rnewson commented on issue #3061:
URL: https://github.com/apache/couchdb/issues/3061#issuecomment-671451184


   ```
   handle_cast(delete, State) ->
   #st{mod=Mod, idx_state=IdxState} = State,
   ok = Mod:delete(IdxState),
   {stop, normal, State};
   ```



This is an automated message from the Apache Git Service.
To respond to the message, please log on to 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




[GitHub] [couchdb] rnewson commented on issue #3061: couch_index_server crashes too easily

2020-08-10 Thread GitBox


rnewson commented on issue #3061:
URL: https://github.com/apache/couchdb/issues/3061#issuecomment-671418656


   that looks better to me
   



This is an automated message from the Apache Git Service.
To respond to the message, please log on to 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




[GitHub] [couchdb] rnewson commented on issue #3061: couch_index_server crashes too easily

2020-08-10 Thread GitBox


rnewson commented on issue #3061:
URL: https://github.com/apache/couchdb/issues/3061#issuecomment-671255684


   I don't much like the idea of couch_index_server having to wait for that 
clean shutdown elsewhere.



This is an automated message from the Apache Git Service.
To respond to the message, please log on to 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




[GitHub] [couchdb] rnewson commented on issue #3061: couch_index_server crashes too easily

2020-08-10 Thread GitBox


rnewson commented on issue #3061:
URL: https://github.com/apache/couchdb/issues/3061#issuecomment-671255305


   ```
   diff --git a/src/couch_index/src/couch_index_server.erl 
b/src/couch_index/src/couch_index_server.erl
   index 49d1e61b7..f1828c665 100644
   --- a/src/couch_index/src/couch_index_server.erl
   +++ b/src/couch_index/src/couch_index_server.erl
   @@ -243,9 +243,8 @@ reset_indexes(DbName, Root) ->
end, dict:new(), ets:lookup(?BY_DB, DbName)),
Fun = fun({Sig, DDocIds}) ->
[{_, Pid}] = ets:lookup(?BY_SIG, {DbName, Sig}),
   -MRef = erlang:monitor(process, Pid),
gen_server:cast(Pid, delete),
   -receive {'DOWN', MRef, _, _, _} -> ok end,
   +receive {'EXIT', Pid, _Reason} -> ok end,
rem_from_ets(DbName, Sig, DDocIds, Pid)
end,
lists:foreach(Fun, dict:to_list(SigDDocIds)),
   ```
   
   Is this what you mean, @davisp?



This is an automated message from the Apache Git Service.
To respond to the message, please log on to 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




[GitHub] [couchdb] rnewson commented on issue #3061: couch_index_server crashes too easily

2020-08-10 Thread GitBox


rnewson commented on issue #3061:
URL: https://github.com/apache/couchdb/issues/3061#issuecomment-671254847


   Original introduction of this problem is here 
https://github.com/apache/couchdb/commit/d977eb7ec52bc13dca7b4f530cb51f42df0f6224.
 



This is an automated message from the Apache Git Service.
To respond to the message, please log on to 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




[GitHub] [couchdb] rnewson commented on issue #3061: couch_index_server crashes too easily

2020-08-06 Thread GitBox


rnewson commented on issue #3061:
URL: https://github.com/apache/couchdb/issues/3061#issuecomment-670030960


   in the original logs, which I can't share here, there's a design document 
deletion while that index is building. the delete removes the underlying .view 
files and kills the couch_file pids, so when the index_server process itself 
terminates, it crashes -in- terminate when trying to close the now dead pid
   
   I can't say that this is the only root to killing couch_index_server, 
though, so I would rather focus on removing the
   
   ```
   [] when Reason /= normal ->
   exit(Reason); 
   ```
   
   bit, which seems like an over-reaction now.



This is an automated message from the Apache Git Service.
To respond to the message, please log on to 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