You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by ma...@apache.org on 2020/09/01 20:33:18 UTC
[lucene-solr] 02/02: @679 A couple more fixes around debugging
testRetryUpdatesWhenClusterStateIsStale.
This is an automated email from the ASF dual-hosted git repository.
markrmiller pushed a commit to branch reference_impl_dev
in repository https://gitbox.apache.org/repos/asf/lucene-solr.git
commit 2b4db537bf7a7fde3503d6d8479e1f0ad5001df1
Author: markrmiller@gmail.com <ma...@gmail.com>
AuthorDate: Tue Sep 1 15:32:02 2020 -0500
@679 A couple more fixes around debugging testRetryUpdatesWhenClusterStateIsStale.
---
.../core/src/java/org/apache/solr/cloud/ZkCollectionTerms.java | 1 -
solr/core/src/java/org/apache/solr/cloud/ZkController.java | 10 ++++++----
2 files changed, 6 insertions(+), 5 deletions(-)
diff --git a/solr/core/src/java/org/apache/solr/cloud/ZkCollectionTerms.java b/solr/core/src/java/org/apache/solr/cloud/ZkCollectionTerms.java
index 8641b74..25d2b27 100644
--- a/solr/core/src/java/org/apache/solr/cloud/ZkCollectionTerms.java
+++ b/solr/core/src/java/org/apache/solr/cloud/ZkCollectionTerms.java
@@ -59,7 +59,6 @@ class ZkCollectionTerms implements AutoCloseable {
public void remove(String shardId, CoreDescriptor coreDescriptor) {
synchronized (terms) {
- if (closed) throw new AlreadyClosedException();
if (getShard(shardId).removeTerm(coreDescriptor)) {
terms.remove(shardId).close();
}
diff --git a/solr/core/src/java/org/apache/solr/cloud/ZkController.java b/solr/core/src/java/org/apache/solr/cloud/ZkController.java
index 67d45b1..dd3e15c 100644
--- a/solr/core/src/java/org/apache/solr/cloud/ZkController.java
+++ b/solr/core/src/java/org/apache/solr/cloud/ZkController.java
@@ -1947,10 +1947,12 @@ public class ZkController implements Closeable {
public void unregister(String coreName, CoreDescriptor cd, boolean removeCoreFromZk) throws Exception {
final String coreNodeName = cd.getCloudDescriptor().getCoreNodeName();
final String collection = cd.getCloudDescriptor().getCollectionName();
- ZkCollectionTerms ct = collectionToTerms.get(collection);
- if (ct != null) {
- ct.close();
- ct.remove(cd.getCloudDescriptor().getShardId(), cd);
+ synchronized (collectionToTerms) {
+ ZkCollectionTerms ct = collectionToTerms.get(collection);
+ if (ct != null) {
+ ct.close();
+ ct.remove(cd.getCloudDescriptor().getShardId(), cd);
+ }
}
replicasMetTragicEvent.remove(collection+":"+coreNodeName);