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/12/17 04:31:52 UTC
[lucene-solr] 02/02: @1248 Cleanup.
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 8bb997849015cc9f696981919a37cbfd194c1a4a
Author: markrmiller@gmail.com <ma...@gmail.com>
AuthorDate: Wed Dec 16 22:23:00 2020 -0600
@1248 Cleanup.
---
solr/bin/solr | 5 +++--
solr/build.gradle | 1 +
solr/core/src/java/org/apache/solr/cloud/ZkShardTerms.java | 10 +++++-----
.../java/org/apache/solr/handler/admin/PrepRecoveryOp.java | 2 +-
solr/core/src/java/org/apache/solr/servlet/StopJetty.java | 2 +-
solr/packaging/build.gradle | 13 +++++++++++++
6 files changed, 24 insertions(+), 9 deletions(-)
diff --git a/solr/bin/solr b/solr/bin/solr
index 84f670e..1430227 100755
--- a/solr/bin/solr
+++ b/solr/bin/solr
@@ -844,6 +844,7 @@ function stop_solr() {
echo -e "Sending stop command to Solr running on port $SOLR_PORT ... "$JAVA" -cp $SOLR_TIP/server/lib/ext/solr-core*.jar $SOLR_SSL_OPTS $AUTHC_OPTS org.apache.solr.servlet.StopJetty "-DSTOP.PORT=$THIS_STOP_PORT" "-DSTOP.KEY=$STOP_KEY""
"$JAVA" -cp $SOLR_TIP/server/lib/ext/solr-core*.jar $SOLR_SSL_OPTS $AUTHC_OPTS "-DSTOP.PORT=$THIS_STOP_PORT" "-DSTOP.KEY=$STOP_KEY" org.apache.solr.servlet.StopJetty || true
+ sleep .2
PID=$(cat $SOLR_PID_DIR/$JETTY_PID)
rm $SOLR_PID_DIR/$JETTY_PID
} # end stop_solr
@@ -2179,8 +2180,8 @@ function start_solr() {
}
-find "$SOLR_SERVER_DIR/lib" -type f -exec cat {} > /dev/null \;
-find "$SOLR_SERVER_DIR/lib/ext" -type f -exec cat {} > /dev/null \;
+#find "$SOLR_SERVER_DIR/lib" -type f -exec cat {} > /dev/null \;
+#find "$SOLR_SERVER_DIR/lib/ext" -type f -exec cat {} > /dev/null \;
start_solr "$FG" "$ADDITIONAL_CMD_OPTS" "$ADDITIONAL_JETTY_CONFIG"
diff --git a/solr/build.gradle b/solr/build.gradle
index 6096174..e9bb1c2 100644
--- a/solr/build.gradle
+++ b/solr/build.gradle
@@ -22,3 +22,4 @@ subprojects {
}
+
diff --git a/solr/core/src/java/org/apache/solr/cloud/ZkShardTerms.java b/solr/core/src/java/org/apache/solr/cloud/ZkShardTerms.java
index cba0e4d..b880283 100644
--- a/solr/core/src/java/org/apache/solr/cloud/ZkShardTerms.java
+++ b/solr/core/src/java/org/apache/solr/cloud/ZkShardTerms.java
@@ -106,7 +106,7 @@ public class ZkShardTerms implements Closeable {
this.shard = shard;
this.zkClient = zkClient;
try {
- refreshTerms();
+ refreshTerms(true);
} catch (KeeperException e) {
throw new IOException(e);
}
@@ -330,7 +330,7 @@ public class ZkShardTerms implements Closeable {
return true;
} catch (KeeperException.BadVersionException e) {
log.info("Failed to save terms, version is not a match, retrying version={}", newTerms.getVersion());
- refreshTerms();
+ refreshTerms(false);
}
return false;
}
@@ -338,7 +338,7 @@ public class ZkShardTerms implements Closeable {
/**
* Fetch latest terms from ZK
*/
- public void refreshTerms() throws KeeperException {
+ public void refreshTerms(boolean setWatch) throws KeeperException {
ShardTerms newTerms;
try {
Watcher watcher = event -> {
@@ -350,14 +350,14 @@ public class ZkShardTerms implements Closeable {
retryRegisterWatcher();
// Some events may be missed during register a watcher, so it is safer to refresh terms after registering watcher
try {
- refreshTerms();
+ refreshTerms(true);
} catch (KeeperException e) {
log.warn("Could not refresh terms", e);
}
}
};
Stat stat = new Stat();
- byte[] data = zkClient.getData(znodePath, watcher, stat, true);
+ byte[] data = zkClient.getData(znodePath, setWatch ? watcher : null, stat, true);
ConcurrentHashMap<String,Long> values = new ConcurrentHashMap<>((Map<String,Long>) Utils.fromJSON(data));
log.info("refresh shard terms to zk version {}", stat.getVersion());
newTerms = new ShardTerms(values, stat.getVersion());
diff --git a/solr/core/src/java/org/apache/solr/handler/admin/PrepRecoveryOp.java b/solr/core/src/java/org/apache/solr/handler/admin/PrepRecoveryOp.java
index 26bc283..dadaa8b 100644
--- a/solr/core/src/java/org/apache/solr/handler/admin/PrepRecoveryOp.java
+++ b/solr/core/src/java/org/apache/solr/handler/admin/PrepRecoveryOp.java
@@ -104,7 +104,7 @@ class PrepRecoveryOp implements CoreAdminHandler.CoreAdminOp {
// This core already see replica as RECOVERING
// so it is guarantees that a live-fetch will be enough for this core to see max term published
log.info("refresh shard terms for core {}", cname);
- shardTerms.refreshTerms();
+ shardTerms.refreshTerms(false);
}
} catch (NullPointerException e) {
if (log.isDebugEnabled()) log.debug("No shards found", e);
diff --git a/solr/core/src/java/org/apache/solr/servlet/StopJetty.java b/solr/core/src/java/org/apache/solr/servlet/StopJetty.java
index 869e771..83e324b 100644
--- a/solr/core/src/java/org/apache/solr/servlet/StopJetty.java
+++ b/solr/core/src/java/org/apache/solr/servlet/StopJetty.java
@@ -18,7 +18,7 @@ public class StopJetty {
public static void main(String[] args) {
int port = Integer.getInteger("STOP.PORT",-1);
String key = System.getProperty("STOP.KEY",null);
- int timeout = Integer.getInteger("STOP.WAIT",30);
+ int timeout = Integer.getInteger("STOP.WAIT",0);
stop(port,key,timeout);
}
diff --git a/solr/packaging/build.gradle b/solr/packaging/build.gradle
index 98503c6..db57368 100644
--- a/solr/packaging/build.gradle
+++ b/solr/packaging/build.gradle
@@ -21,6 +21,7 @@
plugins {
id 'base'
id 'distribution'
+ id "org.beryx.runtime" version "1.11.7"
}
description = 'Solr packaging'
@@ -139,4 +140,16 @@ task dev(type: Copy) {
into devDir
}
+runtime {
+ options = ['--strip-debug', '--compress', '2', '--no-header-files', '--no-man-pages']
+ modules = ['jdk.management', 'java.naming', 'java.xml', 'java.instrument', 'java.desktop', 'java.sql']
+}
+
+tasks.runtime.doLast {
+ copy {
+ from installDist.outputs
+ into("$buildDir/image/bin")
+ }
+}
+
assemble.dependsOn installDist