[ 
https://issues.apache.org/jira/browse/SOLR-6119?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14016285#comment-14016285
 ] 

Dawid Weiss commented on SOLR-6119:
-----------------------------------

You don't see a stack trace because snap puller is invoked from a thread pool 
(executor service) so there's nothing in between calls. But if you put a sleep 
here:
{code}
Index: solr/core/src/test/org/apache/solr/handler/TestReplicationHandler.java
===================================================================
--- solr/core/src/test/org/apache/solr/handler/TestReplicationHandler.java      
(revision 1599422)
+++ solr/core/src/test/org/apache/solr/handler/TestReplicationHandler.java      
(working copy)
@@ -1329,6 +1329,9 @@
     masterClient.shutdown();
     masterClient = createNewSolrServer(masterJetty.getLocalPort());

+    System.out.println("-- Sleeping...");
+    Thread.sleep(30000);
+
     nDocs--;
     masterClient.deleteByQuery("*:*");
     for (int i = 0; i < nDocs; i++)
{code}

Then you will see that it's working, even though it perhaps shouldn't?

{code}
2830 T38 oash.SnapPuller.fetchLatestIndex ERROR Master at: 
http://127.0.0.1:55584/solr is not available. Index fetch failed. Exception: 
Server refused connection at: http://127.0.0.1:55584/solr
3837 T38 oash.SnapPuller.fetchLatestIndex ERROR Master at: 
http://127.0.0.1:55584/solr is not available. Index fetch failed. Exception: 
Server refused connection at: http://127.0.0.1:55584/solr
4840 T38 oash.SnapPuller.fetchLatestIndex ERROR Master at: 
http://127.0.0.1:55584/solr is not available. Index fetch failed. Exception: 
Server refused connection at: http://127.0.0.1:55584/solr
5843 T38 oash.SnapPuller.fetchLatestIndex ERROR Master at: 
http://127.0.0.1:55584/solr is not available. Index fetch failed. Exception: 
Server refused connection at: http://127.0.0.1:55584/solr
6846 T38 oash.SnapPuller.fetchLatestIndex ERROR Master at: 
http://127.0.0.1:55584/solr is not available. Index fetch failed. Exception: 
Server refused connection at: http://127.0.0.1:55584/solr
{code}

The executor service should be terminated (and is in SnapPuller#destroy()), but 
I don't think this code is invoked. In fact, I don't quite get this snippet of 
code in doTestBackup:
{code}
    masterJetty.stop();
    master.copyConfigFile(CONF_DIR + configFile,
                          "solrconfig.xml");

    masterJetty = createJetty(master);
{code}
What is all this stopping/starting for? To restart jetty in a different config? 
If so, it should really be part of a per-test fixture rather than per-suite 
fixture. Just my two cents.

> TestReplicationHandler attempts to remove open folders
> ------------------------------------------------------
>
>                 Key: SOLR-6119
>                 URL: https://issues.apache.org/jira/browse/SOLR-6119
>             Project: Solr
>          Issue Type: Bug
>            Reporter: Dawid Weiss
>            Priority: Minor
>         Attachments: SOLR-6119.patch, SOLR-6119.patch, SOLR-6119.patch, 
> SOLR-6119.patch, SOLR-6119.patch
>
>
> TestReplicationHandler has a weird logic around the 'snapDir' variable. It 
> attempts to remove snapshot folders, even though they're not closed yet. My 
> recent patch uncovered the bug but I don't know how to fix it cleanly -- the 
> test itself seems to be very fragile (for example I don't understand the 
> 'namedBackup' variable which is always set to true, yet there are 
> conditionals around it).



--
This message was sent by Atlassian JIRA
(v6.2#6252)

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org

Reply via email to