David Smiley created SOLR-12256:
-----------------------------------

             Summary: Aliases and eventual consistency (should use sync())
                 Key: SOLR-12256
                 URL: https://issues.apache.org/jira/browse/SOLR-12256
             Project: Solr
          Issue Type: Bug
      Security Level: Public (Default Security Level. Issues are Public)
          Components: SolrCloud
            Reporter: David Smiley
            Assignee: David Smiley


ZkStateReader.AliasesManager.update() reads alias info from ZK into the 
ZkStateReader.  This method is called in ~5 places (+2 for tests).  In at least 
some of these places, the caller assumes that the alias info is subsequently up 
to date when in fact this might not be so since ZK is allowed to return a stale 
value.  ZooKeeper.sync() can be called to force an up to date value.  As with 
sync(), AliasManager.update() ought not to be called aggressively/commonly, 
only in certain circumstances (e.g. _after_ failing to resolve stuff that would 
otherwise return an error).

And related to this eventual consistency issue, SetAliasPropCmd will throw an 
exception if the alias doesn't exist.  Fair enough, but sometimes (as seen in 
some tests), the node receiving the command to update Alias properties is 
simply "behind"; it does not yet know about an alias that other nodes know 
about.  I believe this is the cause of some failures in AliasIntegrationTest; 
perhaps others.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

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

Reply via email to