You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by us...@apache.org on 2017/10/13 21:30:16 UTC
lucene-solr:branch_6_6: SOLR-11482: Disable RunExecutableListener by
default
Repository: lucene-solr
Updated Branches:
refs/heads/branch_6_6 f9fd6e9e2 -> c91e7f029
SOLR-11482: Disable RunExecutableListener by default
Project: http://git-wip-us.apache.org/repos/asf/lucene-solr/repo
Commit: http://git-wip-us.apache.org/repos/asf/lucene-solr/commit/c91e7f02
Tree: http://git-wip-us.apache.org/repos/asf/lucene-solr/tree/c91e7f02
Diff: http://git-wip-us.apache.org/repos/asf/lucene-solr/diff/c91e7f02
Branch: refs/heads/branch_6_6
Commit: c91e7f029db81ec2339b739bb238b045b2d41177
Parents: f9fd6e9
Author: Uwe Schindler <us...@apache.org>
Authored: Fri Oct 13 18:49:58 2017 +0200
Committer: Uwe Schindler <us...@apache.org>
Committed: Fri Oct 13 19:51:49 2017 +0200
----------------------------------------------------------------------
solr/CHANGES.txt | 6 +++++
.../solr/collection1/conf/solrconfig.xml | 25 ------------------
.../solr/collection1/conf/solrconfig.xml | 18 -------------
.../uima/solr/collection1/conf/solrconfig.xml | 25 ------------------
.../uima/uima-tokenizers-solrconfig.xml | 27 +-------------------
.../apache/solr/core/RunExecutableListener.java | 27 +++++++++++++++++---
.../conf/solrconfig-analytics-query.xml | 17 ------------
.../conf/solrconfig-collapseqparser.xml | 17 ------------
.../collection1/conf/solrconfig-elevate.xml | 17 ------------
.../conf/solrconfig-plugcollector.xml | 16 ------------
.../solr/collection1/conf/solrconfig.xml | 17 ------------
.../example-DIH/solr/db/conf/solrconfig.xml | 23 -----------------
.../example-DIH/solr/mail/conf/solrconfig.xml | 23 -----------------
.../example-DIH/solr/solr/conf/solrconfig.xml | 23 -----------------
solr/example/files/conf/solrconfig.xml | 23 -----------------
.../basic_configs/conf/solrconfig.xml | 23 -----------------
.../conf/solrconfig.xml | 23 -----------------
.../conf/solrconfig.xml | 23 -----------------
18 files changed, 31 insertions(+), 342 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/c91e7f02/solr/CHANGES.txt
----------------------------------------------------------------------
diff --git a/solr/CHANGES.txt b/solr/CHANGES.txt
index 4f48405..b5d0cdf 100644
--- a/solr/CHANGES.txt
+++ b/solr/CHANGES.txt
@@ -35,6 +35,12 @@ Upgrade Notes
* SOLR-11477: in the XML query parser (defType=xmlparser or {!xmlparser ... })
the resolving of external entities is now disallowed by default.
+* SOLR-11482: RunExecutableListener was deprecated and is disabled by default for
+ security reasons. Legacy applications still using it must explicitely pass
+ '-Dsolr.enableRunExecutableListener=true' to the Solr command line.
+ Be aware that you should really disable API-based config editing at the same
+ time, using '-Ddisable.configEdit=true'! (Uwe Schindler)
+
Bug Fixes
----------------------
http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/c91e7f02/solr/contrib/clustering/src/test-files/clustering/solr/collection1/conf/solrconfig.xml
----------------------------------------------------------------------
diff --git a/solr/contrib/clustering/src/test-files/clustering/solr/collection1/conf/solrconfig.xml b/solr/contrib/clustering/src/test-files/clustering/solr/collection1/conf/solrconfig.xml
index 6482286..da6e8b7 100644
--- a/solr/contrib/clustering/src/test-files/clustering/solr/collection1/conf/solrconfig.xml
+++ b/solr/contrib/clustering/src/test-files/clustering/solr/collection1/conf/solrconfig.xml
@@ -63,31 +63,6 @@
</autoCommit>
-->
- <!-- The RunExecutableListener executes an external command.
- exe - the name of the executable to run
- dir - dir to use as the current working directory. default="."
- wait - the calling thread waits until the executable returns. default="true"
- args - the arguments to pass to the program. default=nothing
- env - environment variables to set. default=nothing
- -->
- <!-- A postCommit event is fired after every commit or optimize command
- <listener event="postCommit" class="solr.RunExecutableListener">
- <str name="exe">solr/bin/snapshooter</str>
- <str name="dir">.</str>
- <bool name="wait">true</bool>
- <arr name="args"> <str>arg1</str> <str>arg2</str> </arr>
- <arr name="env"> <str>MYVAR=val1</str> </arr>
- </listener>
- -->
- <!-- A postOptimize event is fired only after every optimize command, useful
- in conjunction with index distribution to only distribute optimized indicies
- <listener event="postOptimize" class="solr.RunExecutableListener">
- <str name="exe">snapshooter</str>
- <str name="dir">solr/bin</str>
- <bool name="wait">true</bool>
- </listener>
- -->
-
</updateHandler>
http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/c91e7f02/solr/contrib/extraction/src/test-files/extraction/solr/collection1/conf/solrconfig.xml
----------------------------------------------------------------------
diff --git a/solr/contrib/extraction/src/test-files/extraction/solr/collection1/conf/solrconfig.xml b/solr/contrib/extraction/src/test-files/extraction/solr/collection1/conf/solrconfig.xml
index ed33c6b..1fed294 100644
--- a/solr/contrib/extraction/src/test-files/extraction/solr/collection1/conf/solrconfig.xml
+++ b/solr/contrib/extraction/src/test-files/extraction/solr/collection1/conf/solrconfig.xml
@@ -40,24 +40,6 @@
</autoCommit>
-->
- <!-- The RunExecutableListener executes an external command.
- exe - the name of the executable to run
- dir - dir to use as the current working directory. default="."
- wait - the calling thread waits until the executable returns. default="true"
- args - the arguments to pass to the program. default=nothing
- env - environment variables to set. default=nothing
- -->
- <!-- A postCommit event is fired after every commit
- <listener event="postCommit" class="solr.RunExecutableListener">
- <str name="exe">/var/opt/resin3/__PORT__/scripts/solr/snapshooter</str>
- <str name="dir">/var/opt/resin3/__PORT__</str>
- <bool name="wait">true</bool>
- <arr name="args"> <str>arg1</str> <str>arg2</str> </arr>
- <arr name="env"> <str>MYVAR=val1</str> </arr>
- </listener>
- -->
-
-
</updateHandler>
http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/c91e7f02/solr/contrib/uima/src/test-files/uima/solr/collection1/conf/solrconfig.xml
----------------------------------------------------------------------
diff --git a/solr/contrib/uima/src/test-files/uima/solr/collection1/conf/solrconfig.xml b/solr/contrib/uima/src/test-files/uima/solr/collection1/conf/solrconfig.xml
index d527bf2..fad7eb5 100644
--- a/solr/contrib/uima/src/test-files/uima/solr/collection1/conf/solrconfig.xml
+++ b/solr/contrib/uima/src/test-files/uima/solr/collection1/conf/solrconfig.xml
@@ -101,31 +101,6 @@
</autoCommit>
-->
-
- <!--
- The RunExecutableListener executes an external command from a hook
- such as postCommit or postOptimize. exe - the name of the
- executable to run dir - dir to use as the current working
- directory. default="." wait - the calling thread waits until the
- executable returns. default="true" args - the arguments to pass to
- the program. default=nothing env - environment variables to set.
- default=nothing
- -->
- <!--
- A postCommit event is fired after every commit or optimize command
- <listener event="postCommit" class="solr.RunExecutableListener">
- <str name="exe">solr/bin/snapshooter</str> <str name="dir">.</str>
- <bool name="wait">true</bool> <arr name="args"> <str>arg1</str>
- <str>arg2</str> </arr> <arr name="env"> <str>MYVAR=val1</str>
- </arr> </listener>
- -->
- <!--
- A postOptimize event is fired only after every optimize command
- <listener event="postOptimize" class="solr.RunExecutableListener">
- <str name="exe">snapshooter</str> <str name="dir">solr/bin</str>
- <bool name="wait">true</bool> </listener>
- -->
-
</updateHandler>
<!--
http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/c91e7f02/solr/contrib/uima/src/test-files/uima/uima-tokenizers-solrconfig.xml
----------------------------------------------------------------------
diff --git a/solr/contrib/uima/src/test-files/uima/uima-tokenizers-solrconfig.xml b/solr/contrib/uima/src/test-files/uima/uima-tokenizers-solrconfig.xml
index e33def7..e642498 100644
--- a/solr/contrib/uima/src/test-files/uima/uima-tokenizers-solrconfig.xml
+++ b/solr/contrib/uima/src/test-files/uima/uima-tokenizers-solrconfig.xml
@@ -99,32 +99,7 @@
<autoCommit> <maxDocs>10000</maxDocs> <maxTime>1000</maxTime>
</autoCommit>
-->
-
-
- <!--
- The RunExecutableListener executes an external command from a hook
- such as postCommit or postOptimize. exe - the name of the
- executable to run dir - dir to use as the current working
- directory. default="." wait - the calling thread waits until the
- executable returns. default="true" args - the arguments to pass to
- the program. default=nothing env - environment variables to set.
- default=nothing
- -->
- <!--
- A postCommit event is fired after every commit or optimize command
- <listener event="postCommit" class="solr.RunExecutableListener">
- <str name="exe">solr/bin/snapshooter</str> <str name="dir">.</str>
- <bool name="wait">true</bool> <arr name="args"> <str>arg1</str>
- <str>arg2</str> </arr> <arr name="env"> <str>MYVAR=val1</str>
- </arr> </listener>
- -->
- <!--
- A postOptimize event is fired only after every optimize command
- <listener event="postOptimize" class="solr.RunExecutableListener">
- <str name="exe">snapshooter</str> <str name="dir">solr/bin</str>
- <bool name="wait">true</bool> </listener>
- -->
-
+
</updateHandler>
<!--
http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/c91e7f02/solr/core/src/java/org/apache/solr/core/RunExecutableListener.java
----------------------------------------------------------------------
diff --git a/solr/core/src/java/org/apache/solr/core/RunExecutableListener.java b/solr/core/src/java/org/apache/solr/core/RunExecutableListener.java
index c6d0090..5141958 100644
--- a/solr/core/src/java/org/apache/solr/core/RunExecutableListener.java
+++ b/solr/core/src/java/org/apache/solr/core/RunExecutableListener.java
@@ -19,6 +19,7 @@ package org.apache.solr.core;
import org.apache.solr.common.SolrException;
import org.apache.solr.common.SolrException.ErrorCode;
import org.apache.solr.common.util.NamedList;
+import org.apache.solr.handler.SolrConfigHandler;
import org.apache.solr.search.SolrIndexSearcher;
import org.apache.solr.util.plugin.SolrCoreAware;
import org.slf4j.Logger;
@@ -28,16 +29,31 @@ import java.io.File;
import java.io.IOException;
import java.lang.invoke.MethodHandles;
import java.util.List;
+import java.util.Locale;
import java.util.ArrayList;
/**
+ * Runs native programs on IndexWriter events. Do not use anymore!
+ * @deprecated and disabled for security reasons!
*/
-class RunExecutableListener extends AbstractSolrEventListener implements SolrCoreAware {
+@Deprecated
+public class RunExecutableListener extends AbstractSolrEventListener implements SolrCoreAware {
private static final Logger log = LoggerFactory.getLogger(MethodHandles.lookup().lookupClass());
+ public static final String ENABLED_ARG = "solr.enableRunExecutableListener";
+
+ private static final String WARNING_MESSAGE = String.format(Locale.ENGLISH,
+ "RunExecutableListener is deprecated and disabled by default for security reasons. Legacy applications still using it "
+ + "must explicitely pass '-D%s=true' to the Solr command line. Be aware that you should really disable API-based config editing "
+ + "at the same time, using '-D%s=true'!",
+ ENABLED_ARG, SolrConfigHandler.CONFIGSET_EDITING_DISABLED_ARG);
+
+ private static final boolean enabled = Boolean.getBoolean(ENABLED_ARG);
+
public RunExecutableListener(SolrCore core) {
super(core);
}
+
protected String[] cmd;
protected File dir;
protected String[] envp;
@@ -75,17 +91,22 @@ class RunExecutableListener extends AbstractSolrEventListener implements SolrCor
+ " and this operation is not available for collections with untrusted configsets. To have this component, re-upload the configset"
+ " after enabling authentication and authorization.");
}
+ log.warn(WARNING_MESSAGE);
}
/**
* External executable listener.
*
* @param callback Unused (As of solr 1.4-dev)
- * @return Error code indicating if the command has executed successfully. <br />
- * 0 , indicates normal termination.<br />
+ * @return Error code indicating if the command has executed successfully.<br>
+ * 0 , indicates normal termination.<br>
* non-zero , otherwise.
*/
protected int exec(String callback) {
+ if (!enabled) {
+ throw new SolrException(ErrorCode.UNAUTHORIZED, WARNING_MESSAGE);
+ }
+
int ret = 0;
try {
http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/c91e7f02/solr/core/src/test-files/solr/collection1/conf/solrconfig-analytics-query.xml
----------------------------------------------------------------------
diff --git a/solr/core/src/test-files/solr/collection1/conf/solrconfig-analytics-query.xml b/solr/core/src/test-files/solr/collection1/conf/solrconfig-analytics-query.xml
index b5959cc..eda1a41 100644
--- a/solr/core/src/test-files/solr/collection1/conf/solrconfig-analytics-query.xml
+++ b/solr/core/src/test-files/solr/collection1/conf/solrconfig-analytics-query.xml
@@ -62,23 +62,6 @@
</autoCommit>
-->
- <!-- The RunExecutableListener executes an external command.
- exe - the name of the executable to run
- dir - dir to use as the current working directory. default="."
- wait - the calling thread waits until the executable returns. default="true"
- args - the arguments to pass to the program. default=nothing
- env - environment variables to set. default=nothing
- -->
- <!-- A postCommit event is fired after every commit
- <listener event="postCommit" class="solr.RunExecutableListener">
- <str name="exe">/var/opt/resin3/__PORT__/scripts/solr/snapshooter</str>
- <str name="dir">/var/opt/resin3/__PORT__</str>
- <bool name="wait">true</bool>
- <arr name="args"> <str>arg1</str> <str>arg2</str> </arr>
- <arr name="env"> <str>MYVAR=val1</str> </arr>
- </listener>
- -->
-
<updateLog enable="${enable.update.log:true}">
<str name="dir">${solr.ulog.dir:}</str>
</updateLog>
http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/c91e7f02/solr/core/src/test-files/solr/collection1/conf/solrconfig-collapseqparser.xml
----------------------------------------------------------------------
diff --git a/solr/core/src/test-files/solr/collection1/conf/solrconfig-collapseqparser.xml b/solr/core/src/test-files/solr/collection1/conf/solrconfig-collapseqparser.xml
index 77b456c..57e58de 100644
--- a/solr/core/src/test-files/solr/collection1/conf/solrconfig-collapseqparser.xml
+++ b/solr/core/src/test-files/solr/collection1/conf/solrconfig-collapseqparser.xml
@@ -62,23 +62,6 @@
</autoCommit>
-->
- <!-- The RunExecutableListener executes an external command.
- exe - the name of the executable to run
- dir - dir to use as the current working directory. default="."
- wait - the calling thread waits until the executable returns. default="true"
- args - the arguments to pass to the program. default=nothing
- env - environment variables to set. default=nothing
- -->
- <!-- A postCommit event is fired after every commit
- <listener event="postCommit" class="solr.RunExecutableListener">
- <str name="exe">/var/opt/resin3/__PORT__/scripts/solr/snapshooter</str>
- <str name="dir">/var/opt/resin3/__PORT__</str>
- <bool name="wait">true</bool>
- <arr name="args"> <str>arg1</str> <str>arg2</str> </arr>
- <arr name="env"> <str>MYVAR=val1</str> </arr>
- </listener>
- -->
-
<updateLog enable="${enable.update.log:true}">
<str name="dir">${solr.ulog.dir:}</str>
</updateLog>
http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/c91e7f02/solr/core/src/test-files/solr/collection1/conf/solrconfig-elevate.xml
----------------------------------------------------------------------
diff --git a/solr/core/src/test-files/solr/collection1/conf/solrconfig-elevate.xml b/solr/core/src/test-files/solr/collection1/conf/solrconfig-elevate.xml
index e190d68..8ce7bf9 100644
--- a/solr/core/src/test-files/solr/collection1/conf/solrconfig-elevate.xml
+++ b/solr/core/src/test-files/solr/collection1/conf/solrconfig-elevate.xml
@@ -43,23 +43,6 @@
</autoCommit>
-->
- <!-- The RunExecutableListener executes an external command.
- exe - the name of the executable to run
- dir - dir to use as the current working directory. default="."
- wait - the calling thread waits until the executable returns. default="true"
- args - the arguments to pass to the program. default=nothing
- env - environment variables to set. default=nothing
- -->
- <!-- A postCommit event is fired after every commit
- <listener event="postCommit" class="solr.RunExecutableListener">
- <str name="exe">/var/opt/resin3/__PORT__/scripts/solr/snapshooter</str>
- <str name="dir">/var/opt/resin3/__PORT__</str>
- <bool name="wait">true</bool>
- <arr name="args"> <str>arg1</str> <str>arg2</str> </arr>
- <arr name="env"> <str>MYVAR=val1</str> </arr>
- </listener>
- -->
-
</updateHandler>
<query>
http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/c91e7f02/solr/core/src/test-files/solr/collection1/conf/solrconfig-plugcollector.xml
----------------------------------------------------------------------
diff --git a/solr/core/src/test-files/solr/collection1/conf/solrconfig-plugcollector.xml b/solr/core/src/test-files/solr/collection1/conf/solrconfig-plugcollector.xml
index 75f7ced..9298d03 100644
--- a/solr/core/src/test-files/solr/collection1/conf/solrconfig-plugcollector.xml
+++ b/solr/core/src/test-files/solr/collection1/conf/solrconfig-plugcollector.xml
@@ -60,22 +60,6 @@
<maxTime>3600000</maxTime>
</autoCommit>
-->
- <!-- The RunExecutableListener executes an external command.
- exe - the name of the executable to run
- dir - dir to use as the current working directory. default="."
- wait - the calling thread waits until the executable returns. default="true"
- args - the arguments to pass to the program. default=nothing
- env - environment variables to set. default=nothing
- -->
- <!-- A postCommit event is fired after every commit
- <listener event="postCommit" class="solr.RunExecutableListener">
- <str name="exe">/var/opt/resin3/__PORT__/scripts/solr/snapshooter</str>
- <str name="dir">/var/opt/resin3/__PORT__</str>
- <bool name="wait">true</bool>
- <arr name="args"> <str>arg1</str> <str>arg2</str> </arr>
- <arr name="env"> <str>MYVAR=val1</str> </arr>
- </listener>
- -->
<updateLog enable="${enable.update.log:true}">
<str name="dir">${solr.ulog.dir:}</str>
http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/c91e7f02/solr/core/src/test-files/solr/collection1/conf/solrconfig.xml
----------------------------------------------------------------------
diff --git a/solr/core/src/test-files/solr/collection1/conf/solrconfig.xml b/solr/core/src/test-files/solr/collection1/conf/solrconfig.xml
index 58f9551..a649caf 100644
--- a/solr/core/src/test-files/solr/collection1/conf/solrconfig.xml
+++ b/solr/core/src/test-files/solr/collection1/conf/solrconfig.xml
@@ -69,23 +69,6 @@
<maxTime>3600000</maxTime>
</autoCommit>
-->
-
- <!-- The RunExecutableListener executes an external command.
- exe - the name of the executable to run
- dir - dir to use as the current working directory. default="."
- wait - the calling thread waits until the executable returns. default="true"
- args - the arguments to pass to the program. default=nothing
- env - environment variables to set. default=nothing
- -->
- <!-- A postCommit event is fired after every commit
- <listener event="postCommit" class="solr.RunExecutableListener">
- <str name="exe">/var/opt/resin3/__PORT__/scripts/solr/snapshooter</str>
- <str name="dir">/var/opt/resin3/__PORT__</str>
- <bool name="wait">true</bool>
- <arr name="args"> <str>arg1</str> <str>arg2</str> </arr>
- <arr name="env"> <str>MYVAR=val1</str> </arr>
- </listener>
- -->
<updateLog enable="${enable.update.log:true}">
<str name="dir">${solr.ulog.dir:}</str>
http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/c91e7f02/solr/example/example-DIH/solr/db/conf/solrconfig.xml
----------------------------------------------------------------------
diff --git a/solr/example/example-DIH/solr/db/conf/solrconfig.xml b/solr/example/example-DIH/solr/db/conf/solrconfig.xml
index 4bf01aa..37859a6 100644
--- a/solr/example/example-DIH/solr/db/conf/solrconfig.xml
+++ b/solr/example/example-DIH/solr/db/conf/solrconfig.xml
@@ -322,30 +322,7 @@
postCommit - fired after every commit or optimize command
postOptimize - fired after every optimize command
-->
- <!-- The RunExecutableListener executes an external command from a
- hook such as postCommit or postOptimize.
- exe - the name of the executable to run
- dir - dir to use as the current working directory. (default=".")
- wait - the calling thread waits until the executable returns.
- (default="true")
- args - the arguments to pass to the program. (default is none)
- env - environment variables to set. (default is none)
- -->
- <!-- This example shows how RunExecutableListener could be used
- with the script based replication...
- http://wiki.apache.org/solr/CollectionDistribution
- -->
- <!--
- <listener event="postCommit" class="solr.RunExecutableListener">
- <str name="exe">solr/bin/snapshooter</str>
- <str name="dir">.</str>
- <bool name="wait">true</bool>
- <arr name="args"> <str>arg1</str> <str>arg2</str> </arr>
- <arr name="env"> <str>MYVAR=val1</str> </arr>
- </listener>
- -->
-
</updateHandler>
<!-- IndexReaderFactory
http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/c91e7f02/solr/example/example-DIH/solr/mail/conf/solrconfig.xml
----------------------------------------------------------------------
diff --git a/solr/example/example-DIH/solr/mail/conf/solrconfig.xml b/solr/example/example-DIH/solr/mail/conf/solrconfig.xml
index 93fe7d0..faa3ec6 100644
--- a/solr/example/example-DIH/solr/mail/conf/solrconfig.xml
+++ b/solr/example/example-DIH/solr/mail/conf/solrconfig.xml
@@ -325,30 +325,7 @@
postCommit - fired after every commit or optimize command
postOptimize - fired after every optimize command
-->
- <!-- The RunExecutableListener executes an external command from a
- hook such as postCommit or postOptimize.
- exe - the name of the executable to run
- dir - dir to use as the current working directory. (default=".")
- wait - the calling thread waits until the executable returns.
- (default="true")
- args - the arguments to pass to the program. (default is none)
- env - environment variables to set. (default is none)
- -->
- <!-- This example shows how RunExecutableListener could be used
- with the script based replication...
- http://wiki.apache.org/solr/CollectionDistribution
- -->
- <!--
- <listener event="postCommit" class="solr.RunExecutableListener">
- <str name="exe">solr/bin/snapshooter</str>
- <str name="dir">.</str>
- <bool name="wait">true</bool>
- <arr name="args"> <str>arg1</str> <str>arg2</str> </arr>
- <arr name="env"> <str>MYVAR=val1</str> </arr>
- </listener>
- -->
-
</updateHandler>
<!-- IndexReaderFactory
http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/c91e7f02/solr/example/example-DIH/solr/solr/conf/solrconfig.xml
----------------------------------------------------------------------
diff --git a/solr/example/example-DIH/solr/solr/conf/solrconfig.xml b/solr/example/example-DIH/solr/solr/conf/solrconfig.xml
index 0aa649f..340962d 100644
--- a/solr/example/example-DIH/solr/solr/conf/solrconfig.xml
+++ b/solr/example/example-DIH/solr/solr/conf/solrconfig.xml
@@ -322,30 +322,7 @@
postCommit - fired after every commit or optimize command
postOptimize - fired after every optimize command
-->
- <!-- The RunExecutableListener executes an external command from a
- hook such as postCommit or postOptimize.
- exe - the name of the executable to run
- dir - dir to use as the current working directory. (default=".")
- wait - the calling thread waits until the executable returns.
- (default="true")
- args - the arguments to pass to the program. (default is none)
- env - environment variables to set. (default is none)
- -->
- <!-- This example shows how RunExecutableListener could be used
- with the script based replication...
- http://wiki.apache.org/solr/CollectionDistribution
- -->
- <!--
- <listener event="postCommit" class="solr.RunExecutableListener">
- <str name="exe">solr/bin/snapshooter</str>
- <str name="dir">.</str>
- <bool name="wait">true</bool>
- <arr name="args"> <str>arg1</str> <str>arg2</str> </arr>
- <arr name="env"> <str>MYVAR=val1</str> </arr>
- </listener>
- -->
-
</updateHandler>
<!-- IndexReaderFactory
http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/c91e7f02/solr/example/files/conf/solrconfig.xml
----------------------------------------------------------------------
diff --git a/solr/example/files/conf/solrconfig.xml b/solr/example/files/conf/solrconfig.xml
index bfd546f..524cd7a 100644
--- a/solr/example/files/conf/solrconfig.xml
+++ b/solr/example/files/conf/solrconfig.xml
@@ -323,30 +323,7 @@
postCommit - fired after every commit or optimize command
postOptimize - fired after every optimize command
-->
- <!-- The RunExecutableListener executes an external command from a
- hook such as postCommit or postOptimize.
- exe - the name of the executable to run
- dir - dir to use as the current working directory. (default=".")
- wait - the calling thread waits until the executable returns.
- (default="true")
- args - the arguments to pass to the program. (default is none)
- env - environment variables to set. (default is none)
- -->
- <!-- This example shows how RunExecutableListener could be used
- with the script based replication...
- http://wiki.apache.org/solr/CollectionDistribution
- -->
- <!--
- <listener event="postCommit" class="solr.RunExecutableListener">
- <str name="exe">solr/bin/snapshooter</str>
- <str name="dir">.</str>
- <bool name="wait">true</bool>
- <arr name="args"> <str>arg1</str> <str>arg2</str> </arr>
- <arr name="env"> <str>MYVAR=val1</str> </arr>
- </listener>
- -->
-
</updateHandler>
<!-- IndexReaderFactory
http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/c91e7f02/solr/server/solr/configsets/basic_configs/conf/solrconfig.xml
----------------------------------------------------------------------
diff --git a/solr/server/solr/configsets/basic_configs/conf/solrconfig.xml b/solr/server/solr/configsets/basic_configs/conf/solrconfig.xml
index b96ed50..c54d360 100644
--- a/solr/server/solr/configsets/basic_configs/conf/solrconfig.xml
+++ b/solr/server/solr/configsets/basic_configs/conf/solrconfig.xml
@@ -332,30 +332,7 @@
postCommit - fired after every commit or optimize command
postOptimize - fired after every optimize command
-->
- <!-- The RunExecutableListener executes an external command from a
- hook such as postCommit or postOptimize.
- exe - the name of the executable to run
- dir - dir to use as the current working directory. (default=".")
- wait - the calling thread waits until the executable returns.
- (default="true")
- args - the arguments to pass to the program. (default is none)
- env - environment variables to set. (default is none)
- -->
- <!-- This example shows how RunExecutableListener could be used
- with the script based replication...
- http://wiki.apache.org/solr/CollectionDistribution
- -->
- <!--
- <listener event="postCommit" class="solr.RunExecutableListener">
- <str name="exe">solr/bin/snapshooter</str>
- <str name="dir">.</str>
- <bool name="wait">true</bool>
- <arr name="args"> <str>arg1</str> <str>arg2</str> </arr>
- <arr name="env"> <str>MYVAR=val1</str> </arr>
- </listener>
- -->
-
</updateHandler>
<!-- IndexReaderFactory
http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/c91e7f02/solr/server/solr/configsets/data_driven_schema_configs/conf/solrconfig.xml
----------------------------------------------------------------------
diff --git a/solr/server/solr/configsets/data_driven_schema_configs/conf/solrconfig.xml b/solr/server/solr/configsets/data_driven_schema_configs/conf/solrconfig.xml
index c8a8927..c70bf46 100644
--- a/solr/server/solr/configsets/data_driven_schema_configs/conf/solrconfig.xml
+++ b/solr/server/solr/configsets/data_driven_schema_configs/conf/solrconfig.xml
@@ -332,30 +332,7 @@
postCommit - fired after every commit or optimize command
postOptimize - fired after every optimize command
-->
- <!-- The RunExecutableListener executes an external command from a
- hook such as postCommit or postOptimize.
- exe - the name of the executable to run
- dir - dir to use as the current working directory. (default=".")
- wait - the calling thread waits until the executable returns.
- (default="true")
- args - the arguments to pass to the program. (default is none)
- env - environment variables to set. (default is none)
- -->
- <!-- This example shows how RunExecutableListener could be used
- with the script based replication...
- http://wiki.apache.org/solr/CollectionDistribution
- -->
- <!--
- <listener event="postCommit" class="solr.RunExecutableListener">
- <str name="exe">solr/bin/snapshooter</str>
- <str name="dir">.</str>
- <bool name="wait">true</bool>
- <arr name="args"> <str>arg1</str> <str>arg2</str> </arr>
- <arr name="env"> <str>MYVAR=val1</str> </arr>
- </listener>
- -->
-
</updateHandler>
<!-- IndexReaderFactory
http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/c91e7f02/solr/server/solr/configsets/sample_techproducts_configs/conf/solrconfig.xml
----------------------------------------------------------------------
diff --git a/solr/server/solr/configsets/sample_techproducts_configs/conf/solrconfig.xml b/solr/server/solr/configsets/sample_techproducts_configs/conf/solrconfig.xml
index 830f094..a2315f9 100644
--- a/solr/server/solr/configsets/sample_techproducts_configs/conf/solrconfig.xml
+++ b/solr/server/solr/configsets/sample_techproducts_configs/conf/solrconfig.xml
@@ -338,30 +338,7 @@
postCommit - fired after every commit or optimize command
postOptimize - fired after every optimize command
-->
- <!-- The RunExecutableListener executes an external command from a
- hook such as postCommit or postOptimize.
- exe - the name of the executable to run
- dir - dir to use as the current working directory. (default=".")
- wait - the calling thread waits until the executable returns.
- (default="true")
- args - the arguments to pass to the program. (default is none)
- env - environment variables to set. (default is none)
- -->
- <!-- This example shows how RunExecutableListener could be used
- with the script based replication...
- http://wiki.apache.org/solr/CollectionDistribution
- -->
- <!--
- <listener event="postCommit" class="solr.RunExecutableListener">
- <str name="exe">solr/bin/snapshooter</str>
- <str name="dir">.</str>
- <bool name="wait">true</bool>
- <arr name="args"> <str>arg1</str> <str>arg2</str> </arr>
- <arr name="env"> <str>MYVAR=val1</str> </arr>
- </listener>
- -->
-
</updateHandler>
<!-- IndexReaderFactory