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/11/10 06:13:24 UTC

[lucene-solr] 02/03: @1135 Cluster state managment hardening.

This is an automated email from the ASF dual-hosted git repository.

markrmiller pushed a commit to branch reference_impl
in repository https://gitbox.apache.org/repos/asf/lucene-solr.git

commit 72e4eee25240c12e3f3ae96cafb20227b5ebe837
Author: markrmiller@gmail.com <ma...@gmail.com>
AuthorDate: Mon Nov 9 23:35:55 2020 -0600

    @1135 Cluster state managment hardening.
---
 solr/core/src/java/org/apache/solr/cloud/overseer/ZkStateWriter.java | 3 ++-
 solr/core/src/java/org/apache/solr/schema/ManagedIndexSchema.java    | 2 +-
 2 files changed, 3 insertions(+), 2 deletions(-)

diff --git a/solr/core/src/java/org/apache/solr/cloud/overseer/ZkStateWriter.java b/solr/core/src/java/org/apache/solr/cloud/overseer/ZkStateWriter.java
index a2c4ce1..55726c2 100644
--- a/solr/core/src/java/org/apache/solr/cloud/overseer/ZkStateWriter.java
+++ b/solr/core/src/java/org/apache/solr/cloud/overseer/ZkStateWriter.java
@@ -309,7 +309,8 @@ public class ZkStateWriter {
             version = v;
           }
 
-          reader.getZkClient().setData(path, data, version, true);
+
+          reader.getZkClient().setData(path, data, version == 0 ? -1 : version, true);
 
           trackVersions.put(collection.getName(), version + 1);
         } catch (KeeperException.NoNodeException e) {
diff --git a/solr/core/src/java/org/apache/solr/schema/ManagedIndexSchema.java b/solr/core/src/java/org/apache/solr/schema/ManagedIndexSchema.java
index 7219bfe..bdfdeb8 100644
--- a/solr/core/src/java/org/apache/solr/schema/ManagedIndexSchema.java
+++ b/solr/core/src/java/org/apache/solr/schema/ManagedIndexSchema.java
@@ -213,7 +213,7 @@ public final class ManagedIndexSchema extends IndexSchema {
         try {
           // Assumption: the path exists
           int ver = schemaZkVersion;
-          Stat stat = zkClient.setData(managedSchemaPath, data, ver, true);
+          Stat stat = zkClient.setData(managedSchemaPath, data, ver == 0 ? -1 : ver, true);
           schemaZkVersion = stat.getVersion();
           log.info("Persisted managed schema version {} at {}", ver, managedSchemaPath);
         } catch (KeeperException.BadVersionException e) {