lucene-solr-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Marc Campeau <cam...@gmail.com>
Subject Re: SolrCloud: Understanding Replication
Date Tue, 03 Jun 2014 20:49:10 GMT
Hi,

first I'd like to thank those who've spent their time reading this,
especially Erick, Jason and Shawn. Thank you!

I've finally got it working. Shawn was right, I needed to enable updateLog
in solrconfig.xml and create the tlog directory. After doing, so I could
index documents sent on any node, they would go to the leader which indexed
them but they still weren't being replicated to the replicas.

After looking at the logs, I remembered some thing I had read somewhere
(would like to include link here but can't find it) about when using a
Zookeeper ensemble and wanting to reset your Solr Collection you should not
only clear your data folder and tlog folder but you should also clear out
your Zookeeper data folders on all members of ensemble. So I stopped all
Solr Instances in cluster, and then all members of Zookeeper ensemble.
Deleted the Zookeeper data/version_2 folder on all Zookeeper instances.
Deleted the Solr index data on all Solr instances. Restarted the Zookeeper
Ensemble, pushed the SOLR Configs to it and started the remainder of the
Solr cluster. That's when it all started working. Documents I had started
indexing that were solely on the leader got replicated to replicas and then
any document sent to any member of cluster would be indexed and replicated.

So lessons learned:

1) Don't forget to enable updateLog. Needs to be tested: an index that
doesn't have updateLog associated to it cannot be made into replica, or at
least cannot just be copied over to replica nodes.
2) When you want to reset a collection, it's a good idea to reset the
zookeeper ensemble data, especially if your Solr Cluster wasn't replicating.

Marc



2014-06-02 16:31 GMT-04:00 Shawn Heisey <solr@elyograg.org>:

> On 6/2/2014 2:21 PM, Marc Campeau wrote:
> > I notice I have this in the logs when I start SOLR for default example (I
> > had the same with my own connection)
> >
> > 21242 [coreZkRegister-1-thread-1] INFO
> >  org.apache.solr.cloud.ShardLeaderElectionContext  – Enough replicas
> found
> > to continue.
> > 21242 [coreZkRegister-1-thread-1] INFO
> >  org.apache.solr.cloud.ShardLeaderElectionContext  – I may be the new
> > leader - try and sync
> > 21242 [coreZkRegister-1-thread-1] INFO
>  org.apache.solr.cloud.SyncStrategy
> >  – Sync replicas to http://192.168.150.90:8983/solr/collection1/
> > 21243 [coreZkRegister-1-thread-1] ERROR
> org.apache.solr.cloud.SyncStrategy
> >  – No UpdateLog found - cannot sync
> > 21243 [coreZkRegister-1-thread-1] INFO
> >  org.apache.solr.cloud.ShardLeaderElectionContext  – We failed sync, but
> we
> > have no versions - we can't sync in that case - we were active before, so
> > become leader anyway
> > 21243 [coreZkRegister-1-thread-1] INFO
> >  org.apache.solr.cloud.ShardLeaderElectionContext  – I am the new leader:
> > http://192.168.150.90:8983/solr/collection1/ shard1
> > 21243 [coreZkRegister-1-thread-1] INFO
> >  org.apache.solr.common.cloud.SolrZkClient  – makePath:
> > /collections/collection1/leaders/shard1
>
> The "No UpdateLog found - cannot sync" message suggests that either you
> have disabled the updateLog feature in solrconfig.xml or that you have
> deleted the tlog directory (or possibly the entire data directory).
> Hopefully it's the latter, because SolrCloud cannot function properly if
> the updateLog is disabled.  For data integrity reasons, the updateLog is
> always recommended, whether using SolrCloud or not.
>
> Thanks,
> Shawn
>
>

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message