You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@solr.apache.org by "Chris M. Hostetter (Jira)" <ji...@apache.org> on 2022/02/16 00:21:00 UTC

[jira] [Created] (SOLR-16013) Overseer gives up election node before closing - inflight commands can be processed twice

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: issues-unsubscribe@solr.apache.org
For additional commands, e-mail: issues-help@solr.apache.org