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

MockDirectoryFactory.exists() behaves diff then other impls -- can cause FullSolrCloudDistribCmdsTest failures due to SolrCore.initIndex incorrectly thinking index directory for brand new SolrCores already exist?

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • None
    • 7.3, 8.0
    • None
    • None

    Description

      There's been quite a few jenkins failures from FullSolrCloudDistribCmdsTest that all seem to follow a similar pattern:

      • Failure manifests as "Could not find collection:collection2"
      • Failing seeds frequently reproduce, but aren't guaranteed to
      • Root cause can be traced back to the collection creation failing because one of more replica cores failed due to the brand new (Solr)IndexWriter expects to find an existing segments file
        • SolrCore should have already created an (empty) index in SolrCore.initIndex(...)
        • The fact that the SolrIndexWrite throws this exception in it's constructor suggests that the earlier call to SolrCore.initIndex(...) is not functioning reliably
        • Based on some experimenting i've done, it seems like the underlying problem is that in SolrCore.initIndex(...) the DirectoryFactory can "lie" about wether a directory already exists.

      More details to follow in comments.

      Attachments

        1. SOLR-11988.patch
          7 kB
          Chris M. Hostetter
        2. SOLR-11988_nocommit_logging.patch
          1 kB
          Chris M. Hostetter
        3. log.txt
          872 kB
          Chris M. Hostetter

        Activity

          People

            hossman Chris M. Hostetter
            hossman Chris M. Hostetter
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: