Uploaded image for project: 'Solr'
  1. Solr
  2. SOLR-9278

Possible deadlock in replication

Attach filesAttach ScreenshotVotersWatch issueWatchersCreate sub-taskLinkCloneUpdate Comment AuthorReplace String in CommentUpdate Comment VisibilityDelete Comments
    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • 6.2
    • 6.3, 7.0
    • Server
    • Linux

    Description

      There is a bug in IndexFetcher for replication logic, it may cause deadlock issue, and it's very easy to reproduce. If you change your solrconfig to keep more than 1 commit points, this operation will causes 2 issues:
      1. Slave has to download whole index directory of Master, instead of incremental udpates only;
      2. If you click "replicate now" button manually, this is cause deadlock, stop both "indexFetcher" thread and "explicitFetcher" thread.

      The first issue is a design issue, can be worked around by keep only 1 commit point. But the second issue can always happen if there is some file located in slave's index directory, but can not be deleted by index delete policy (due to permission issue etc), I have fixed this issue for my service, would happy to contribute to Solr community to benefit others.

      Attachments

        Issue Links

        Activity

          This comment will be Viewable by All Users Viewable by All Users
          Cancel

          People

            markrmiller@gmail.com Mark Miller
            gui.xunlong@gmail.com Xunlong
            Votes:
            2 Vote for this issue
            Watchers:
            12 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Time Tracking

                Estimated:
                Original Estimate - 48h
                48h
                Remaining:
                Remaining Estimate - 48h
                48h
                Logged:
                Time Spent - Not Specified
                Not Specified

                Issue deployment