You are viewing a plain text version of this content. The canonical link for it is here.
Posted to solr-user@lucene.apache.org by Taisuke Miyazaki <mi...@lifull.com> on 2020/09/14 09:45:06 UTC

Problem: "pull" replica commits to leader?

Hi, everyone,
The data is not synchronized to the pull replica from tlog solr node.

We are using a replica of tlog and pull.
We are trying to change the version of solr we use from 7.5.0 to 8.6.2.

Configuration :
The pull node is being started after the tlog node is filled with data.

Problem.
The data is not synchronized to the pull replica.

Looking at the log, it looks like the "pull" replica is trying to commit to
the leader in the doReplicateOnlyRecovery function.
Is this a bug? Or is it set up wrong?

The log looks like this

2020-09-14 09:34:45.576 ERROR
(recoveryExecutor-11-thread-1-processing-n:172.20.17.40:8983_solr
x:mycollection_shard1_replica_p3 c:mycollection s:shard1 r:core_node4)
[c:mycollection s:shard1 r:core_node4 x:mycollection_shard1_replica_p3]
o.a.s.c.RecoveryStrategy Error while trying to
recover:org.apache.solr.client.solrj.impl.HttpSolrClient$RemoteSolrException:
Error from server at
http://172.20.16.100:8983/solr/mycollection_shard1_replica_t1: Thou shall
not issue a commit!
at
org.apache.solr.client.solrj.impl.HttpSolrClient.executeMethod(HttpSolrClient.java:681)
at
org.apache.solr.client.solrj.impl.HttpSolrClient.request(HttpSolrClient.java:266)
at
org.apache.solr.client.solrj.impl.HttpSolrClient.request(HttpSolrClient.java:248)
at org.apache.solr.client.solrj.SolrRequest.process(SolrRequest.java:214)
at org.apache.solr.client.solrj.SolrRequest.process(SolrRequest.java:231)
at
org.apache.solr.cloud.RecoveryStrategy.commitOnLeader(RecoveryStrategy.java:298)
at
org.apache.solr.cloud.RecoveryStrategy.replicate(RecoveryStrategy.java:230)
at
org.apache.solr.cloud.RecoveryStrategy.doReplicateOnlyRecovery(RecoveryStrategy.java:394)
at
org.apache.solr.cloud.RecoveryStrategy.doRecovery(RecoveryStrategy.java:336)
at org.apache.solr.cloud.RecoveryStrategy.run(RecoveryStrategy.java:317)
at
com.codahale.metrics.InstrumentedExecutorService$InstrumentedRunnable.run(InstrumentedExecutorService.java:180)
at
java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
at
org.apache.solr.common.util.ExecutorUtil$MDCAwareThreadPoolExecutor.lambda$execute$0(ExecutorUtil.java:212)
at
java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
at
java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
at java.base/java.lang.Thread.run(Thread.java:834)

I need a solution.
Thank you.