nickva opened a new issue, #4809:
URL: https://github.com/apache/couchdb/issues/4809

   This failure was noticed on MacOS CI worker:
   
   ```
      couch_index_crash_tests:76: index_crash_test_ 
(t_index_process_dies)...*failed*
   in function gen_server:call/3 (gen_server.erl, line 247)
   in call from couch_util:with_db/2 (src/couch_util.erl, line 575)
   in call from couch_index_crash_tests:t_index_process_dies/1 
(test/eunit/couch_index_crash_tests.erl, line 169)
   in call from eunit_test:run_testfun/1 (eunit_test.erl, line 71)
   in call from eunit_proc:run_test/1 (eunit_proc.erl, line 531)
   in call from eunit_proc:with_timeout/3 (eunit_proc.erl, line 356)
   in call from eunit_proc:handle_test/2 (eunit_proc.erl, line 514)
   in call from couch_index_server:get_index/3
     called as 
get_index(test_index,{db,1,<<"shards/00000000-ffffffff/eunit-test-db-df9ba"...>>,
       
"/Users/nvatama/asf/tmp/data/shards/00000000-ffffffff/eunit-test-db-df9ba5011aeb1414c66776d780ab2d3b.1697513861.couch",
       
{couch_bt_engine,{st,"/Users/nvatama/asf/tmp/data/shards/00000000-ffffffff/eunit-test-db-df9ba5011aeb1414c66776d780ab2d3b.1697513861.couch",
                            <0.914.0>,#Ref<0.3262295735.3275227137.251265>,
                            undefined,
                            {db_header,...},
                            false,...}},
       <0.913.0>,nil,1,<<"1697513861067778">>,
       {user_ctx,null,[],undefined},
       [],[],nil,nil,...},{doc,<<"idx_name">>,
        {1,[<<23,144,119,134,205,40,77,101,...>>]},
        {[{<<"value">>,1}]},
        [],false,[]})
   **exit:{boom,
       {gen_server,call,
           [index_server_9,
            {get_index,
                {test_index,
                    {<<"shards/00000000-ffffffff/eun"...>>,
                     {doc,<<"idx_name">>,{1,[<<...>>]},{[{...}]},[],false,...}},
                    <<"shards/00000000-ffffffff/eun"...>>,
                    <<210,59,167,223,130,127,...>>}},
            infinity]}}
     output:<<"">>
   ```
   
   The test code in question is:
   
   ```erlang
     exit(IdxPid, boom),
     meck:wait(couch_index_server, handle_info, [{'EXIT', IdxPid, boom}, '_'], 
1000),
     {ok, IdxPid2} = get_index(DbShard, DDoc),
   ```
   
   We kill an index process expecting a new one to start. However when calling 
`get_index/3` `index_server_9` itself crashes. That seem to point to a race 
condition in the index server logic.
   
   


-- 
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.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to