Chris M. Hostetter created SOLR-16013:
-----------------------------------------

             Summary: Overseer gives up election node before closing - inflight 
commands can be processed twice
                 Key: SOLR-16013
                 URL: https://issues.apache.org/jira/browse/SOLR-16013
             Project: Solr
          Issue Type: Bug
      Security Level: Public (Default Security Level. Issues are Public)
            Reporter: Chris M. Hostetter


{{ZkController}} shutdown currently has these two lines (in this order)...
{code:java}
    customThreadPool.submit(() -> 
IOUtils.closeQuietly(overseerElector.getContext()));

    customThreadPool.submit(() -> IOUtils.closeQuietly(overseer));
{code}

AFAICT this means that means that the overseer nodeX will give up it's election 
node (via overseerElector) allowing some other nodeY to be elected a new 
overseer, **BEFORE** Overseer nodeX shuts down it's {{Overseer}} object, which 
waits for the {{OverseerThread}} to finish processing any tasks in process.

In practice, this seems to make it possible for a single command in the 
overseer queue to get processed twice.



--
This message was sent by Atlassian Jira
(v8.20.1#820001)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to