You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by ab...@apache.org on 2017/10/13 18:04:59 UTC

[1/9] lucene-solr:jira/solr-11285: SOLR-10335 -- Upgrade to Tika 1.16

Repository: lucene-solr
Updated Branches:
  refs/heads/jira/solr-11285 ec0214bb6 -> 06b5e5ebe


SOLR-10335 -- Upgrade to Tika 1.16


Project: http://git-wip-us.apache.org/repos/asf/lucene-solr/repo
Commit: http://git-wip-us.apache.org/repos/asf/lucene-solr/commit/a5c47773
Tree: http://git-wip-us.apache.org/repos/asf/lucene-solr/tree/a5c47773
Diff: http://git-wip-us.apache.org/repos/asf/lucene-solr/diff/a5c47773

Branch: refs/heads/jira/solr-11285
Commit: a5c4777314ca26ad7b6e33060c7a5132a80a1827
Parents: 3012239
Author: tballison <ta...@mitre.org>
Authored: Thu Oct 5 12:22:48 2017 -0400
Committer: tballison <ta...@mitre.org>
Committed: Thu Oct 5 12:22:48 2017 -0400

----------------------------------------------------------------------
 lucene/ivy-versions.properties                  | 22 +++++++++++---------
 lucene/licenses/commons-compress-1.11.jar.sha1  |  1 -
 lucene/licenses/commons-compress-1.14.jar.sha1  |  1 +
 .../morfologik-ukrainian-search-3.7.5.jar.sha1  |  1 -
 solr/contrib/extraction/ivy.xml                 |  5 +++--
 solr/licenses/commons-compress-1.11.jar.sha1    |  1 -
 solr/licenses/commons-compress-1.14.jar.sha1    |  1 +
 solr/licenses/fontbox-2.0.1.jar.sha1            |  1 -
 solr/licenses/fontbox-2.0.6.jar.sha1            |  1 +
 solr/licenses/jackcess-2.1.3.jar.sha1           |  1 -
 solr/licenses/jackcess-2.1.8.jar.sha1           |  1 +
 solr/licenses/jempbox-1.8.12.jar.sha1           |  1 -
 solr/licenses/jempbox-1.8.13.jar.sha1           |  1 +
 solr/licenses/jmatio-1.0.jar.sha1               |  1 -
 solr/licenses/jmatio-1.2.jar.sha1               |  1 +
 solr/licenses/metadata-extractor-2.8.1.jar.sha1 |  1 -
 solr/licenses/metadata-extractor-2.9.1.jar.sha1 |  1 +
 solr/licenses/pdfbox-2.0.1.jar.sha1             |  1 -
 solr/licenses/pdfbox-2.0.6.jar.sha1             |  1 +
 solr/licenses/pdfbox-tools-2.0.1.jar.sha1       |  1 -
 solr/licenses/pdfbox-tools-2.0.6.jar.sha1       |  1 +
 solr/licenses/poi-3.15-beta1.jar.sha1           |  1 -
 solr/licenses/poi-3.17-beta1.jar.sha1           |  1 +
 solr/licenses/poi-ooxml-3.15-beta1.jar.sha1     |  1 -
 solr/licenses/poi-ooxml-3.17-beta1.jar.sha1     |  1 +
 .../poi-ooxml-schemas-3.15-beta1.jar.sha1       |  1 -
 .../poi-ooxml-schemas-3.17-beta1.jar.sha1       |  1 +
 .../licenses/poi-scratchpad-3.15-beta1.jar.sha1 |  1 -
 .../licenses/poi-scratchpad-3.17-beta1.jar.sha1 |  1 +
 solr/licenses/rome-1.0.jar.sha1                 |  1 -
 solr/licenses/rome-1.5.1.jar.sha1               |  1 +
 solr/licenses/tika-core-1.13.jar.sha1           |  1 -
 solr/licenses/tika-core-1.16.jar.sha1           |  1 +
 solr/licenses/tika-java7-1.13.jar.sha1          |  1 -
 solr/licenses/tika-java7-1.16.jar.sha1          |  1 +
 solr/licenses/tika-parsers-1.13.jar.sha1        |  1 -
 solr/licenses/tika-parsers-1.16.jar.sha1        |  1 +
 solr/licenses/tika-xmp-1.13.jar.sha1            |  1 -
 solr/licenses/tika-xmp-1.16.jar.sha1            |  1 +
 solr/licenses/xz-1.5.jar.sha1                   |  1 -
 solr/licenses/xz-1.6.jar.sha1                   |  1 +
 41 files changed, 34 insertions(+), 32 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/a5c47773/lucene/ivy-versions.properties
----------------------------------------------------------------------
diff --git a/lucene/ivy-versions.properties b/lucene/ivy-versions.properties
index 620f713..8ce6006 100644
--- a/lucene/ivy-versions.properties
+++ b/lucene/ivy-versions.properties
@@ -13,7 +13,7 @@ com.carrotsearch.randomizedtesting.version = 2.5.3
 
 
 /com.cybozu.labs/langdetect = 1.1-20120112
-/com.drewnoakes/metadata-extractor = 2.8.1
+/com.drewnoakes/metadata-extractor = 2.9.1
 
 com.fasterxml.jackson.core.version = 2.5.4
 /com.fasterxml.jackson.core/jackson-annotations = ${com.fasterxml.jackson.core.version}
@@ -28,10 +28,11 @@ com.fasterxml.jackson.core.version = 2.5.4
 /com.google.protobuf/protobuf-java = 3.1.0
 /com.googlecode.juniversalchardet/juniversalchardet = 1.0.3
 /com.googlecode.mp4parser/isoparser = 1.1.18
-/com.healthmarketscience.jackcess/jackcess = 2.1.3
+/com.healthmarketscience.jackcess/jackcess = 2.1.8
 /com.ibm.icu/icu4j = 59.1
 /com.pff/java-libpst = 0.8.1
 
+/com.rometools/rome = 1.5.1
 com.sun.jersey.version = 1.9
 /com.sun.jersey/jersey-core = ${com.sun.jersey.version}
 /com.sun.jersey/jersey-server = ${com.sun.jersey.version}
@@ -78,7 +79,6 @@ io.netty.netty-all.version = 4.0.36.Final
 /net.bytebuddy/byte-buddy = 1.6.2
 /net.hydromatic/eigenbase-properties = 1.1.5
 /net.sf.ehcache/ehcache-core = 2.4.4
-/net.sourceforge.jmatio/jmatio = 1.0
 /net.sourceforge.nekohtml/nekohtml = 1.9.17
 /org.antlr/antlr4-runtime = 4.5.1-1
 
@@ -91,7 +91,8 @@ org.apache.calcite.version = 1.13.0
 /org.apache.calcite/calcite-core = ${org.apache.calcite.version}
 /org.apache.calcite/calcite-linq4j = ${org.apache.calcite.version}
 
-/org.apache.commons/commons-compress = 1.11
+/org.apache.commons/commons-collections4 = 4.1
+/org.apache.commons/commons-compress = 1.14
 /org.apache.commons/commons-exec = 1.3
 /org.apache.commons/commons-lang3 = 3.6
 /org.apache.commons/commons-math3 = 3.6.1
@@ -159,19 +160,19 @@ org.apache.james.apache.mime4j.version = 0.7.2
 
 /org.apache.mina/mina-core = 2.0.0-M5
 
-org.apache.pdfbox.version = 2.0.1
+org.apache.pdfbox.version = 2.0.6
 /org.apache.pdfbox/fontbox = ${org.apache.pdfbox.version}
-/org.apache.pdfbox/jempbox = 1.8.12
+/org.apache.pdfbox/jempbox = 1.8.13
 /org.apache.pdfbox/pdfbox = ${org.apache.pdfbox.version}
 /org.apache.pdfbox/pdfbox-tools = ${org.apache.pdfbox.version}
 
-org.apache.poi.version = 3.15-beta1
+org.apache.poi.version = 3.17-beta1
 /org.apache.poi/poi = ${org.apache.poi.version}
 /org.apache.poi/poi-ooxml = ${org.apache.poi.version}
 /org.apache.poi/poi-ooxml-schemas = ${org.apache.poi.version}
 /org.apache.poi/poi-scratchpad = ${org.apache.poi.version}
 
-org.apache.tika.version = 1.13
+org.apache.tika.version = 1.16
 /org.apache.tika/tika-core = ${org.apache.tika.version}
 /org.apache.tika/tika-java7 = ${org.apache.tika.version}
 /org.apache.tika/tika-parsers = ${org.apache.tika.version}
@@ -275,8 +276,9 @@ org.slf4j.version = 1.7.7
 /org.slf4j/slf4j-log4j12 = ${org.slf4j.version}
 /org.slf4j/slf4j-simple = ${org.slf4j.version}
 
-/org.tukaani/xz = 1.5
-/rome/rome = 1.0
+/org.tallison/jmatio = 1.2
+/org.tukaani/xz = 1.6
+
 
 ua.net.nlp.morfologik-ukrainian-search.version = 3.9.0
 /ua.net.nlp/morfologik-ukrainian-search = ${ua.net.nlp.morfologik-ukrainian-search.version}

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/a5c47773/lucene/licenses/commons-compress-1.11.jar.sha1
----------------------------------------------------------------------
diff --git a/lucene/licenses/commons-compress-1.11.jar.sha1 b/lucene/licenses/commons-compress-1.11.jar.sha1
deleted file mode 100644
index 89bab1e..0000000
--- a/lucene/licenses/commons-compress-1.11.jar.sha1
+++ /dev/null
@@ -1 +0,0 @@
-f43ce4c878078cbcfbb061353aa672a4c8e81443

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/a5c47773/lucene/licenses/commons-compress-1.14.jar.sha1
----------------------------------------------------------------------
diff --git a/lucene/licenses/commons-compress-1.14.jar.sha1 b/lucene/licenses/commons-compress-1.14.jar.sha1
new file mode 100644
index 0000000..833f49b
--- /dev/null
+++ b/lucene/licenses/commons-compress-1.14.jar.sha1
@@ -0,0 +1 @@
+7b18320d668ab080758bf5383d6d8fcf750babce

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/a5c47773/lucene/licenses/morfologik-ukrainian-search-3.7.5.jar.sha1
----------------------------------------------------------------------
diff --git a/lucene/licenses/morfologik-ukrainian-search-3.7.5.jar.sha1 b/lucene/licenses/morfologik-ukrainian-search-3.7.5.jar.sha1
deleted file mode 100644
index 8794e71..0000000
--- a/lucene/licenses/morfologik-ukrainian-search-3.7.5.jar.sha1
+++ /dev/null
@@ -1 +0,0 @@
-2b8c8fbd740164d220ca7d18605b8b2092e163e9

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/a5c47773/solr/contrib/extraction/ivy.xml
----------------------------------------------------------------------
diff --git a/solr/contrib/extraction/ivy.xml b/solr/contrib/extraction/ivy.xml
index 42cee8a..1d9d7a3 100644
--- a/solr/contrib/extraction/ivy.xml
+++ b/solr/contrib/extraction/ivy.xml
@@ -50,18 +50,19 @@
     <dependency org="org.apache.poi" name="poi-ooxml" rev="${/org.apache.poi/poi-ooxml}" conf="compile"/>
     <dependency org="org.apache.poi" name="poi-ooxml-schemas" rev="${/org.apache.poi/poi-ooxml-schemas}" conf="compile"/>
     <dependency org="org.apache.xmlbeans" name="xmlbeans" rev="${/org.apache.xmlbeans/xmlbeans}" conf="compile"/>
+    <dependency org="org.apache.commons" name="commons-collections4" rev="${/org.apache.commons/commons-collections4}" conf="compile"/>
     <dependency org="org.ccil.cowan.tagsoup" name="tagsoup" rev="${/org.ccil.cowan.tagsoup/tagsoup}" conf="compile"/>
     <dependency org="com.googlecode.mp4parser" name="isoparser" rev="${/com.googlecode.mp4parser/isoparser}" conf="compile"/>
     <dependency org="org.aspectj" name="aspectjrt" rev="${/org.aspectj/aspectjrt}" conf="compile"/>
     <dependency org="com.drewnoakes" name="metadata-extractor" rev="${/com.drewnoakes/metadata-extractor}" conf="compile"/>
     <dependency org="de.l3s.boilerpipe" name="boilerpipe" rev="${/de.l3s.boilerpipe/boilerpipe}" conf="compile"/>
-    <dependency org="rome" name="rome" rev="${/rome/rome}" conf="compile"/>
+    <dependency org="com.rometools" name="rome" rev="${/com.rometools/rome}" conf="compile"/>
     <dependency org="jdom" name="jdom" rev="${/jdom/jdom}" conf="compile"/>
     <dependency org="com.googlecode.juniversalchardet" name="juniversalchardet" rev="${/com.googlecode.juniversalchardet/juniversalchardet}" conf="compile"/>
     <dependency org="org.tukaani" name="xz" rev="${/org.tukaani/xz}" conf="compile"/>
     <dependency org="com.adobe.xmp" name="xmpcore" rev="${/com.adobe.xmp/xmpcore}" conf="compile"/>
     <dependency org="com.pff" name="java-libpst" rev="${/com.pff/java-libpst}" conf="compile"/>
-    <dependency org="net.sourceforge.jmatio" name="jmatio" rev="${/net.sourceforge.jmatio/jmatio}" conf="compile"/>
+    <dependency org="org.tallison" name="jmatio" rev="${/org.tallison/jmatio}" conf="compile"/>
 
     <!-- Other ExtractingRequestHandler dependencies -->
     <dependency org="com.ibm.icu" name="icu4j" rev="${/com.ibm.icu/icu4j}" conf="compile"/>

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/a5c47773/solr/licenses/commons-compress-1.11.jar.sha1
----------------------------------------------------------------------
diff --git a/solr/licenses/commons-compress-1.11.jar.sha1 b/solr/licenses/commons-compress-1.11.jar.sha1
deleted file mode 100644
index 89bab1e..0000000
--- a/solr/licenses/commons-compress-1.11.jar.sha1
+++ /dev/null
@@ -1 +0,0 @@
-f43ce4c878078cbcfbb061353aa672a4c8e81443

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/a5c47773/solr/licenses/commons-compress-1.14.jar.sha1
----------------------------------------------------------------------
diff --git a/solr/licenses/commons-compress-1.14.jar.sha1 b/solr/licenses/commons-compress-1.14.jar.sha1
new file mode 100644
index 0000000..833f49b
--- /dev/null
+++ b/solr/licenses/commons-compress-1.14.jar.sha1
@@ -0,0 +1 @@
+7b18320d668ab080758bf5383d6d8fcf750babce

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/a5c47773/solr/licenses/fontbox-2.0.1.jar.sha1
----------------------------------------------------------------------
diff --git a/solr/licenses/fontbox-2.0.1.jar.sha1 b/solr/licenses/fontbox-2.0.1.jar.sha1
deleted file mode 100644
index d55b6cb..0000000
--- a/solr/licenses/fontbox-2.0.1.jar.sha1
+++ /dev/null
@@ -1 +0,0 @@
-b9d4f0993e015f3f1ce0be9e7300cf62dd7a7f15

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/a5c47773/solr/licenses/fontbox-2.0.6.jar.sha1
----------------------------------------------------------------------
diff --git a/solr/licenses/fontbox-2.0.6.jar.sha1 b/solr/licenses/fontbox-2.0.6.jar.sha1
new file mode 100644
index 0000000..dc11e43
--- /dev/null
+++ b/solr/licenses/fontbox-2.0.6.jar.sha1
@@ -0,0 +1 @@
+33f44ea67f1b5ab314e2d5768365b1a3e794fb3b

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/a5c47773/solr/licenses/jackcess-2.1.3.jar.sha1
----------------------------------------------------------------------
diff --git a/solr/licenses/jackcess-2.1.3.jar.sha1 b/solr/licenses/jackcess-2.1.3.jar.sha1
deleted file mode 100644
index fb74a27..0000000
--- a/solr/licenses/jackcess-2.1.3.jar.sha1
+++ /dev/null
@@ -1 +0,0 @@
-fe8553847c6744d61e071ef11a6a64010731d241

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/a5c47773/solr/licenses/jackcess-2.1.8.jar.sha1
----------------------------------------------------------------------
diff --git a/solr/licenses/jackcess-2.1.8.jar.sha1 b/solr/licenses/jackcess-2.1.8.jar.sha1
new file mode 100644
index 0000000..ecfca41
--- /dev/null
+++ b/solr/licenses/jackcess-2.1.8.jar.sha1
@@ -0,0 +1 @@
+dfc7156e11ce33bbcb7f4f6724a87b9d969f2fd6

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/a5c47773/solr/licenses/jempbox-1.8.12.jar.sha1
----------------------------------------------------------------------
diff --git a/solr/licenses/jempbox-1.8.12.jar.sha1 b/solr/licenses/jempbox-1.8.12.jar.sha1
deleted file mode 100644
index 9882f8d..0000000
--- a/solr/licenses/jempbox-1.8.12.jar.sha1
+++ /dev/null
@@ -1 +0,0 @@
-426450c573c19f6f2c751a7a52c11931b712c9f6

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/a5c47773/solr/licenses/jempbox-1.8.13.jar.sha1
----------------------------------------------------------------------
diff --git a/solr/licenses/jempbox-1.8.13.jar.sha1 b/solr/licenses/jempbox-1.8.13.jar.sha1
new file mode 100644
index 0000000..b1b5bdc
--- /dev/null
+++ b/solr/licenses/jempbox-1.8.13.jar.sha1
@@ -0,0 +1 @@
+a874cef0ed0e2a8c4cc5ed52c23ba3e6d78eca4e

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/a5c47773/solr/licenses/jmatio-1.0.jar.sha1
----------------------------------------------------------------------
diff --git a/solr/licenses/jmatio-1.0.jar.sha1 b/solr/licenses/jmatio-1.0.jar.sha1
deleted file mode 100644
index 8caf687..0000000
--- a/solr/licenses/jmatio-1.0.jar.sha1
+++ /dev/null
@@ -1 +0,0 @@
-df72993ea17d34c3bacd983558d2970a866abaf6

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/a5c47773/solr/licenses/jmatio-1.2.jar.sha1
----------------------------------------------------------------------
diff --git a/solr/licenses/jmatio-1.2.jar.sha1 b/solr/licenses/jmatio-1.2.jar.sha1
new file mode 100644
index 0000000..5941dc9
--- /dev/null
+++ b/solr/licenses/jmatio-1.2.jar.sha1
@@ -0,0 +1 @@
+69d8f2f49c1503f9b15b0eb50b1905a734a025e2

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/a5c47773/solr/licenses/metadata-extractor-2.8.1.jar.sha1
----------------------------------------------------------------------
diff --git a/solr/licenses/metadata-extractor-2.8.1.jar.sha1 b/solr/licenses/metadata-extractor-2.8.1.jar.sha1
deleted file mode 100644
index d067bbf..0000000
--- a/solr/licenses/metadata-extractor-2.8.1.jar.sha1
+++ /dev/null
@@ -1 +0,0 @@
-120630f96316e0f173aedf0c88bb06c5e146ad96

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/a5c47773/solr/licenses/metadata-extractor-2.9.1.jar.sha1
----------------------------------------------------------------------
diff --git a/solr/licenses/metadata-extractor-2.9.1.jar.sha1 b/solr/licenses/metadata-extractor-2.9.1.jar.sha1
new file mode 100644
index 0000000..fcdcfd6
--- /dev/null
+++ b/solr/licenses/metadata-extractor-2.9.1.jar.sha1
@@ -0,0 +1 @@
+53fdf22be10c9d426ec63431c7342895bc642261

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/a5c47773/solr/licenses/pdfbox-2.0.1.jar.sha1
----------------------------------------------------------------------
diff --git a/solr/licenses/pdfbox-2.0.1.jar.sha1 b/solr/licenses/pdfbox-2.0.1.jar.sha1
deleted file mode 100644
index a96cb90..0000000
--- a/solr/licenses/pdfbox-2.0.1.jar.sha1
+++ /dev/null
@@ -1 +0,0 @@
-dbc69649118b7eff278f228c070a40ee559e1f62

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/a5c47773/solr/licenses/pdfbox-2.0.6.jar.sha1
----------------------------------------------------------------------
diff --git a/solr/licenses/pdfbox-2.0.6.jar.sha1 b/solr/licenses/pdfbox-2.0.6.jar.sha1
new file mode 100644
index 0000000..9c93973
--- /dev/null
+++ b/solr/licenses/pdfbox-2.0.6.jar.sha1
@@ -0,0 +1 @@
+68616a583c5f9b9ba72140364d15a07cd937ce0e

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/a5c47773/solr/licenses/pdfbox-tools-2.0.1.jar.sha1
----------------------------------------------------------------------
diff --git a/solr/licenses/pdfbox-tools-2.0.1.jar.sha1 b/solr/licenses/pdfbox-tools-2.0.1.jar.sha1
deleted file mode 100644
index a38c974..0000000
--- a/solr/licenses/pdfbox-tools-2.0.1.jar.sha1
+++ /dev/null
@@ -1 +0,0 @@
-a585a59c58f822884b1c5e56b670efa9241b699d

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/a5c47773/solr/licenses/pdfbox-tools-2.0.6.jar.sha1
----------------------------------------------------------------------
diff --git a/solr/licenses/pdfbox-tools-2.0.6.jar.sha1 b/solr/licenses/pdfbox-tools-2.0.6.jar.sha1
new file mode 100644
index 0000000..dfc26a1
--- /dev/null
+++ b/solr/licenses/pdfbox-tools-2.0.6.jar.sha1
@@ -0,0 +1 @@
+3b0c2622015c048a29496291cfe44f235f5c7cdf

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/a5c47773/solr/licenses/poi-3.15-beta1.jar.sha1
----------------------------------------------------------------------
diff --git a/solr/licenses/poi-3.15-beta1.jar.sha1 b/solr/licenses/poi-3.15-beta1.jar.sha1
deleted file mode 100644
index a6d9c5e..0000000
--- a/solr/licenses/poi-3.15-beta1.jar.sha1
+++ /dev/null
@@ -1 +0,0 @@
-048bb8326b81323631d9ceb4236cfbd382e56da2

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/a5c47773/solr/licenses/poi-3.17-beta1.jar.sha1
----------------------------------------------------------------------
diff --git a/solr/licenses/poi-3.17-beta1.jar.sha1 b/solr/licenses/poi-3.17-beta1.jar.sha1
new file mode 100644
index 0000000..83a318c
--- /dev/null
+++ b/solr/licenses/poi-3.17-beta1.jar.sha1
@@ -0,0 +1 @@
+d2df762cc8301c257db1fd0f4fc2f37ed9fbbb78

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/a5c47773/solr/licenses/poi-ooxml-3.15-beta1.jar.sha1
----------------------------------------------------------------------
diff --git a/solr/licenses/poi-ooxml-3.15-beta1.jar.sha1 b/solr/licenses/poi-ooxml-3.15-beta1.jar.sha1
deleted file mode 100644
index ea71044..0000000
--- a/solr/licenses/poi-ooxml-3.15-beta1.jar.sha1
+++ /dev/null
@@ -1 +0,0 @@
-81085a47fdf0d74d473d605c6b3784e26731842e

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/a5c47773/solr/licenses/poi-ooxml-3.17-beta1.jar.sha1
----------------------------------------------------------------------
diff --git a/solr/licenses/poi-ooxml-3.17-beta1.jar.sha1 b/solr/licenses/poi-ooxml-3.17-beta1.jar.sha1
new file mode 100644
index 0000000..f16c93f
--- /dev/null
+++ b/solr/licenses/poi-ooxml-3.17-beta1.jar.sha1
@@ -0,0 +1 @@
+96f537614c5f5ec232fb8832313280dcb93c59ab

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/a5c47773/solr/licenses/poi-ooxml-schemas-3.15-beta1.jar.sha1
----------------------------------------------------------------------
diff --git a/solr/licenses/poi-ooxml-schemas-3.15-beta1.jar.sha1 b/solr/licenses/poi-ooxml-schemas-3.15-beta1.jar.sha1
deleted file mode 100644
index 6b094dd..0000000
--- a/solr/licenses/poi-ooxml-schemas-3.15-beta1.jar.sha1
+++ /dev/null
@@ -1 +0,0 @@
-f8bc979ad79908a99483337f1ca2edf78558ac20

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/a5c47773/solr/licenses/poi-ooxml-schemas-3.17-beta1.jar.sha1
----------------------------------------------------------------------
diff --git a/solr/licenses/poi-ooxml-schemas-3.17-beta1.jar.sha1 b/solr/licenses/poi-ooxml-schemas-3.17-beta1.jar.sha1
new file mode 100644
index 0000000..fc99957
--- /dev/null
+++ b/solr/licenses/poi-ooxml-schemas-3.17-beta1.jar.sha1
@@ -0,0 +1 @@
+99811dc063afea4cde813726ba6f45f724bf2c3b

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/a5c47773/solr/licenses/poi-scratchpad-3.15-beta1.jar.sha1
----------------------------------------------------------------------
diff --git a/solr/licenses/poi-scratchpad-3.15-beta1.jar.sha1 b/solr/licenses/poi-scratchpad-3.15-beta1.jar.sha1
deleted file mode 100644
index 5a30126..0000000
--- a/solr/licenses/poi-scratchpad-3.15-beta1.jar.sha1
+++ /dev/null
@@ -1 +0,0 @@
-f4e276aaf97a60a1156388c9e38069122b7ea914

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/a5c47773/solr/licenses/poi-scratchpad-3.17-beta1.jar.sha1
----------------------------------------------------------------------
diff --git a/solr/licenses/poi-scratchpad-3.17-beta1.jar.sha1 b/solr/licenses/poi-scratchpad-3.17-beta1.jar.sha1
new file mode 100644
index 0000000..a2b7c33
--- /dev/null
+++ b/solr/licenses/poi-scratchpad-3.17-beta1.jar.sha1
@@ -0,0 +1 @@
+d4ad39b023c377ec534ab25205344eb79da4996b

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/a5c47773/solr/licenses/rome-1.0.jar.sha1
----------------------------------------------------------------------
diff --git a/solr/licenses/rome-1.0.jar.sha1 b/solr/licenses/rome-1.0.jar.sha1
deleted file mode 100644
index 8481078..0000000
--- a/solr/licenses/rome-1.0.jar.sha1
+++ /dev/null
@@ -1 +0,0 @@
-022b33347f315833e9348cec2751af1a5d5656e4

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/a5c47773/solr/licenses/rome-1.5.1.jar.sha1
----------------------------------------------------------------------
diff --git a/solr/licenses/rome-1.5.1.jar.sha1 b/solr/licenses/rome-1.5.1.jar.sha1
new file mode 100644
index 0000000..f24eb2a
--- /dev/null
+++ b/solr/licenses/rome-1.5.1.jar.sha1
@@ -0,0 +1 @@
+cc3489f066749bede7fc81f4e80c0d8c9534a210

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/a5c47773/solr/licenses/tika-core-1.13.jar.sha1
----------------------------------------------------------------------
diff --git a/solr/licenses/tika-core-1.13.jar.sha1 b/solr/licenses/tika-core-1.13.jar.sha1
deleted file mode 100644
index 90ffc56..0000000
--- a/solr/licenses/tika-core-1.13.jar.sha1
+++ /dev/null
@@ -1 +0,0 @@
-1305c798d41d1d7bbf12cb7c0ca184c98eed25ad

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/a5c47773/solr/licenses/tika-core-1.16.jar.sha1
----------------------------------------------------------------------
diff --git a/solr/licenses/tika-core-1.16.jar.sha1 b/solr/licenses/tika-core-1.16.jar.sha1
new file mode 100644
index 0000000..e8ee028
--- /dev/null
+++ b/solr/licenses/tika-core-1.16.jar.sha1
@@ -0,0 +1 @@
+7b75cb2b65f6d014b6a3e4793835f5759168c34e

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/a5c47773/solr/licenses/tika-java7-1.13.jar.sha1
----------------------------------------------------------------------
diff --git a/solr/licenses/tika-java7-1.13.jar.sha1 b/solr/licenses/tika-java7-1.13.jar.sha1
deleted file mode 100644
index 80d5225..0000000
--- a/solr/licenses/tika-java7-1.13.jar.sha1
+++ /dev/null
@@ -1 +0,0 @@
-d6ffea1f1f76faa01509598b8a31f54b3da124cd

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/a5c47773/solr/licenses/tika-java7-1.16.jar.sha1
----------------------------------------------------------------------
diff --git a/solr/licenses/tika-java7-1.16.jar.sha1 b/solr/licenses/tika-java7-1.16.jar.sha1
new file mode 100644
index 0000000..97a229d
--- /dev/null
+++ b/solr/licenses/tika-java7-1.16.jar.sha1
@@ -0,0 +1 @@
+b4d7dc8dd2f592824cb0fa0677d08fe9bbee2ab4

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/a5c47773/solr/licenses/tika-parsers-1.13.jar.sha1
----------------------------------------------------------------------
diff --git a/solr/licenses/tika-parsers-1.13.jar.sha1 b/solr/licenses/tika-parsers-1.13.jar.sha1
deleted file mode 100644
index 6e704e7..0000000
--- a/solr/licenses/tika-parsers-1.13.jar.sha1
+++ /dev/null
@@ -1 +0,0 @@
-374fde67b9d35f785534b0e6c4953533c31bab5f

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/a5c47773/solr/licenses/tika-parsers-1.16.jar.sha1
----------------------------------------------------------------------
diff --git a/solr/licenses/tika-parsers-1.16.jar.sha1 b/solr/licenses/tika-parsers-1.16.jar.sha1
new file mode 100644
index 0000000..4b16dde
--- /dev/null
+++ b/solr/licenses/tika-parsers-1.16.jar.sha1
@@ -0,0 +1 @@
+bececafbe32c013eae8d3f3cf10d28b136a6f9d7

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/a5c47773/solr/licenses/tika-xmp-1.13.jar.sha1
----------------------------------------------------------------------
diff --git a/solr/licenses/tika-xmp-1.13.jar.sha1 b/solr/licenses/tika-xmp-1.13.jar.sha1
deleted file mode 100644
index 38942cd..0000000
--- a/solr/licenses/tika-xmp-1.13.jar.sha1
+++ /dev/null
@@ -1 +0,0 @@
-1d73457bcc68ba7df72833baa40b29c39ce4a67e

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/a5c47773/solr/licenses/tika-xmp-1.16.jar.sha1
----------------------------------------------------------------------
diff --git a/solr/licenses/tika-xmp-1.16.jar.sha1 b/solr/licenses/tika-xmp-1.16.jar.sha1
new file mode 100644
index 0000000..0c4ce3a
--- /dev/null
+++ b/solr/licenses/tika-xmp-1.16.jar.sha1
@@ -0,0 +1 @@
+06db0bda27d4edf452c5a72a29f78805bfd23a0f

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/a5c47773/solr/licenses/xz-1.5.jar.sha1
----------------------------------------------------------------------
diff --git a/solr/licenses/xz-1.5.jar.sha1 b/solr/licenses/xz-1.5.jar.sha1
deleted file mode 100644
index 2e2d390..0000000
--- a/solr/licenses/xz-1.5.jar.sha1
+++ /dev/null
@@ -1 +0,0 @@
-9c64274b7dbb65288237216e3fae7877fd3f2bee

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/a5c47773/solr/licenses/xz-1.6.jar.sha1
----------------------------------------------------------------------
diff --git a/solr/licenses/xz-1.6.jar.sha1 b/solr/licenses/xz-1.6.jar.sha1
new file mode 100644
index 0000000..30da818
--- /dev/null
+++ b/solr/licenses/xz-1.6.jar.sha1
@@ -0,0 +1 @@
+05b6f921f1810bdf90e25471968f741f87168b64


[2/9] lucene-solr:jira/solr-11285: SOLR-10335 -- Upgrade to Tika 1.16 -- add collections4 sha1 and license/notice info

Posted by ab...@apache.org.
SOLR-10335 -- Upgrade to Tika 1.16 -- add collections4 sha1 and license/notice info


Project: http://git-wip-us.apache.org/repos/asf/lucene-solr/repo
Commit: http://git-wip-us.apache.org/repos/asf/lucene-solr/commit/c501e813
Tree: http://git-wip-us.apache.org/repos/asf/lucene-solr/tree/c501e813
Diff: http://git-wip-us.apache.org/repos/asf/lucene-solr/diff/c501e813

Branch: refs/heads/jira/solr-11285
Commit: c501e8139c569e703c0c2de80173a89ab7fc1c8a
Parents: a5c4777
Author: tballison <ta...@mitre.org>
Authored: Thu Oct 5 12:26:56 2017 -0400
Committer: tballison <ta...@mitre.org>
Committed: Thu Oct 5 12:26:56 2017 -0400

----------------------------------------------------------------------
 solr/licenses/commons-collections4-4.1.jar.sha1 |   1 +
 .../commons-collections4-LICENSE-ASL.txt        | 202 +++++++++++++++++++
 solr/licenses/commons-collections4-NOTICE.txt   |   5 +
 3 files changed, 208 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/c501e813/solr/licenses/commons-collections4-4.1.jar.sha1
----------------------------------------------------------------------
diff --git a/solr/licenses/commons-collections4-4.1.jar.sha1 b/solr/licenses/commons-collections4-4.1.jar.sha1
new file mode 100644
index 0000000..c554bdc
--- /dev/null
+++ b/solr/licenses/commons-collections4-4.1.jar.sha1
@@ -0,0 +1 @@
+a4cf4688fe1c7e3a63aa636cc96d013af537768e

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/c501e813/solr/licenses/commons-collections4-LICENSE-ASL.txt
----------------------------------------------------------------------
diff --git a/solr/licenses/commons-collections4-LICENSE-ASL.txt b/solr/licenses/commons-collections4-LICENSE-ASL.txt
new file mode 100644
index 0000000..d645695
--- /dev/null
+++ b/solr/licenses/commons-collections4-LICENSE-ASL.txt
@@ -0,0 +1,202 @@
+
+                                 Apache License
+                           Version 2.0, January 2004
+                        http://www.apache.org/licenses/
+
+   TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
+
+   1. Definitions.
+
+      "License" shall mean the terms and conditions for use, reproduction,
+      and distribution as defined by Sections 1 through 9 of this document.
+
+      "Licensor" shall mean the copyright owner or entity authorized by
+      the copyright owner that is granting the License.
+
+      "Legal Entity" shall mean the union of the acting entity and all
+      other entities that control, are controlled by, or are under common
+      control with that entity. For the purposes of this definition,
+      "control" means (i) the power, direct or indirect, to cause the
+      direction or management of such entity, whether by contract or
+      otherwise, or (ii) ownership of fifty percent (50%) or more of the
+      outstanding shares, or (iii) beneficial ownership of such entity.
+
+      "You" (or "Your") shall mean an individual or Legal Entity
+      exercising permissions granted by this License.
+
+      "Source" form shall mean the preferred form for making modifications,
+      including but not limited to software source code, documentation
+      source, and configuration files.
+
+      "Object" form shall mean any form resulting from mechanical
+      transformation or translation of a Source form, including but
+      not limited to compiled object code, generated documentation,
+      and conversions to other media types.
+
+      "Work" shall mean the work of authorship, whether in Source or
+      Object form, made available under the License, as indicated by a
+      copyright notice that is included in or attached to the work
+      (an example is provided in the Appendix below).
+
+      "Derivative Works" shall mean any work, whether in Source or Object
+      form, that is based on (or derived from) the Work and for which the
+      editorial revisions, annotations, elaborations, or other modifications
+      represent, as a whole, an original work of authorship. For the purposes
+      of this License, Derivative Works shall not include works that remain
+      separable from, or merely link (or bind by name) to the interfaces of,
+      the Work and Derivative Works thereof.
+
+      "Contribution" shall mean any work of authorship, including
+      the original version of the Work and any modifications or additions
+      to that Work or Derivative Works thereof, that is intentionally
+      submitted to Licensor for inclusion in the Work by the copyright owner
+      or by an individual or Legal Entity authorized to submit on behalf of
+      the copyright owner. For the purposes of this definition, "submitted"
+      means any form of electronic, verbal, or written communication sent
+      to the Licensor or its representatives, including but not limited to
+      communication on electronic mailing lists, source code control systems,
+      and issue tracking systems that are managed by, or on behalf of, the
+      Licensor for the purpose of discussing and improving the Work, but
+      excluding communication that is conspicuously marked or otherwise
+      designated in writing by the copyright owner as "Not a Contribution."
+
+      "Contributor" shall mean Licensor and any individual or Legal Entity
+      on behalf of whom a Contribution has been received by Licensor and
+      subsequently incorporated within the Work.
+
+   2. Grant of Copyright License. Subject to the terms and conditions of
+      this License, each Contributor hereby grants to You a perpetual,
+      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+      copyright license to reproduce, prepare Derivative Works of,
+      publicly display, publicly perform, sublicense, and distribute the
+      Work and such Derivative Works in Source or Object form.
+
+   3. Grant of Patent License. Subject to the terms and conditions of
+      this License, each Contributor hereby grants to You a perpetual,
+      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+      (except as stated in this section) patent license to make, have made,
+      use, offer to sell, sell, import, and otherwise transfer the Work,
+      where such license applies only to those patent claims licensable
+      by such Contributor that are necessarily infringed by their
+      Contribution(s) alone or by combination of their Contribution(s)
+      with the Work to which such Contribution(s) was submitted. If You
+      institute patent litigation against any entity (including a
+      cross-claim or counterclaim in a lawsuit) alleging that the Work
+      or a Contribution incorporated within the Work constitutes direct
+      or contributory patent infringement, then any patent licenses
+      granted to You under this License for that Work shall terminate
+      as of the date such litigation is filed.
+
+   4. Redistribution. You may reproduce and distribute copies of the
+      Work or Derivative Works thereof in any medium, with or without
+      modifications, and in Source or Object form, provided that You
+      meet the following conditions:
+
+      (a) You must give any other recipients of the Work or
+          Derivative Works a copy of this License; and
+
+      (b) You must cause any modified files to carry prominent notices
+          stating that You changed the files; and
+
+      (c) You must retain, in the Source form of any Derivative Works
+          that You distribute, all copyright, patent, trademark, and
+          attribution notices from the Source form of the Work,
+          excluding those notices that do not pertain to any part of
+          the Derivative Works; and
+
+      (d) If the Work includes a "NOTICE" text file as part of its
+          distribution, then any Derivative Works that You distribute must
+          include a readable copy of the attribution notices contained
+          within such NOTICE file, excluding those notices that do not
+          pertain to any part of the Derivative Works, in at least one
+          of the following places: within a NOTICE text file distributed
+          as part of the Derivative Works; within the Source form or
+          documentation, if provided along with the Derivative Works; or,
+          within a display generated by the Derivative Works, if and
+          wherever such third-party notices normally appear. The contents
+          of the NOTICE file are for informational purposes only and
+          do not modify the License. You may add Your own attribution
+          notices within Derivative Works that You distribute, alongside
+          or as an addendum to the NOTICE text from the Work, provided
+          that such additional attribution notices cannot be construed
+          as modifying the License.
+
+      You may add Your own copyright statement to Your modifications and
+      may provide additional or different license terms and conditions
+      for use, reproduction, or distribution of Your modifications, or
+      for any such Derivative Works as a whole, provided Your use,
+      reproduction, and distribution of the Work otherwise complies with
+      the conditions stated in this License.
+
+   5. Submission of Contributions. Unless You explicitly state otherwise,
+      any Contribution intentionally submitted for inclusion in the Work
+      by You to the Licensor shall be under the terms and conditions of
+      this License, without any additional terms or conditions.
+      Notwithstanding the above, nothing herein shall supersede or modify
+      the terms of any separate license agreement you may have executed
+      with Licensor regarding such Contributions.
+
+   6. Trademarks. This License does not grant permission to use the trade
+      names, trademarks, service marks, or product names of the Licensor,
+      except as required for reasonable and customary use in describing the
+      origin of the Work and reproducing the content of the NOTICE file.
+
+   7. Disclaimer of Warranty. Unless required by applicable law or
+      agreed to in writing, Licensor provides the Work (and each
+      Contributor provides its Contributions) on an "AS IS" BASIS,
+      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+      implied, including, without limitation, any warranties or conditions
+      of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
+      PARTICULAR PURPOSE. You are solely responsible for determining the
+      appropriateness of using or redistributing the Work and assume any
+      risks associated with Your exercise of permissions under this License.
+
+   8. Limitation of Liability. In no event and under no legal theory,
+      whether in tort (including negligence), contract, or otherwise,
+      unless required by applicable law (such as deliberate and grossly
+      negligent acts) or agreed to in writing, shall any Contributor be
+      liable to You for damages, including any direct, indirect, special,
+      incidental, or consequential damages of any character arising as a
+      result of this License or out of the use or inability to use the
+      Work (including but not limited to damages for loss of goodwill,
+      work stoppage, computer failure or malfunction, or any and all
+      other commercial damages or losses), even if such Contributor
+      has been advised of the possibility of such damages.
+
+   9. Accepting Warranty or Additional Liability. While redistributing
+      the Work or Derivative Works thereof, You may choose to offer,
+      and charge a fee for, acceptance of support, warranty, indemnity,
+      or other liability obligations and/or rights consistent with this
+      License. However, in accepting such obligations, You may act only
+      on Your own behalf and on Your sole responsibility, not on behalf
+      of any other Contributor, and only if You agree to indemnify,
+      defend, and hold each Contributor harmless for any liability
+      incurred by, or claims asserted against, such Contributor by reason
+      of your accepting any such warranty or additional liability.
+
+   END OF TERMS AND CONDITIONS
+
+   APPENDIX: How to apply the Apache License to your work.
+
+      To apply the Apache License to your work, attach the following
+      boilerplate notice, with the fields enclosed by brackets "[]"
+      replaced with your own identifying information. (Don't include
+      the brackets!)  The text should be enclosed in the appropriate
+      comment syntax for the file format. We also recommend that a
+      file or class name and description of purpose be included on the
+      same "printed page" as the copyright notice for easier
+      identification within third-party archives.
+
+   Copyright [yyyy] [name of copyright owner]
+
+   Licensed under the Apache License, Version 2.0 (the "License");
+   you may not use this file except in compliance with the License.
+   You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE-2.0
+
+   Unless required by applicable law or agreed to in writing, software
+   distributed under the License is distributed on an "AS IS" BASIS,
+   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+   See the License for the specific language governing permissions and
+   limitations under the License.

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/c501e813/solr/licenses/commons-collections4-NOTICE.txt
----------------------------------------------------------------------
diff --git a/solr/licenses/commons-collections4-NOTICE.txt b/solr/licenses/commons-collections4-NOTICE.txt
new file mode 100644
index 0000000..77fd82f
--- /dev/null
+++ b/solr/licenses/commons-collections4-NOTICE.txt
@@ -0,0 +1,5 @@
+Apache Commons Collections
+Copyright 2001-2017 The Apache Software Foundation
+
+This product includes software developed by
+The Apache Software Foundation (http://www.apache.org/).


[7/9] lucene-solr:jira/solr-11285: SOLR-11285: Add some javadocs, move some interfaces to more suitable packages.

Posted by ab...@apache.org.
SOLR-11285: Add some javadocs, move some interfaces to more suitable packages.


Project: http://git-wip-us.apache.org/repos/asf/lucene-solr/repo
Commit: http://git-wip-us.apache.org/repos/asf/lucene-solr/commit/a076f72d
Tree: http://git-wip-us.apache.org/repos/asf/lucene-solr/tree/a076f72d
Diff: http://git-wip-us.apache.org/repos/asf/lucene-solr/diff/a076f72d

Branch: refs/heads/jira/solr-11285
Commit: a076f72d13758aad20e903893ae4f9b9436a310f
Parents: ec0214b
Author: Andrzej Bialecki <ab...@apache.org>
Authored: Fri Oct 13 16:22:33 2017 +0200
Committer: Andrzej Bialecki <ab...@apache.org>
Committed: Fri Oct 13 16:22:33 2017 +0200

----------------------------------------------------------------------
 .../org/apache/solr/cloud/ZkController.java     |  1 -
 .../solr/cloud/ZkDistributedQueueFactory.java   | 43 +++++++++++++++++++
 .../cloud/autoscaling/AutoScalingHandler.java   |  7 ++--
 .../autoscaling/ZkDistributedQueueFactory.java  | 44 --------------------
 .../org/apache/solr/cloud/OverseerTest.java     |  1 -
 .../solr/cloud/autoscaling/TestPolicyCloud.java |  4 +-
 .../client/solrj/cloud/DistributedQueue.java    | 13 +++++-
 .../solrj/cloud/DistributedQueueFactory.java    | 28 +++++++++++++
 .../autoscaling/DelegatingCloudManager.java     |  3 +-
 .../DelegatingClusterStateProvider.java         |  2 +-
 .../DelegatingNodeStateProvider.java            |  2 +-
 .../cloud/autoscaling/DistribStateManager.java  |  2 +-
 .../cloud/autoscaling/NodeStateProvider.java    |  5 +--
 .../cloud/autoscaling/SolrCloudManager.java     |  8 +---
 .../solrj/cloud/autoscaling/VersionedData.java  |  8 +++-
 .../solrj/impl/SolrClientCloudManager.java      |  1 +
 .../solrj/cloud/autoscaling/TestPolicy.java     |  1 +
 17 files changed, 108 insertions(+), 65 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/a076f72d/solr/core/src/java/org/apache/solr/cloud/ZkController.java
----------------------------------------------------------------------
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 add4908c..35171da 100644
--- a/solr/core/src/java/org/apache/solr/cloud/ZkController.java
+++ b/solr/core/src/java/org/apache/solr/cloud/ZkController.java
@@ -59,7 +59,6 @@ import org.apache.solr.client.solrj.impl.SolrClientCloudManager;
 import org.apache.solr.client.solrj.impl.ZkClientClusterStateProvider;
 import org.apache.solr.client.solrj.request.CoreAdminRequest.WaitForState;
 import org.apache.solr.client.solrj.cloud.autoscaling.TriggerEventType;
-import org.apache.solr.cloud.autoscaling.ZkDistributedQueueFactory;
 import org.apache.solr.cloud.overseer.OverseerAction;
 import org.apache.solr.cloud.overseer.SliceMutator;
 import org.apache.solr.common.SolrException;

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/a076f72d/solr/core/src/java/org/apache/solr/cloud/ZkDistributedQueueFactory.java
----------------------------------------------------------------------
diff --git a/solr/core/src/java/org/apache/solr/cloud/ZkDistributedQueueFactory.java b/solr/core/src/java/org/apache/solr/cloud/ZkDistributedQueueFactory.java
new file mode 100644
index 0000000..1cf79e5
--- /dev/null
+++ b/solr/core/src/java/org/apache/solr/cloud/ZkDistributedQueueFactory.java
@@ -0,0 +1,43 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.solr.cloud;
+
+import java.io.IOException;
+
+import org.apache.solr.client.solrj.cloud.DistributedQueue;
+import org.apache.solr.client.solrj.cloud.DistributedQueueFactory;
+import org.apache.solr.common.cloud.SolrZkClient;
+
+/**
+ * Implementation of {@link DistributedQueueFactory} that uses ZooKeeper.
+ */
+public class ZkDistributedQueueFactory implements DistributedQueueFactory {
+  private final SolrZkClient zkClient;
+
+  public ZkDistributedQueueFactory(SolrZkClient zkClient) {
+    this.zkClient = zkClient;
+  }
+  @Override
+  public DistributedQueue makeQueue(String path) throws IOException {
+    return new ZkDistributedQueue(zkClient, path);
+  }
+
+  @Override
+  public void removeQueue(String path) throws IOException {
+
+  }
+}

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/a076f72d/solr/core/src/java/org/apache/solr/cloud/autoscaling/AutoScalingHandler.java
----------------------------------------------------------------------
diff --git a/solr/core/src/java/org/apache/solr/cloud/autoscaling/AutoScalingHandler.java b/solr/core/src/java/org/apache/solr/cloud/autoscaling/AutoScalingHandler.java
index f29d498..3d0f8e1 100644
--- a/solr/core/src/java/org/apache/solr/cloud/autoscaling/AutoScalingHandler.java
+++ b/solr/core/src/java/org/apache/solr/cloud/autoscaling/AutoScalingHandler.java
@@ -36,17 +36,18 @@ import java.util.stream.Stream;
 
 import org.apache.solr.api.Api;
 import org.apache.solr.api.ApiBag;
+import org.apache.solr.client.solrj.cloud.DistributedQueueFactory;
 import org.apache.solr.client.solrj.cloud.autoscaling.AutoScalingConfig;
 import org.apache.solr.client.solrj.cloud.autoscaling.Cell;
 import org.apache.solr.client.solrj.cloud.autoscaling.Clause;
 import org.apache.solr.client.solrj.cloud.autoscaling.Policy;
 import org.apache.solr.client.solrj.cloud.autoscaling.Preference;
 import org.apache.solr.client.solrj.cloud.autoscaling.Row;
-import org.apache.solr.client.solrj.cloud.autoscaling.SolrCloudManager;
 import org.apache.solr.client.solrj.cloud.autoscaling.TriggerEventProcessorStage;
 import org.apache.solr.client.solrj.cloud.autoscaling.TriggerEventType;
 import org.apache.solr.client.solrj.impl.CloudSolrClient;
 import org.apache.solr.client.solrj.impl.SolrClientCloudManager;
+import org.apache.solr.cloud.ZkDistributedQueueFactory;
 import org.apache.solr.common.MapWriter;
 import org.apache.solr.common.SolrException;
 import org.apache.solr.common.cloud.ZkStateReader;
@@ -215,7 +216,7 @@ public class AutoScalingHandler extends RequestHandlerBase implements Permission
     try (CloudSolrClient build = new CloudSolrClient.Builder()
         .withHttpClient(container.getUpdateShardHandler().getHttpClient())
         .withZkHost(container.getZkController().getZkServerAddress()).build()) {
-      SolrCloudManager.DistributedQueueFactory queueFactory = new ZkDistributedQueueFactory(container.getZkController().getZkClient());
+      DistributedQueueFactory queueFactory = new ZkDistributedQueueFactory(container.getZkController().getZkClient());
       Policy.Session session = policy.createSession(new SolrClientCloudManager(queueFactory, build));
       List<Row> sorted = session.getSorted();
       List<Clause.Violation> violations = session.getViolations();
@@ -640,7 +641,7 @@ public class AutoScalingHandler extends RequestHandlerBase implements Permission
     try (CloudSolrClient build = new CloudSolrClient.Builder()
         .withHttpClient(container.getUpdateShardHandler().getHttpClient())
         .withZkHost(container.getZkController().getZkServerAddress()).build()) {
-      SolrCloudManager.DistributedQueueFactory queueFactory = new ZkDistributedQueueFactory(container.getZkController().getZkClient());
+      DistributedQueueFactory queueFactory = new ZkDistributedQueueFactory(container.getZkController().getZkClient());
       Policy.Session session = autoScalingConf.getPolicy()
           .createSession(new SolrClientCloudManager(queueFactory, build));
       log.debug("Verified autoscaling configuration");

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/a076f72d/solr/core/src/java/org/apache/solr/cloud/autoscaling/ZkDistributedQueueFactory.java
----------------------------------------------------------------------
diff --git a/solr/core/src/java/org/apache/solr/cloud/autoscaling/ZkDistributedQueueFactory.java b/solr/core/src/java/org/apache/solr/cloud/autoscaling/ZkDistributedQueueFactory.java
deleted file mode 100644
index 0b1c5f8..0000000
--- a/solr/core/src/java/org/apache/solr/cloud/autoscaling/ZkDistributedQueueFactory.java
+++ /dev/null
@@ -1,44 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.solr.cloud.autoscaling;
-
-import java.io.IOException;
-
-import org.apache.solr.client.solrj.cloud.DistributedQueue;
-import org.apache.solr.client.solrj.cloud.autoscaling.SolrCloudManager;
-import org.apache.solr.cloud.ZkDistributedQueue;
-import org.apache.solr.common.cloud.SolrZkClient;
-
-/**
- *
- */
-public class ZkDistributedQueueFactory implements SolrCloudManager.DistributedQueueFactory {
-  private final SolrZkClient zkClient;
-
-  public ZkDistributedQueueFactory(SolrZkClient zkClient) {
-    this.zkClient = zkClient;
-  }
-  @Override
-  public DistributedQueue makeQueue(String path) throws IOException {
-    return new ZkDistributedQueue(zkClient, path);
-  }
-
-  @Override
-  public void removeQueue(String path) throws IOException {
-
-  }
-}

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/a076f72d/solr/core/src/test/org/apache/solr/cloud/OverseerTest.java
----------------------------------------------------------------------
diff --git a/solr/core/src/test/org/apache/solr/cloud/OverseerTest.java b/solr/core/src/test/org/apache/solr/cloud/OverseerTest.java
index be8da4d..527a28b 100644
--- a/solr/core/src/test/org/apache/solr/cloud/OverseerTest.java
+++ b/solr/core/src/test/org/apache/solr/cloud/OverseerTest.java
@@ -42,7 +42,6 @@ import org.apache.solr.client.solrj.cloud.autoscaling.SolrCloudManager;
 import org.apache.solr.client.solrj.impl.CloudSolrClient;
 import org.apache.solr.client.solrj.impl.SolrClientCloudManager;
 import org.apache.solr.client.solrj.impl.ZkClientClusterStateProvider;
-import org.apache.solr.cloud.autoscaling.ZkDistributedQueueFactory;
 import org.apache.solr.cloud.overseer.NodeMutator;
 import org.apache.solr.cloud.overseer.OverseerAction;
 import org.apache.solr.cloud.overseer.ZkWriteCommand;

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/a076f72d/solr/core/src/test/org/apache/solr/cloud/autoscaling/TestPolicyCloud.java
----------------------------------------------------------------------
diff --git a/solr/core/src/test/org/apache/solr/cloud/autoscaling/TestPolicyCloud.java b/solr/core/src/test/org/apache/solr/cloud/autoscaling/TestPolicyCloud.java
index 1de575e..4136d27 100644
--- a/solr/core/src/test/org/apache/solr/cloud/autoscaling/TestPolicyCloud.java
+++ b/solr/core/src/test/org/apache/solr/cloud/autoscaling/TestPolicyCloud.java
@@ -28,6 +28,7 @@ import org.apache.lucene.util.Constants;
 import org.apache.lucene.util.LuceneTestCase;
 import org.apache.solr.client.solrj.SolrRequest;
 import org.apache.solr.client.solrj.SolrServerException;
+import org.apache.solr.client.solrj.cloud.DistributedQueueFactory;
 import org.apache.solr.client.solrj.cloud.autoscaling.SolrCloudManager;
 import org.apache.solr.client.solrj.embedded.JettySolrRunner;
 import org.apache.solr.client.solrj.impl.CloudSolrClient;
@@ -36,6 +37,7 @@ import org.apache.solr.client.solrj.impl.SolrClientCloudManager;
 import org.apache.solr.client.solrj.request.CollectionAdminRequest;
 import org.apache.solr.cloud.OverseerTaskProcessor;
 import org.apache.solr.cloud.SolrCloudTestCase;
+import org.apache.solr.cloud.ZkDistributedQueueFactory;
 import org.apache.solr.common.cloud.DocCollection;
 import org.apache.solr.common.cloud.Replica;
 import org.apache.solr.common.cloud.ZkStateReader;
@@ -169,7 +171,7 @@ public class TestPolicyCloud extends SolrCloudTestCase {
     CollectionAdminRequest.createCollection("metricsTest", "conf", 1, 1)
         .process(cluster.getSolrClient());
     DocCollection collection = getCollectionState("metricsTest");
-    SolrCloudManager.DistributedQueueFactory queueFactory = new ZkDistributedQueueFactory(cluster.getZkClient());
+    DistributedQueueFactory queueFactory = new ZkDistributedQueueFactory(cluster.getZkClient());
     SolrCloudManager provider = new SolrClientCloudManager(queueFactory, solrClient);
     List<String> tags = Arrays.asList("metrics:solr.node:ADMIN./admin/authorization.clientErrors:count",
         "metrics:solr.jvm:buffers.direct.Count");

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/a076f72d/solr/solrj/src/java/org/apache/solr/client/solrj/cloud/DistributedQueue.java
----------------------------------------------------------------------
diff --git a/solr/solrj/src/java/org/apache/solr/client/solrj/cloud/DistributedQueue.java b/solr/solrj/src/java/org/apache/solr/client/solrj/cloud/DistributedQueue.java
index c420e54..9a31bff 100644
--- a/solr/solrj/src/java/org/apache/solr/client/solrj/cloud/DistributedQueue.java
+++ b/solr/solrj/src/java/org/apache/solr/client/solrj/cloud/DistributedQueue.java
@@ -23,7 +23,7 @@ import java.util.function.Predicate;
 import org.apache.solr.common.util.Pair;
 
 /**
- *
+ * Distributed queue component. Methods largely follow those in {@link java.util.Queue}.
  */
 public interface DistributedQueue {
   byte[] peek() throws Exception;
@@ -40,8 +40,19 @@ public interface DistributedQueue {
 
   void offer(byte[] data) throws Exception;
 
+  /**
+   * Retrieve statistics about the queue size, operations and their timings.
+   */
   Map<String, Object> getStats();
 
+  /**
+   * Peek multiple elements from the queue in a single call.
+   * @param max maximum elements to retrieve
+   * @param waitMillis if less than maximum element is in the queue then wait at most this time for at least one new element.
+   * @param acceptFilter peek only elements that pass this filter
+   * @return peeked elements
+   * @throws Exception on errors
+   */
   Collection<Pair<String, byte[]>> peekElements(int max, long waitMillis, Predicate<String> acceptFilter) throws Exception;
 
 }

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/a076f72d/solr/solrj/src/java/org/apache/solr/client/solrj/cloud/DistributedQueueFactory.java
----------------------------------------------------------------------
diff --git a/solr/solrj/src/java/org/apache/solr/client/solrj/cloud/DistributedQueueFactory.java b/solr/solrj/src/java/org/apache/solr/client/solrj/cloud/DistributedQueueFactory.java
new file mode 100644
index 0000000..c54ccbd
--- /dev/null
+++ b/solr/solrj/src/java/org/apache/solr/client/solrj/cloud/DistributedQueueFactory.java
@@ -0,0 +1,28 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.solr.client.solrj.cloud;
+
+import java.io.IOException;
+
+/**
+ *
+ */
+public interface DistributedQueueFactory {
+  DistributedQueue makeQueue(String path) throws IOException;
+
+  void removeQueue(String path) throws IOException;
+}

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/a076f72d/solr/solrj/src/java/org/apache/solr/client/solrj/cloud/autoscaling/DelegatingCloudManager.java
----------------------------------------------------------------------
diff --git a/solr/solrj/src/java/org/apache/solr/client/solrj/cloud/autoscaling/DelegatingCloudManager.java b/solr/solrj/src/java/org/apache/solr/client/solrj/cloud/autoscaling/DelegatingCloudManager.java
index dca67e7..05801b9 100644
--- a/solr/solrj/src/java/org/apache/solr/client/solrj/cloud/autoscaling/DelegatingCloudManager.java
+++ b/solr/solrj/src/java/org/apache/solr/client/solrj/cloud/autoscaling/DelegatingCloudManager.java
@@ -21,10 +21,11 @@ import java.util.Map;
 
 import org.apache.solr.client.solrj.SolrRequest;
 import org.apache.solr.client.solrj.SolrResponse;
+import org.apache.solr.client.solrj.cloud.DistributedQueueFactory;
 import org.apache.solr.client.solrj.impl.ClusterStateProvider;
 
 /**
- *
+ * Base class for overriding some behavior of {@link SolrCloudManager}.
  */
 public class DelegatingCloudManager implements SolrCloudManager {
   private final SolrCloudManager delegate;

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/a076f72d/solr/solrj/src/java/org/apache/solr/client/solrj/cloud/autoscaling/DelegatingClusterStateProvider.java
----------------------------------------------------------------------
diff --git a/solr/solrj/src/java/org/apache/solr/client/solrj/cloud/autoscaling/DelegatingClusterStateProvider.java b/solr/solrj/src/java/org/apache/solr/client/solrj/cloud/autoscaling/DelegatingClusterStateProvider.java
index 0fecfed..9c81005 100644
--- a/solr/solrj/src/java/org/apache/solr/client/solrj/cloud/autoscaling/DelegatingClusterStateProvider.java
+++ b/solr/solrj/src/java/org/apache/solr/client/solrj/cloud/autoscaling/DelegatingClusterStateProvider.java
@@ -25,7 +25,7 @@ import org.apache.solr.client.solrj.impl.ClusterStateProvider;
 import org.apache.solr.common.cloud.ClusterState;
 
 /**
- *
+ * Base class for overriding some behavior of {@link ClusterStateProvider}
  */
 public class DelegatingClusterStateProvider implements ClusterStateProvider {
   protected ClusterStateProvider delegate;

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/a076f72d/solr/solrj/src/java/org/apache/solr/client/solrj/cloud/autoscaling/DelegatingNodeStateProvider.java
----------------------------------------------------------------------
diff --git a/solr/solrj/src/java/org/apache/solr/client/solrj/cloud/autoscaling/DelegatingNodeStateProvider.java b/solr/solrj/src/java/org/apache/solr/client/solrj/cloud/autoscaling/DelegatingNodeStateProvider.java
index df125ac..8b717f8 100644
--- a/solr/solrj/src/java/org/apache/solr/client/solrj/cloud/autoscaling/DelegatingNodeStateProvider.java
+++ b/solr/solrj/src/java/org/apache/solr/client/solrj/cloud/autoscaling/DelegatingNodeStateProvider.java
@@ -22,7 +22,7 @@ import java.util.List;
 import java.util.Map;
 
 /**
- *
+ * Base class for overriding some behavior of {@link NodeStateProvider}.
  */
 public class DelegatingNodeStateProvider implements NodeStateProvider {
   private final NodeStateProvider delegate;

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/a076f72d/solr/solrj/src/java/org/apache/solr/client/solrj/cloud/autoscaling/DistribStateManager.java
----------------------------------------------------------------------
diff --git a/solr/solrj/src/java/org/apache/solr/client/solrj/cloud/autoscaling/DistribStateManager.java b/solr/solrj/src/java/org/apache/solr/client/solrj/cloud/autoscaling/DistribStateManager.java
index b5839d6..4318418 100644
--- a/solr/solrj/src/java/org/apache/solr/client/solrj/cloud/autoscaling/DistribStateManager.java
+++ b/solr/solrj/src/java/org/apache/solr/client/solrj/cloud/autoscaling/DistribStateManager.java
@@ -28,7 +28,7 @@ import org.apache.zookeeper.OpResult;
 import org.apache.zookeeper.Watcher;
 
 /**
- * Represents a distributed state repository.
+ * This interface represents a distributed state repository.
  */
 public interface DistribStateManager extends Closeable {
 

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/a076f72d/solr/solrj/src/java/org/apache/solr/client/solrj/cloud/autoscaling/NodeStateProvider.java
----------------------------------------------------------------------
diff --git a/solr/solrj/src/java/org/apache/solr/client/solrj/cloud/autoscaling/NodeStateProvider.java b/solr/solrj/src/java/org/apache/solr/client/solrj/cloud/autoscaling/NodeStateProvider.java
index a0fd4dc..dbf6836 100644
--- a/solr/solrj/src/java/org/apache/solr/client/solrj/cloud/autoscaling/NodeStateProvider.java
+++ b/solr/solrj/src/java/org/apache/solr/client/solrj/cloud/autoscaling/NodeStateProvider.java
@@ -21,7 +21,7 @@ import java.util.List;
 import java.util.Map;
 
 /**
- * This interface models access to node and replica information.
+ * This interface models the access to node and replica information.
  */
 public interface NodeStateProvider {
   /**
@@ -36,8 +36,7 @@ public interface NodeStateProvider {
   /**
    * Get the details of each replica in a node. It attempts to fetch as much details about
    * the replica as mentioned in the keys list. It is not necessary to give all details
-   * <p>
-   * the format is {collection:shard :[{replicadetails}]}
+   * <p>The format is {collection:shard :[{replicadetails}]}.</p>
    */
   Map<String, Map<String, List<ReplicaInfo>>> getReplicaInfo(String node, Collection<String> keys);
 }

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/a076f72d/solr/solrj/src/java/org/apache/solr/client/solrj/cloud/autoscaling/SolrCloudManager.java
----------------------------------------------------------------------
diff --git a/solr/solrj/src/java/org/apache/solr/client/solrj/cloud/autoscaling/SolrCloudManager.java b/solr/solrj/src/java/org/apache/solr/client/solrj/cloud/autoscaling/SolrCloudManager.java
index f44118f..5b38e88 100644
--- a/solr/solrj/src/java/org/apache/solr/client/solrj/cloud/autoscaling/SolrCloudManager.java
+++ b/solr/solrj/src/java/org/apache/solr/client/solrj/cloud/autoscaling/SolrCloudManager.java
@@ -23,12 +23,13 @@ import java.util.Map;
 
 import org.apache.solr.client.solrj.SolrRequest;
 import org.apache.solr.client.solrj.SolrResponse;
-import org.apache.solr.client.solrj.cloud.DistributedQueue;
+import org.apache.solr.client.solrj.cloud.DistributedQueueFactory;
 import org.apache.solr.client.solrj.impl.ClusterStateProvider;
 
 /**
  * This interface abstracts the access to a SolrCloud cluster, including interactions with Zookeeper, Solr
  * and generic HTTP calls.
+ * <p>This abstraction should be used when possible instead of directly referencing ZK, Solr and HTTP.</p>
  */
 public interface SolrCloudManager extends Closeable {
 
@@ -38,11 +39,6 @@ public interface SolrCloudManager extends Closeable {
 
   DistribStateManager getDistribStateManager();
 
-  interface DistributedQueueFactory {
-    DistributedQueue makeQueue(String path) throws IOException;
-    void removeQueue(String path) throws IOException;
-  }
-
   DistributedQueueFactory getDistributedQueueFactory();
 
   // Solr-like methods

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/a076f72d/solr/solrj/src/java/org/apache/solr/client/solrj/cloud/autoscaling/VersionedData.java
----------------------------------------------------------------------
diff --git a/solr/solrj/src/java/org/apache/solr/client/solrj/cloud/autoscaling/VersionedData.java b/solr/solrj/src/java/org/apache/solr/client/solrj/cloud/autoscaling/VersionedData.java
index 16f02c6..63341b9 100644
--- a/solr/solrj/src/java/org/apache/solr/client/solrj/cloud/autoscaling/VersionedData.java
+++ b/solr/solrj/src/java/org/apache/solr/client/solrj/cloud/autoscaling/VersionedData.java
@@ -17,13 +17,19 @@
 package org.apache.solr.client.solrj.cloud.autoscaling;
 
 /**
- *
+ * Immutable representation of binary data with version.
  */
 public class VersionedData {
   private final int version;
   private final byte[] data;
   private final String owner;
 
+  /**
+   * Constructor.
+   * @param version version of the data, or -1 if unknown
+   * @param data binary data, or null.
+   * @param owner symbolic identifier of data owner / creator, or null.
+   */
   public VersionedData(int version, byte[] data, String owner) {
     this.version = version;
     this.data = data;

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/a076f72d/solr/solrj/src/java/org/apache/solr/client/solrj/impl/SolrClientCloudManager.java
----------------------------------------------------------------------
diff --git a/solr/solrj/src/java/org/apache/solr/client/solrj/impl/SolrClientCloudManager.java b/solr/solrj/src/java/org/apache/solr/client/solrj/impl/SolrClientCloudManager.java
index 44dc2e1..b8db4ab 100644
--- a/solr/solrj/src/java/org/apache/solr/client/solrj/impl/SolrClientCloudManager.java
+++ b/solr/solrj/src/java/org/apache/solr/client/solrj/impl/SolrClientCloudManager.java
@@ -37,6 +37,7 @@ import org.apache.http.util.EntityUtils;
 import org.apache.solr.client.solrj.SolrRequest;
 import org.apache.solr.client.solrj.SolrResponse;
 import org.apache.solr.client.solrj.SolrServerException;
+import org.apache.solr.client.solrj.cloud.DistributedQueueFactory;
 import org.apache.solr.client.solrj.cloud.autoscaling.DistribStateManager;
 import org.apache.solr.client.solrj.cloud.autoscaling.NodeStateProvider;
 import org.apache.solr.client.solrj.cloud.autoscaling.SolrCloudManager;

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/a076f72d/solr/solrj/src/test/org/apache/solr/client/solrj/cloud/autoscaling/TestPolicy.java
----------------------------------------------------------------------
diff --git a/solr/solrj/src/test/org/apache/solr/client/solrj/cloud/autoscaling/TestPolicy.java b/solr/solrj/src/test/org/apache/solr/client/solrj/cloud/autoscaling/TestPolicy.java
index 1957afc..720e7a6 100644
--- a/solr/solrj/src/test/org/apache/solr/client/solrj/cloud/autoscaling/TestPolicy.java
+++ b/solr/solrj/src/test/org/apache/solr/client/solrj/cloud/autoscaling/TestPolicy.java
@@ -35,6 +35,7 @@ import com.google.common.collect.ImmutableList;
 import org.apache.solr.SolrTestCaseJ4;
 import org.apache.solr.client.solrj.SolrRequest;
 import org.apache.solr.client.solrj.SolrResponse;
+import org.apache.solr.client.solrj.cloud.DistributedQueueFactory;
 import org.apache.solr.client.solrj.cloud.autoscaling.Clause.Violation;
 import org.apache.solr.client.solrj.cloud.autoscaling.Policy.Suggester.Hint;
 import org.apache.solr.client.solrj.impl.ClusterStateProvider;


[6/9] lucene-solr:jira/solr-11285: SOLR-11477: Disallow resolving of external entities in Lucene queryparser/xml/CoreParser and SolrCoreParser (defType=xmlparser or {!xmlparser ...}) by default.

Posted by ab...@apache.org.
SOLR-11477: Disallow resolving of external entities in Lucene queryparser/xml/CoreParser and SolrCoreParser (defType=xmlparser or {!xmlparser ...}) by default.

(Michael Stepankin, Olga Barinova, Uwe Schindler, Christine Poerschke)


Project: http://git-wip-us.apache.org/repos/asf/lucene-solr/repo
Commit: http://git-wip-us.apache.org/repos/asf/lucene-solr/commit/926cc4d6
Tree: http://git-wip-us.apache.org/repos/asf/lucene-solr/tree/926cc4d6
Diff: http://git-wip-us.apache.org/repos/asf/lucene-solr/diff/926cc4d6

Branch: refs/heads/jira/solr-11285
Commit: 926cc4d65b6d2cc40ff07f76d50ddeda947e3cc4
Parents: 7b313bb
Author: Christine Poerschke <cp...@apache.org>
Authored: Fri Oct 13 12:46:58 2017 +0100
Committer: Christine Poerschke <cp...@apache.org>
Committed: Fri Oct 13 12:51:19 2017 +0100

----------------------------------------------------------------------
 lucene/CHANGES.txt                              |  8 +++
 .../lucene/queryparser/xml/CoreParser.java      | 65 ++++++++++++++++----
 .../queryparser/xml/DOCTYPE_TermQuery.xml       | 19 ++++++
 .../lucene/queryparser/xml/ENTITY_TermQuery.xml | 23 +++++++
 .../lucene/queryparser/xml/TestCoreParser.java  | 13 ++++
 solr/CHANGES.txt                                |  6 ++
 .../org/apache/solr/search/SolrCoreParser.java  |  8 +++
 7 files changed, 130 insertions(+), 12 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/926cc4d6/lucene/CHANGES.txt
----------------------------------------------------------------------
diff --git a/lucene/CHANGES.txt b/lucene/CHANGES.txt
index f19bed5..1ad72df 100644
--- a/lucene/CHANGES.txt
+++ b/lucene/CHANGES.txt
@@ -18,6 +18,11 @@ Changes in Runtime Behavior
 
 ======================= Lucene 7.1.0 =======================
 
+Changes in Runtime Behavior
+
+* Resolving of external entities in queryparser/xml/CoreParser is disallowed
+  by default. See SOLR-11477 for details.
+
 New Features
 
 * LUCENE-7970: Add a shape to Geo3D that consists of multiple planes that
@@ -124,6 +129,9 @@ Bug Fixes
 * LUCENE-7957: ConjunctionScorer.getChildren was failing to return all
   child scorers (Adrien Grand, Mike McCandless)
 
+* SOLR-11477: Disallow resolving of external entities in queryparser/xml/CoreParser
+  by default. (Michael Stepankin, Olga Barinova, Uwe Schindler, Christine Poerschke)
+
 Build
 
 * SOLR-11181: Switch order of maven artifact publishing procedure: deploy first

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/926cc4d6/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/CoreParser.java
----------------------------------------------------------------------
diff --git a/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/CoreParser.java b/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/CoreParser.java
index 8637c4a..a4f5ce5 100644
--- a/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/CoreParser.java
+++ b/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/CoreParser.java
@@ -23,11 +23,17 @@ import org.apache.lucene.search.Query;
 import org.apache.lucene.search.spans.SpanQuery;
 import org.w3c.dom.Document;
 import org.w3c.dom.Element;
+import org.xml.sax.EntityResolver;
+import org.xml.sax.ErrorHandler;
+import org.xml.sax.SAXException;
 
+import javax.xml.XMLConstants;
 import javax.xml.parsers.DocumentBuilder;
 import javax.xml.parsers.DocumentBuilderFactory;
+import javax.xml.parsers.ParserConfigurationException;
 
 import java.io.InputStream;
+import java.util.Locale;
 
 /**
  * Assembles a QueryBuilder which uses only core Lucene Query objects
@@ -111,6 +117,10 @@ public class CoreParser implements QueryBuilder, SpanQueryBuilder {
     queryFactory.addBuilder("SpanNot", snot);
   }
 
+  /**
+   * Parses the given stream as XML file and returns a {@link Query}.
+   * By default this disallows external entities for security reasons.
+   */
   public Query parse(InputStream xmlStream) throws ParserException {
     return getQuery(parseXML(xmlStream).getDocumentElement());
   }
@@ -133,23 +143,47 @@ public class CoreParser implements QueryBuilder, SpanQueryBuilder {
     spanFactory.addBuilder(nodeName, builder);
   }
 
-  static Document parseXML(InputStream pXmlFile) throws ParserException {
-    DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
-    DocumentBuilder db = null;
+  /**
+   * Returns a SAX {@link EntityResolver} to be used by {@link DocumentBuilder}.
+   * By default this returns {@link #DISALLOW_EXTERNAL_ENTITY_RESOLVER}, which disallows the
+   * expansion of external entities (for security reasons). To restore legacy behavior,
+   * override this method to return {@code null}.
+   */
+  protected EntityResolver getEntityResolver() {
+    return DISALLOW_EXTERNAL_ENTITY_RESOLVER;
+  }
+
+  /**
+   * Subclass and override to return a SAX {@link ErrorHandler} to be used by {@link DocumentBuilder}.
+   * By default this returns {@code null} so no error handler is used.
+   * This method can be used to redirect XML parse errors/warnings to a custom logger.
+   */
+  protected ErrorHandler getErrorHandler() {
+    return null;
+  }
+
+  private Document parseXML(InputStream pXmlFile) throws ParserException {
+    final DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
+    dbf.setValidating(false);
     try {
-      db = dbf.newDocumentBuilder();
-    }
-    catch (Exception se) {
-      throw new ParserException("XML Parser configuration error", se);
+      dbf.setFeature(XMLConstants.FEATURE_SECURE_PROCESSING, true);
+    } catch (ParserConfigurationException e) {
+      // ignore since all implementations are required to support the
+      // {@link javax.xml.XMLConstants#FEATURE_SECURE_PROCESSING} feature
     }
-    org.w3c.dom.Document doc = null;
+    final DocumentBuilder db;
     try {
-      doc = db.parse(pXmlFile);
+      db = dbf.newDocumentBuilder();
+    } catch (Exception se) {
+      throw new ParserException("XML Parser configuration error.", se);
     }
-    catch (Exception se) {
-      throw new ParserException("Error parsing XML stream:" + se, se);
+    try {
+      db.setEntityResolver(getEntityResolver());
+      db.setErrorHandler(getErrorHandler());
+      return db.parse(pXmlFile);
+    } catch (Exception se) {
+      throw new ParserException("Error parsing XML stream: " + se, se);
     }
-    return doc;
   }
 
   public Query getQuery(Element e) throws ParserException {
@@ -160,4 +194,11 @@ public class CoreParser implements QueryBuilder, SpanQueryBuilder {
   public SpanQuery getSpanQuery(Element e) throws ParserException {
     return spanFactory.getSpanQuery(e);
   }
+
+  public static final EntityResolver DISALLOW_EXTERNAL_ENTITY_RESOLVER = (String publicId, String systemId) -> {
+    throw new SAXException(String.format(Locale.ENGLISH,
+        "External Entity resolving unsupported:  publicId=\"%s\" systemId=\"%s\"",
+        publicId, systemId));
+  };
+
 }

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/926cc4d6/lucene/queryparser/src/test/org/apache/lucene/queryparser/xml/DOCTYPE_TermQuery.xml
----------------------------------------------------------------------
diff --git a/lucene/queryparser/src/test/org/apache/lucene/queryparser/xml/DOCTYPE_TermQuery.xml b/lucene/queryparser/src/test/org/apache/lucene/queryparser/xml/DOCTYPE_TermQuery.xml
new file mode 100644
index 0000000..28938ae
--- /dev/null
+++ b/lucene/queryparser/src/test/org/apache/lucene/queryparser/xml/DOCTYPE_TermQuery.xml
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE TermQuery SYSTEM "foo://bar.xyz/mydtd">
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements.  See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with
+ the License.  You may obtain a copy of the License at
+
+     http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
+<TermQuery fieldName="contents">sumitomo</TermQuery>

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/926cc4d6/lucene/queryparser/src/test/org/apache/lucene/queryparser/xml/ENTITY_TermQuery.xml
----------------------------------------------------------------------
diff --git a/lucene/queryparser/src/test/org/apache/lucene/queryparser/xml/ENTITY_TermQuery.xml b/lucene/queryparser/src/test/org/apache/lucene/queryparser/xml/ENTITY_TermQuery.xml
new file mode 100644
index 0000000..dc59613
--- /dev/null
+++ b/lucene/queryparser/src/test/org/apache/lucene/queryparser/xml/ENTITY_TermQuery.xml
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE TermQuery [
+<!ENTITY internalTerm "sumitomo">
+<!ENTITY externalTerm SYSTEM "foo://bar.xyz/external">
+<!ENTITY % myParameterEntity "foo://bar.xyz/param">
+]>
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements.  See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with
+ the License.  You may obtain a copy of the License at
+
+     http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
+<TermQuery fieldName="contents">&internalTerm;&externalTerm;</TermQuery>

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/926cc4d6/lucene/queryparser/src/test/org/apache/lucene/queryparser/xml/TestCoreParser.java
----------------------------------------------------------------------
diff --git a/lucene/queryparser/src/test/org/apache/lucene/queryparser/xml/TestCoreParser.java b/lucene/queryparser/src/test/org/apache/lucene/queryparser/xml/TestCoreParser.java
index 11ffda6..d97e2f6 100644
--- a/lucene/queryparser/src/test/org/apache/lucene/queryparser/xml/TestCoreParser.java
+++ b/lucene/queryparser/src/test/org/apache/lucene/queryparser/xml/TestCoreParser.java
@@ -30,6 +30,7 @@ import org.apache.lucene.search.TopDocs;
 import org.apache.lucene.search.spans.SpanQuery;
 import org.apache.lucene.util.LuceneTestCase;
 import org.junit.AfterClass;
+import org.xml.sax.SAXException;
 
 import java.io.IOException;
 import java.io.InputStream;
@@ -67,6 +68,18 @@ public class TestCoreParser extends LuceneTestCase {
     dumpResults("TermQuery", q, 5);
   }
 
+  public void test_DOCTYPE_TermQueryXML() throws ParserException, IOException {
+    SAXException saxe = LuceneTestCase.expectThrows(ParserException.class, SAXException.class,
+        () -> parse("DOCTYPE_TermQuery.xml"));
+    assertTrue(saxe.getMessage().startsWith("External Entity resolving unsupported:"));
+  }
+
+  public void test_ENTITY_TermQueryXML() throws ParserException, IOException {
+    SAXException saxe = LuceneTestCase.expectThrows(ParserException.class, SAXException.class,
+        () -> parse("ENTITY_TermQuery.xml"));
+    assertTrue(saxe.getMessage().startsWith("External Entity resolving unsupported:"));
+  }
+
   public void testTermQueryEmptyXML() throws ParserException, IOException {
     parseShouldFail("TermQueryEmpty.xml",
         "TermQuery has no text");

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/926cc4d6/solr/CHANGES.txt
----------------------------------------------------------------------
diff --git a/solr/CHANGES.txt b/solr/CHANGES.txt
index 28fea4e..8ec6f01 100644
--- a/solr/CHANGES.txt
+++ b/solr/CHANGES.txt
@@ -100,6 +100,9 @@ Upgrade Notes
   events caused by updates, commits, or optimize, write your own listener as native Java class
   as part of a Solr plugin.
 
+* SOLR-11477: in the XML query parser (defType=xmlparser or {!xmlparser ... })
+  the resolving of external entities is now disallowed by default.
+
 New Features
 ----------------------
 * SOLR-10339: New set-trigger and remove-trigger APIs for autoscaling. (shalin)
@@ -271,6 +274,9 @@ Bug Fixes
 
 * SOLR-11449: MoveReplicaCmd mistakenly called registerCollectionStateWatcher on failure. (ab)
 
+* SOLR-11477: Disallow resolving of external entities in the XML query parser (defType=xmlparser).
+  (Michael Stepankin, Olga Barinova, Uwe Schindler, Christine Poerschke)
+
 Optimizations
 ----------------------
 

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/926cc4d6/solr/core/src/java/org/apache/solr/search/SolrCoreParser.java
----------------------------------------------------------------------
diff --git a/solr/core/src/java/org/apache/solr/search/SolrCoreParser.java b/solr/core/src/java/org/apache/solr/search/SolrCoreParser.java
index a5c2b03..df0127a 100755
--- a/solr/core/src/java/org/apache/solr/search/SolrCoreParser.java
+++ b/solr/core/src/java/org/apache/solr/search/SolrCoreParser.java
@@ -25,11 +25,13 @@ import org.apache.lucene.queryparser.xml.QueryBuilder;
 import org.apache.lucene.queryparser.xml.builders.SpanQueryBuilder;
 import org.apache.solr.common.SolrException;
 import org.apache.solr.common.util.NamedList;
+import org.apache.solr.common.util.XMLErrorLogger;
 import org.apache.solr.core.SolrResourceLoader;
 import org.apache.solr.request.SolrQueryRequest;
 import org.apache.solr.util.plugin.NamedListInitializedPlugin;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
+import org.xml.sax.ErrorHandler;
 
 /**
  * Assembles a QueryBuilder which uses Query objects from Solr's <code>search</code> module
@@ -38,6 +40,7 @@ import org.slf4j.LoggerFactory;
 public class SolrCoreParser extends CoreParser implements NamedListInitializedPlugin {
 
   private static final Logger log = LoggerFactory.getLogger(MethodHandles.lookup().lookupClass());
+  private static final XMLErrorLogger xmllog = new XMLErrorLogger(log);
 
   protected final SolrQueryRequest req;
 
@@ -97,4 +100,9 @@ public class SolrCoreParser extends CoreParser implements NamedListInitializedPl
     }
   }
 
+  @Override
+  protected ErrorHandler getErrorHandler() {
+    return xmllog;
+  }
+
 }


[8/9] lucene-solr:jira/solr-11285: SOLR-10335: Merge branch 'SOLR-10335' of https://github.com/tballison/lucene-solr

Posted by ab...@apache.org.
SOLR-10335: Merge branch 'SOLR-10335' of https://github.com/tballison/lucene-solr


Project: http://git-wip-us.apache.org/repos/asf/lucene-solr/repo
Commit: http://git-wip-us.apache.org/repos/asf/lucene-solr/commit/9d2f0cf2
Tree: http://git-wip-us.apache.org/repos/asf/lucene-solr/tree/9d2f0cf2
Diff: http://git-wip-us.apache.org/repos/asf/lucene-solr/diff/9d2f0cf2

Branch: refs/heads/jira/solr-11285
Commit: 9d2f0cf2547263e8c7472b694e7ed6e700f1399b
Parents: 926cc4d 605304d
Author: Shalin Shekhar Mangar <sh...@apache.org>
Authored: Fri Oct 13 20:24:25 2017 +0530
Committer: Shalin Shekhar Mangar <sh...@apache.org>
Committed: Fri Oct 13 20:24:25 2017 +0530

----------------------------------------------------------------------
 lucene/ivy-versions.properties                  |  23 ++-
 lucene/licenses/commons-compress-1.11.jar.sha1  |   1 -
 lucene/licenses/commons-compress-1.14.jar.sha1  |   1 +
 .../handler/dataimport/TikaEntityProcessor.java |   4 +
 .../src/test-files/dihextras/test_vsdx.vsdx     | Bin 0 -> 44426 bytes
 .../dataimport/TestTikaEntityProcessor.java     |  22 ++
 solr/contrib/extraction/ivy.xml                 |   6 +-
 solr/licenses/commons-collections4-4.1.jar.sha1 |   1 +
 .../commons-collections4-LICENSE-ASL.txt        | 202 +++++++++++++++++++
 solr/licenses/commons-collections4-NOTICE.txt   |   5 +
 solr/licenses/commons-compress-1.11.jar.sha1    |   1 -
 solr/licenses/commons-compress-1.14.jar.sha1    |   1 +
 solr/licenses/curvesapi-1.04.jar.sha1           |   1 +
 solr/licenses/curvesapi-LICENSE-BSD_LIKE.txt    |  28 +++
 solr/licenses/curvesapi-NOTICE.txt              |   2 +
 solr/licenses/fontbox-2.0.1.jar.sha1            |   1 -
 solr/licenses/fontbox-2.0.6.jar.sha1            |   1 +
 solr/licenses/jackcess-2.1.3.jar.sha1           |   1 -
 solr/licenses/jackcess-2.1.8.jar.sha1           |   1 +
 solr/licenses/jempbox-1.8.12.jar.sha1           |   1 -
 solr/licenses/jempbox-1.8.13.jar.sha1           |   1 +
 solr/licenses/jmatio-1.0.jar.sha1               |   1 -
 solr/licenses/jmatio-1.2.jar.sha1               |   1 +
 solr/licenses/metadata-extractor-2.8.1.jar.sha1 |   1 -
 solr/licenses/metadata-extractor-2.9.1.jar.sha1 |   1 +
 solr/licenses/pdfbox-2.0.1.jar.sha1             |   1 -
 solr/licenses/pdfbox-2.0.6.jar.sha1             |   1 +
 solr/licenses/pdfbox-tools-2.0.1.jar.sha1       |   1 -
 solr/licenses/pdfbox-tools-2.0.6.jar.sha1       |   1 +
 solr/licenses/poi-3.15-beta1.jar.sha1           |   1 -
 solr/licenses/poi-3.17-beta1.jar.sha1           |   1 +
 solr/licenses/poi-ooxml-3.15-beta1.jar.sha1     |   1 -
 solr/licenses/poi-ooxml-3.17-beta1.jar.sha1     |   1 +
 .../poi-ooxml-schemas-3.15-beta1.jar.sha1       |   1 -
 .../poi-ooxml-schemas-3.17-beta1.jar.sha1       |   1 +
 .../licenses/poi-scratchpad-3.15-beta1.jar.sha1 |   1 -
 .../licenses/poi-scratchpad-3.17-beta1.jar.sha1 |   1 +
 solr/licenses/rome-1.0.jar.sha1                 |   1 -
 solr/licenses/rome-1.5.1.jar.sha1               |   1 +
 solr/licenses/tika-core-1.13.jar.sha1           |   1 -
 solr/licenses/tika-core-1.16.jar.sha1           |   1 +
 solr/licenses/tika-java7-1.13.jar.sha1          |   1 -
 solr/licenses/tika-java7-1.16.jar.sha1          |   1 +
 solr/licenses/tika-parsers-1.13.jar.sha1        |   1 -
 solr/licenses/tika-parsers-1.16.jar.sha1        |   1 +
 solr/licenses/tika-xmp-1.13.jar.sha1            |   1 -
 solr/licenses/tika-xmp-1.16.jar.sha1            |   1 +
 solr/licenses/xz-1.5.jar.sha1                   |   1 -
 solr/licenses/xz-1.6.jar.sha1                   |   1 +
 49 files changed, 301 insertions(+), 31 deletions(-)
----------------------------------------------------------------------



[3/9] lucene-solr:jira/solr-11285: Merge remote-tracking branch 'upstream/master' into SOLR-10335

Posted by ab...@apache.org.
Merge remote-tracking branch 'upstream/master' into SOLR-10335


Project: http://git-wip-us.apache.org/repos/asf/lucene-solr/repo
Commit: http://git-wip-us.apache.org/repos/asf/lucene-solr/commit/4c7ff73c
Tree: http://git-wip-us.apache.org/repos/asf/lucene-solr/tree/4c7ff73c
Diff: http://git-wip-us.apache.org/repos/asf/lucene-solr/diff/4c7ff73c

Branch: refs/heads/jira/solr-11285
Commit: 4c7ff73c98169c837a8617fcfb8ea1789df29473
Parents: c501e81 77fc188
Author: tballison <ta...@mitre.org>
Authored: Thu Oct 5 12:51:03 2017 -0400
Committer: tballison <ta...@mitre.org>
Committed: Thu Oct 5 12:51:03 2017 -0400

----------------------------------------------------------------------
 dev-tools/maven/pom.xml.template                |   2 +-
 dev-tools/scripts/checkJavadocLinks.py          |   2 +-
 lucene/CHANGES.txt                              |   9 +-
 .../lucene/search/NormsFieldExistsQuery.java    |  80 +++++++
 .../search/TestNormsFieldExistsQuery.java       | 197 +++++++++++++++++
 .../directory/DirectoryTaxonomyReader.java      |  58 ++++-
 .../taxonomy/directory/TaxonomyIndexArrays.java |  40 +++-
 .../directory/TestDirectoryTaxonomyReader.java  |  34 ++-
 solr/CHANGES.txt                                |   2 +-
 solr/README.txt                                 |   4 +-
 solr/build.xml                                  |  29 +--
 solr/contrib/ltr/README.md                      |   2 +-
 .../org/apache/solr/cloud/AddReplicaCmd.java    |   1 -
 .../solr/cloud/autoscaling/AutoScaling.java     |   3 +-
 .../cloud/autoscaling/ScheduledTriggers.java    |  17 +-
 .../org/apache/solr/handler/StreamHandler.java  |   2 +
 .../apache/solr/search/facet/FacetField.java    |   3 +-
 .../cloud/TestCloudJSONFacetJoinDomain.java     | 220 +++++++++++++++----
 solr/example/README.txt                         |   4 +-
 solr/site/index.xsl                             |   3 +-
 solr/site/quickstart.mdtext                     |   6 -
 .../client/solrj/cloud/autoscaling/Policy.java  |  29 ++-
 .../io/eval/PolyFitDerivativeEvaluator.java     | 104 +++++++++
 .../client/solrj/io/eval/PolyFitEvaluator.java  | 102 +++++++++
 .../java/org/apache/solr/common/MapWriter.java  |   1 -
 .../solrj/cloud/autoscaling/TestPolicy.java     |   1 -
 .../solrj/io/stream/StreamExpressionTest.java   |  76 +++++--
 27 files changed, 911 insertions(+), 120 deletions(-)
----------------------------------------------------------------------



[4/9] lucene-solr:jira/solr-11285: tika's default was switched to "process embedded" -- need to send EmptyParser into ParseContext now to turn off parsing of embedded documents

Posted by ab...@apache.org.
tika's default was switched to "process embedded" -- need to send EmptyParser
into ParseContext now to turn off parsing of embedded documents

add curvesapi for vsdx and unit test.


Project: http://git-wip-us.apache.org/repos/asf/lucene-solr/repo
Commit: http://git-wip-us.apache.org/repos/asf/lucene-solr/commit/605304d9
Tree: http://git-wip-us.apache.org/repos/asf/lucene-solr/tree/605304d9
Diff: http://git-wip-us.apache.org/repos/asf/lucene-solr/diff/605304d9

Branch: refs/heads/jira/solr-11285
Commit: 605304d92789396dab83b8cf32d82c3014ad5dbc
Parents: 4c7ff73
Author: tballison <ta...@mitre.org>
Authored: Tue Oct 10 08:23:59 2017 -0400
Committer: tballison <ta...@mitre.org>
Committed: Tue Oct 10 08:23:59 2017 -0400

----------------------------------------------------------------------
 lucene/ivy-versions.properties                  |   1 +
 .../handler/dataimport/TikaEntityProcessor.java |   4 +++
 .../src/test-files/dihextras/test_vsdx.vsdx     | Bin 0 -> 44426 bytes
 .../dataimport/TestTikaEntityProcessor.java     |  22 +++++++++++++++
 solr/contrib/extraction/ivy.xml                 |   1 +
 solr/licenses/curvesapi-1.04.jar.sha1           |   1 +
 solr/licenses/curvesapi-LICENSE-BSD_LIKE.txt    |  28 +++++++++++++++++++
 solr/licenses/curvesapi-NOTICE.txt              |   2 ++
 8 files changed, 59 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/605304d9/lucene/ivy-versions.properties
----------------------------------------------------------------------
diff --git a/lucene/ivy-versions.properties b/lucene/ivy-versions.properties
index 8ce6006..d020231 100644
--- a/lucene/ivy-versions.properties
+++ b/lucene/ivy-versions.properties
@@ -22,6 +22,7 @@ com.fasterxml.jackson.core.version = 2.5.4
 /com.fasterxml.jackson.dataformat/jackson-dataformat-smile = ${com.fasterxml.jackson.core.version}
 
 /com.github.ben-manes.caffeine/caffeine = 2.4.0
+/com.github.virtuald/curvesapi = 1.04
 
 /com.google.guava/guava = 14.0.1
 

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/605304d9/solr/contrib/dataimporthandler-extras/src/java/org/apache/solr/handler/dataimport/TikaEntityProcessor.java
----------------------------------------------------------------------
diff --git a/solr/contrib/dataimporthandler-extras/src/java/org/apache/solr/handler/dataimport/TikaEntityProcessor.java b/solr/contrib/dataimporthandler-extras/src/java/org/apache/solr/handler/dataimport/TikaEntityProcessor.java
index 22850a1..95f0073 100644
--- a/solr/contrib/dataimporthandler-extras/src/java/org/apache/solr/handler/dataimport/TikaEntityProcessor.java
+++ b/solr/contrib/dataimporthandler-extras/src/java/org/apache/solr/handler/dataimport/TikaEntityProcessor.java
@@ -20,6 +20,7 @@ import org.apache.commons.io.IOUtils;
 import org.apache.tika.config.TikaConfig;
 import org.apache.tika.metadata.Metadata;
 import org.apache.tika.parser.AutoDetectParser;
+import org.apache.tika.parser.EmptyParser;
 import org.apache.tika.parser.ParseContext;
 import org.apache.tika.parser.Parser;
 import org.apache.tika.parser.html.HtmlMapper;
@@ -62,6 +63,7 @@ import static org.apache.solr.handler.dataimport.XPathEntityProcessor.URL;
  * @since solr 3.1
  */
 public class TikaEntityProcessor extends EntityProcessorBase {
+  private static Parser EMPTY_PARSER = new EmptyParser();
   private TikaConfig tikaConfig;
   private String format = "text";
   private boolean done = false;
@@ -155,6 +157,8 @@ public class TikaEntityProcessor extends EntityProcessorBase {
         }
         if (extractEmbedded) {
           context.set(Parser.class, tikaParser);
+        } else {
+          context.set(Parser.class, EMPTY_PARSER);
         }
         tikaParser.parse(is, contentHandler, metadata , context);
     } catch (Exception e) {

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/605304d9/solr/contrib/dataimporthandler-extras/src/test-files/dihextras/test_vsdx.vsdx
----------------------------------------------------------------------
diff --git a/solr/contrib/dataimporthandler-extras/src/test-files/dihextras/test_vsdx.vsdx b/solr/contrib/dataimporthandler-extras/src/test-files/dihextras/test_vsdx.vsdx
new file mode 100644
index 0000000..659ecdd
Binary files /dev/null and b/solr/contrib/dataimporthandler-extras/src/test-files/dihextras/test_vsdx.vsdx differ

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/605304d9/solr/contrib/dataimporthandler-extras/src/test/org/apache/solr/handler/dataimport/TestTikaEntityProcessor.java
----------------------------------------------------------------------
diff --git a/solr/contrib/dataimporthandler-extras/src/test/org/apache/solr/handler/dataimport/TestTikaEntityProcessor.java b/solr/contrib/dataimporthandler-extras/src/test/org/apache/solr/handler/dataimport/TestTikaEntityProcessor.java
index fe769bc..05acfca 100644
--- a/solr/contrib/dataimporthandler-extras/src/test/org/apache/solr/handler/dataimport/TestTikaEntityProcessor.java
+++ b/solr/contrib/dataimporthandler-extras/src/test/org/apache/solr/handler/dataimport/TestTikaEntityProcessor.java
@@ -62,6 +62,15 @@ public class TestTikaEntityProcessor extends AbstractDataImportHandlerTestCase {
           "  </document>" +
           "</dataConfig>";
 
+  private String vsdxConf =
+      "<dataConfig>" +
+          "  <dataSource type=\"BinFileDataSource\"/>" +
+          "  <document>" +
+          "    <entity name=\"Tika\" processor=\"TikaEntityProcessor\" url=\"" + getFile("dihextras/test_vsdx.vsdx").getAbsolutePath() + "\" >" +
+          "      <field column=\"text\"/>" +
+          "     </entity>" +
+          "  </document>" +
+          "</dataConfig>";
 
   private String[] tests = {
       "//*[@numFound='1']"
@@ -100,6 +109,11 @@ public class TestTikaEntityProcessor extends AbstractDataImportHandlerTestCase {
       "//str[@name='text'][not(contains(.,'When in the Course'))]"
   };
 
+  private String[] testsVSDX = {
+      "//*[@numFound='1']",
+      "//str[@name='text'][contains(.,'Arrears')]"
+  };
+
   @BeforeClass
   public static void beforeClass() throws Exception {
     assumeFalse("This test fails on UNIX with Turkish default locale (https://issues.apache.org/jira/browse/SOLR-6387)",
@@ -120,6 +134,14 @@ public class TestTikaEntityProcessor extends AbstractDataImportHandlerTestCase {
   }
 
   @Test
+  public void testVSDX() throws Exception {
+    //this ensures that we've included the curvesapi dependency
+    //and that the ConnectsType class is bundled with poi-ooxml-schemas.
+    runFullImport(vsdxConf);
+    assertQ(req("*:*"), testsVSDX);
+  }
+
+  @Test
   public void testTikaHTMLMapperEmpty() throws Exception {
     runFullImport(getConfigHTML(null));
     assertQ(req("*:*"), testsHTMLDefault);

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/605304d9/solr/contrib/extraction/ivy.xml
----------------------------------------------------------------------
diff --git a/solr/contrib/extraction/ivy.xml b/solr/contrib/extraction/ivy.xml
index 1d9d7a3..7143d81 100644
--- a/solr/contrib/extraction/ivy.xml
+++ b/solr/contrib/extraction/ivy.xml
@@ -51,6 +51,7 @@
     <dependency org="org.apache.poi" name="poi-ooxml-schemas" rev="${/org.apache.poi/poi-ooxml-schemas}" conf="compile"/>
     <dependency org="org.apache.xmlbeans" name="xmlbeans" rev="${/org.apache.xmlbeans/xmlbeans}" conf="compile"/>
     <dependency org="org.apache.commons" name="commons-collections4" rev="${/org.apache.commons/commons-collections4}" conf="compile"/>
+    <dependency org="com.github.virtuald" name="curvesapi" rev="${/com.github.virtuald/curvesapi}" conf="compile"/>
     <dependency org="org.ccil.cowan.tagsoup" name="tagsoup" rev="${/org.ccil.cowan.tagsoup/tagsoup}" conf="compile"/>
     <dependency org="com.googlecode.mp4parser" name="isoparser" rev="${/com.googlecode.mp4parser/isoparser}" conf="compile"/>
     <dependency org="org.aspectj" name="aspectjrt" rev="${/org.aspectj/aspectjrt}" conf="compile"/>

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/605304d9/solr/licenses/curvesapi-1.04.jar.sha1
----------------------------------------------------------------------
diff --git a/solr/licenses/curvesapi-1.04.jar.sha1 b/solr/licenses/curvesapi-1.04.jar.sha1
new file mode 100644
index 0000000..51c2626
--- /dev/null
+++ b/solr/licenses/curvesapi-1.04.jar.sha1
@@ -0,0 +1 @@
+3386abf821719bc89c7685f9eaafaf4a842f0199

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/605304d9/solr/licenses/curvesapi-LICENSE-BSD_LIKE.txt
----------------------------------------------------------------------
diff --git a/solr/licenses/curvesapi-LICENSE-BSD_LIKE.txt b/solr/licenses/curvesapi-LICENSE-BSD_LIKE.txt
new file mode 100644
index 0000000..22df7b1
--- /dev/null
+++ b/solr/licenses/curvesapi-LICENSE-BSD_LIKE.txt
@@ -0,0 +1,28 @@
+Copyright (c) 2005, Graph Builder
+All rights reserved.
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions
+are met:
+
+-Redistributions of source code must retain the above copyright notice,
+this list of conditions and the following disclaimer.
+
+-Redistributions in binary form must reproduce the above copyright notice,
+this list of conditions and the following disclaimer in the documentation
+and/or other materials provided with the distribution.
+
+-Neither the name of Graph Builder nor the names of its contributors may be
+used to endorse or promote products derived from this software without
+specific prior written permission.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
+SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
+CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/605304d9/solr/licenses/curvesapi-NOTICE.txt
----------------------------------------------------------------------
diff --git a/solr/licenses/curvesapi-NOTICE.txt b/solr/licenses/curvesapi-NOTICE.txt
new file mode 100644
index 0000000..326e674
--- /dev/null
+++ b/solr/licenses/curvesapi-NOTICE.txt
@@ -0,0 +1,2 @@
+Copyright (c) 2005, Graph Builder
+All rights reserved.


[5/9] lucene-solr:jira/solr-11285: SOLR-11482: RunExecutableListener was removed for security reasons

Posted by ab...@apache.org.
SOLR-11482: RunExecutableListener was removed for security reasons


Project: http://git-wip-us.apache.org/repos/asf/lucene-solr/repo
Commit: http://git-wip-us.apache.org/repos/asf/lucene-solr/commit/7b313bb5
Tree: http://git-wip-us.apache.org/repos/asf/lucene-solr/tree/7b313bb5
Diff: http://git-wip-us.apache.org/repos/asf/lucene-solr/diff/7b313bb5

Branch: refs/heads/jira/solr-11285
Commit: 7b313bb597a6d1f78773dc9c00f484c078a46c25
Parents: 8a7d04a
Author: Uwe Schindler <us...@apache.org>
Authored: Fri Oct 13 13:48:18 2017 +0200
Committer: Uwe Schindler <us...@apache.org>
Committed: Fri Oct 13 13:48:18 2017 +0200

----------------------------------------------------------------------
 solr/CHANGES.txt                                |   7 +
 .../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 | 148 -------------------
 .../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 ---
 .../configsets/_default/conf/solrconfig.xml     |  23 ---
 .../with-run-executable-listener/managed-schema |  25 ----
 .../with-run-executable-listener/solrconfig.xml |  69 ---------
 .../apache/solr/cloud/TestConfigSetsAPI.java    |  12 --
 .../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 ---
 .../configsets/_default/conf/solrconfig.xml     |  23 ---
 .../conf/solrconfig.xml                         |  23 ---
 solr/solr-ref-guide/src/configsets-api.adoc     |   1 -
 .../src/updatehandlers-in-solrconfig.adoc       |  18 +--
 23 files changed, 10 insertions(+), 610 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/7b313bb5/solr/CHANGES.txt
----------------------------------------------------------------------
diff --git a/solr/CHANGES.txt b/solr/CHANGES.txt
index 9101440..28fea4e 100644
--- a/solr/CHANGES.txt
+++ b/solr/CHANGES.txt
@@ -96,6 +96,10 @@ Upgrade Notes
 * SOLR-10962: in the ReplicationHandler the master.commitReserveDuration sub-element is deprecated. Instead
   please configure a direct commitReserveDuration element for use in all modes (master, slave, cloud).
 
+* SOLR-11482: RunExecutableListener was removed for security reasons. If you want to listen to
+  events caused by updates, commits, or optimize, write your own listener as native Java class
+  as part of a Solr plugin.
+
 New Features
 ----------------------
 * SOLR-10339: New set-trigger and remove-trigger APIs for autoscaling. (shalin)
@@ -368,6 +372,9 @@ Other Changes
 * SOLR-11306: Fix inaccurate comments on docValues and StrField in the example schemas
   (Tom Burton-West, Jason Gerlowski, Varun Thacker)
 
+* SOLR-11482: RunExecutableListener was removed for security reasons.  (Michael Stepankin,
+  Olga Barinova, Uwe Schindler, Tomás Fernández Löbbe)
+
 ==================  7.0.1 ==================
 
 Consult the LUCENE_CHANGES.txt file for additional, low level, changes in this release.

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/7b313bb5/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 8d0f82e..5ff4254 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/7b313bb5/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 4dbf082..faffeb8 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/7b313bb5/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 96392d3..776de39 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/7b313bb5/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 df7dc1e..55cd3fa 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/7b313bb5/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
deleted file mode 100644
index c6d0090..0000000
--- a/solr/core/src/java/org/apache/solr/core/RunExecutableListener.java
+++ /dev/null
@@ -1,148 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-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.search.SolrIndexSearcher;
-import org.apache.solr.util.plugin.SolrCoreAware;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import java.io.File;
-import java.io.IOException;
-import java.lang.invoke.MethodHandles;
-import java.util.List;
-import java.util.ArrayList;
-
-/**
- */
-class RunExecutableListener extends AbstractSolrEventListener implements SolrCoreAware {
-  private static final Logger log = LoggerFactory.getLogger(MethodHandles.lookup().lookupClass());
-  
-  public RunExecutableListener(SolrCore core) {
-    super(core);
-  }
-  protected String[] cmd;
-  protected File dir;
-  protected String[] envp;
-  protected boolean wait=true;
-
-  @Override
-  public void init(NamedList args) {
-    super.init(args);
-
-    List cmdlist = new ArrayList();
-    cmdlist.add(args.get("exe"));
-    List lst = (List)args.get("args");
-    if (lst != null) cmdlist.addAll(lst);
-    cmd = (String[])cmdlist.toArray(new String[cmdlist.size()]);
-
-    lst = (List)args.get("env");
-    if (lst != null) {
-      envp = (String[])lst.toArray(new String[lst.size()]);
-    }
-
-    String str = (String)args.get("dir");
-    if (str==null || str.equals("") || str.equals(".") || str.equals("./")) {
-      dir = null;
-    } else {
-      dir = new File(str);
-    }
-
-    if ("false".equals(args.get("wait")) || Boolean.FALSE.equals(args.get("wait"))) wait=false;
-  }
-
-  @Override
-  public void inform(SolrCore core) {
-    if (!core.getCoreDescriptor().isConfigSetTrusted()) {
-      throw new SolrException(ErrorCode.UNAUTHORIZED, "The configset for this collection was uploaded without any authentication in place,"
-          + " and this operation is not available for collections with untrusted configsets. To have this component, re-upload the configset"
-          + " after enabling authentication and authorization.");
-    }
-  }
-
-  /**
-   * 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 />
-   *  non-zero , otherwise.
-   */
-  protected int exec(String callback) {
-    int ret = 0;
-
-    try {
-      boolean doLog = log.isDebugEnabled();
-      if (doLog) {
-        log.debug("About to exec " + cmd[0]);
-      }
-      final Process proc;
-      try {
-        proc = Runtime.getRuntime().exec(cmd, envp ,dir);
-      } catch (Error err) {
-        // Create better error message
-        if (err.getMessage() != null && (err.getMessage().contains("posix_spawn") || err.getMessage().contains("UNIXProcess"))) {
-          Error newErr = new Error("Error forking command due to JVM locale bug (see https://issues.apache.org/jira/browse/SOLR-6387): " + err.getMessage());
-          newErr.setStackTrace(err.getStackTrace());
-          err = newErr;
-        }
-        throw err;
-      }
-
-      if (wait) {
-        try {
-          ret = proc.waitFor();
-        } catch (InterruptedException e) {
-          SolrException.log(log,e);
-          ret = INVALID_PROCESS_RETURN_CODE;
-        }
-      }
-
-      if (wait && doLog) {
-        log.debug("Executable " + cmd[0] + " returned " + ret);
-      }
-
-    } catch (IOException e) {
-      // don't throw exception, just log it...
-      SolrException.log(log,e);
-      ret = INVALID_PROCESS_RETURN_CODE;
-    }
-
-    return ret;
-  }
-
-
-  @Override
-  public void postCommit() {
-    // anything generic need to be passed to the external program?
-    // the directory of the index?  the command that caused it to be
-    // invoked?  the version of the index?
-    exec("postCommit");
-  }
-
-  @Override
-  public void newSearcher(SolrIndexSearcher newSearcher, SolrIndexSearcher currentSearcher) {
-    exec("newSearcher");
-  }
-
-  /** Non-zero value for an invalid return code **/
-  private static int INVALID_PROCESS_RETURN_CODE = -1;
-
-}

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/7b313bb5/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 fc33e46..b967c0d 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/7b313bb5/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 65820e0..1edaa86 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/7b313bb5/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 083333c..1c8e10f 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/7b313bb5/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 431447c..25071a5 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/7b313bb5/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 6528aba..3393f9f 100644
--- a/solr/core/src/test-files/solr/collection1/conf/solrconfig.xml
+++ b/solr/core/src/test-files/solr/collection1/conf/solrconfig.xml
@@ -73,23 +73,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/7b313bb5/solr/core/src/test-files/solr/configsets/_default/conf/solrconfig.xml
----------------------------------------------------------------------
diff --git a/solr/core/src/test-files/solr/configsets/_default/conf/solrconfig.xml b/solr/core/src/test-files/solr/configsets/_default/conf/solrconfig.xml
index 3b11082..49f3a38 100644
--- a/solr/core/src/test-files/solr/configsets/_default/conf/solrconfig.xml
+++ b/solr/core/src/test-files/solr/configsets/_default/conf/solrconfig.xml
@@ -331,29 +331,6 @@
          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>
 

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/7b313bb5/solr/core/src/test-files/solr/configsets/upload/with-run-executable-listener/managed-schema
----------------------------------------------------------------------
diff --git a/solr/core/src/test-files/solr/configsets/upload/with-run-executable-listener/managed-schema b/solr/core/src/test-files/solr/configsets/upload/with-run-executable-listener/managed-schema
deleted file mode 100644
index 9e2f947..0000000
--- a/solr/core/src/test-files/solr/configsets/upload/with-run-executable-listener/managed-schema
+++ /dev/null
@@ -1,25 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" ?>
-<!--
- Licensed to the Apache Software Foundation (ASF) under one or more
- contributor license agreements.  See the NOTICE file distributed with
- this work for additional information regarding copyright ownership.
- The ASF licenses this file to You under the Apache License, Version 2.0
- (the "License"); you may not use this file except in compliance with
- the License.  You may obtain a copy of the License at
-
-     http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
--->
-<schema name="minimal" version="1.1">
- <types>
-  <fieldType name="string" class="solr.StrField"/>
- </types>
- <fields>
-   <dynamicField name="*" type="string" indexed="true" stored="true" />
- </fields>
-</schema>

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/7b313bb5/solr/core/src/test-files/solr/configsets/upload/with-run-executable-listener/solrconfig.xml
----------------------------------------------------------------------
diff --git a/solr/core/src/test-files/solr/configsets/upload/with-run-executable-listener/solrconfig.xml b/solr/core/src/test-files/solr/configsets/upload/with-run-executable-listener/solrconfig.xml
deleted file mode 100644
index 4683841..0000000
--- a/solr/core/src/test-files/solr/configsets/upload/with-run-executable-listener/solrconfig.xml
+++ /dev/null
@@ -1,69 +0,0 @@
-<?xml version="1.0" ?>
-
-<!--
- Licensed to the Apache Software Foundation (ASF) under one or more
- contributor license agreements.  See the NOTICE file distributed with
- this work for additional information regarding copyright ownership.
- The ASF licenses this file to You under the Apache License, Version 2.0
- (the "License"); you may not use this file except in compliance with
- the License.  You may obtain a copy of the License at
-
-     http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
--->
-
-<!-- This is a "kitchen sink" config file that tests can use.
-     When writting a new test, feel free to add *new* items (plugins,
-     config options, etc...) as long as they don't break any existing
-     tests.  if you need to test something esoteric please add a new
-     "solrconfig-your-esoteric-purpose.xml" config file.
-
-     Note in particular that this test is used by MinimalSchemaTest so
-     Anything added to this file needs to work correctly even if there
-     is now uniqueKey or defaultSearch Field.
-  -->
-
-<config>
-
-  <dataDir>${solr.data.dir:}</dataDir>
-
-  <directoryFactory name="DirectoryFactory"
-                    class="${solr.directoryFactory:solr.NRTCachingDirectoryFactory}"/>
-
-  <luceneMatchVersion>${tests.luceneMatchVersion:LATEST}</luceneMatchVersion>
-
-  <updateHandler class="solr.DirectUpdateHandler2">
-    <commitWithin>
-      <softCommit>${solr.commitwithin.softcommit:true}</softCommit>
-    </commitWithin>
-
-    <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>
-  <requestHandler name="/select" class="solr.SearchHandler">
-    <lst name="defaults">
-      <str name="echoParams">explicit</str>
-      <str name="indent">true</str>
-      <str name="df">text</str>
-    </lst>
-
-  </requestHandler>
-
-  <requestHandler name="/update/xslt"
-                   startup="lazy"
-                   class="solr.XsltUpdateRequestHandler"/>
-
-  <requestHandler name="/update" class="solr.UpdateRequestHandler"  />
-</config>
-

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/7b313bb5/solr/core/src/test/org/apache/solr/cloud/TestConfigSetsAPI.java
----------------------------------------------------------------------
diff --git a/solr/core/src/test/org/apache/solr/cloud/TestConfigSetsAPI.java b/solr/core/src/test/org/apache/solr/cloud/TestConfigSetsAPI.java
index d59b6ea..374e27a 100644
--- a/solr/core/src/test/org/apache/solr/cloud/TestConfigSetsAPI.java
+++ b/solr/core/src/test/org/apache/solr/cloud/TestConfigSetsAPI.java
@@ -328,18 +328,6 @@ public class TestConfigSetsAPI extends SolrTestCaseJ4 {
   }
   
   @Test
-  public void testUploadWithRunExecutableListener() throws Exception {
-    String suffix = "-untrusted";
-    uploadConfigSet("with-run-executable-listener", suffix, null, null);
-    // try to create a collection with the uploaded configset
-    CollectionAdminResponse resp = createCollection("newcollection3", "with-run-executable-listener" + suffix, 1, 1, solrCluster.getSolrClient());
-    log.info("Client saw errors: "+resp.getErrorMessages());
-    assertTrue(resp.getErrorMessages() != null && resp.getErrorMessages().size() > 0);
-    assertTrue(resp.getErrorMessages().getVal(0).
-        contains("The configset for this collection was uploaded without any authentication"));
-  }
-
-  @Test
   public void testUploadWithScriptUpdateProcessor() throws Exception {
     for (boolean withAuthorization: Arrays.asList(false, true)) {
       String suffix;

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/7b313bb5/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 6b53a95..1ffbbe8 100644
--- a/solr/example/example-DIH/solr/db/conf/solrconfig.xml
+++ b/solr/example/example-DIH/solr/db/conf/solrconfig.xml
@@ -321,29 +321,6 @@
          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>
 

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/7b313bb5/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 ba7f2e1..770b0fd 100644
--- a/solr/example/example-DIH/solr/mail/conf/solrconfig.xml
+++ b/solr/example/example-DIH/solr/mail/conf/solrconfig.xml
@@ -324,29 +324,6 @@
          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>
 

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/7b313bb5/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 745e575..3f00141 100644
--- a/solr/example/example-DIH/solr/solr/conf/solrconfig.xml
+++ b/solr/example/example-DIH/solr/solr/conf/solrconfig.xml
@@ -321,29 +321,6 @@
          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>
 

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/7b313bb5/solr/example/files/conf/solrconfig.xml
----------------------------------------------------------------------
diff --git a/solr/example/files/conf/solrconfig.xml b/solr/example/files/conf/solrconfig.xml
index 748bd0f..bca0df8 100644
--- a/solr/example/files/conf/solrconfig.xml
+++ b/solr/example/files/conf/solrconfig.xml
@@ -322,29 +322,6 @@
          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>
 

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/7b313bb5/solr/server/solr/configsets/_default/conf/solrconfig.xml
----------------------------------------------------------------------
diff --git a/solr/server/solr/configsets/_default/conf/solrconfig.xml b/solr/server/solr/configsets/_default/conf/solrconfig.xml
index 3b11082..49f3a38 100644
--- a/solr/server/solr/configsets/_default/conf/solrconfig.xml
+++ b/solr/server/solr/configsets/_default/conf/solrconfig.xml
@@ -331,29 +331,6 @@
          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>
 

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/7b313bb5/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 65750c2..6fc1bd2 100644
--- a/solr/server/solr/configsets/sample_techproducts_configs/conf/solrconfig.xml
+++ b/solr/server/solr/configsets/sample_techproducts_configs/conf/solrconfig.xml
@@ -336,29 +336,6 @@
          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>
 

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/7b313bb5/solr/solr-ref-guide/src/configsets-api.adoc
----------------------------------------------------------------------
diff --git a/solr/solr-ref-guide/src/configsets-api.adoc b/solr/solr-ref-guide/src/configsets-api.adoc
index ee4f24c..ef67781 100644
--- a/solr/solr-ref-guide/src/configsets-api.adoc
+++ b/solr/solr-ref-guide/src/configsets-api.adoc
@@ -155,7 +155,6 @@ http://localhost:8983/solr/admin/configs?action=LIST
 
 Upload a ConfigSet, sent in as a zipped file. Please note that a ConfigSet is uploaded in a "trusted" mode if authentication is enabled and this upload operation is performed as an authenticated request. Without authentication, a ConfigSet is uploaded in an "untrusted" mode. Upon creation of a collection using an "untrusted" ConfigSet, the following functionality would not work:
 
- * RunExecutableListener does not initialize, if specified in the ConfigSet.
  * DataImportHandler's ScriptTransformer does not initialize, if specified in the ConfigSet.
  * XSLT transformer (tr parameter) cannot be used at request processing time.
  * StatelessScriptUpdateProcessor does not initialize, if specified in the ConfigSet.

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/7b313bb5/solr/solr-ref-guide/src/updatehandlers-in-solrconfig.adoc
----------------------------------------------------------------------
diff --git a/solr/solr-ref-guide/src/updatehandlers-in-solrconfig.adoc b/solr/solr-ref-guide/src/updatehandlers-in-solrconfig.adoc
index 1d0a5cf..082ccf9 100644
--- a/solr/solr-ref-guide/src/updatehandlers-in-solrconfig.adoc
+++ b/solr/solr-ref-guide/src/updatehandlers-in-solrconfig.adoc
@@ -91,22 +91,8 @@ With this configuration, when you call `commitWithin` as part of your update mes
 
 The UpdateHandler section is also where update-related event listeners can be configured. These can be triggered to occur after any commit (`event="postCommit"`) or only after optimize commands (`event="postOptimize"`).
 
-Users can write custom update event listener classes, but a common use case is to run external executables via the `RunExecutableListener`:
-
-`exe`::
-The name of the executable to run. It should include the path to the file, relative to Solr home.
-
-`dir`::
-The directory to use as the working directory. The default is the current directory (".").
-
-`wait`::
-Forces the calling thread to wait until the executable returns a response. The default is `true`.
-
-`args`::
-Any arguments to pass to the program. The default is none.
-
-`env`::
-Any environment variables to set. The default is none.
+Users can write custom update event listener classes in Solr plugins. As of Solr 7.1,
+`RunExecutableListener` was removed for security reasons.
 
 == Transaction Log
 


[9/9] lucene-solr:jira/solr-11285: Merge branch 'master' into jira/solr-11285

Posted by ab...@apache.org.
Merge branch 'master' into jira/solr-11285


Project: http://git-wip-us.apache.org/repos/asf/lucene-solr/repo
Commit: http://git-wip-us.apache.org/repos/asf/lucene-solr/commit/06b5e5eb
Tree: http://git-wip-us.apache.org/repos/asf/lucene-solr/tree/06b5e5eb
Diff: http://git-wip-us.apache.org/repos/asf/lucene-solr/diff/06b5e5eb

Branch: refs/heads/jira/solr-11285
Commit: 06b5e5ebee525f4827fbd2ede77c53b01378cc5f
Parents: a076f72 9d2f0cf
Author: Andrzej Bialecki <ab...@apache.org>
Authored: Fri Oct 13 19:11:29 2017 +0200
Committer: Andrzej Bialecki <ab...@apache.org>
Committed: Fri Oct 13 19:11:29 2017 +0200

----------------------------------------------------------------------
 lucene/CHANGES.txt                              |   8 +
 lucene/ivy-versions.properties                  |  23 ++-
 lucene/licenses/commons-compress-1.11.jar.sha1  |   1 -
 lucene/licenses/commons-compress-1.14.jar.sha1  |   1 +
 .../lucene/queryparser/xml/CoreParser.java      |  65 ++++--
 .../queryparser/xml/DOCTYPE_TermQuery.xml       |  19 ++
 .../lucene/queryparser/xml/ENTITY_TermQuery.xml |  23 +++
 .../lucene/queryparser/xml/TestCoreParser.java  |  13 ++
 solr/CHANGES.txt                                |  13 ++
 .../solr/collection1/conf/solrconfig.xml        |  25 ---
 .../handler/dataimport/TikaEntityProcessor.java |   4 +
 .../src/test-files/dihextras/test_vsdx.vsdx     | Bin 0 -> 44426 bytes
 .../dataimport/TestTikaEntityProcessor.java     |  22 ++
 solr/contrib/extraction/ivy.xml                 |   6 +-
 .../solr/collection1/conf/solrconfig.xml        |  18 --
 .../uima/solr/collection1/conf/solrconfig.xml   |  25 ---
 .../uima/uima-tokenizers-solrconfig.xml         |  27 +--
 .../apache/solr/core/RunExecutableListener.java | 148 --------------
 .../org/apache/solr/search/SolrCoreParser.java  |   8 +
 .../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 --
 .../configsets/_default/conf/solrconfig.xml     |  23 ---
 .../with-run-executable-listener/managed-schema |  25 ---
 .../with-run-executable-listener/solrconfig.xml |  69 -------
 .../apache/solr/cloud/TestConfigSetsAPI.java    |  12 --
 .../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 ---
 solr/licenses/commons-collections4-4.1.jar.sha1 |   1 +
 .../commons-collections4-LICENSE-ASL.txt        | 202 +++++++++++++++++++
 solr/licenses/commons-collections4-NOTICE.txt   |   5 +
 solr/licenses/commons-compress-1.11.jar.sha1    |   1 -
 solr/licenses/commons-compress-1.14.jar.sha1    |   1 +
 solr/licenses/curvesapi-1.04.jar.sha1           |   1 +
 solr/licenses/curvesapi-LICENSE-BSD_LIKE.txt    |  28 +++
 solr/licenses/curvesapi-NOTICE.txt              |   2 +
 solr/licenses/fontbox-2.0.1.jar.sha1            |   1 -
 solr/licenses/fontbox-2.0.6.jar.sha1            |   1 +
 solr/licenses/jackcess-2.1.3.jar.sha1           |   1 -
 solr/licenses/jackcess-2.1.8.jar.sha1           |   1 +
 solr/licenses/jempbox-1.8.12.jar.sha1           |   1 -
 solr/licenses/jempbox-1.8.13.jar.sha1           |   1 +
 solr/licenses/jmatio-1.0.jar.sha1               |   1 -
 solr/licenses/jmatio-1.2.jar.sha1               |   1 +
 solr/licenses/metadata-extractor-2.8.1.jar.sha1 |   1 -
 solr/licenses/metadata-extractor-2.9.1.jar.sha1 |   1 +
 solr/licenses/pdfbox-2.0.1.jar.sha1             |   1 -
 solr/licenses/pdfbox-2.0.6.jar.sha1             |   1 +
 solr/licenses/pdfbox-tools-2.0.1.jar.sha1       |   1 -
 solr/licenses/pdfbox-tools-2.0.6.jar.sha1       |   1 +
 solr/licenses/poi-3.15-beta1.jar.sha1           |   1 -
 solr/licenses/poi-3.17-beta1.jar.sha1           |   1 +
 solr/licenses/poi-ooxml-3.15-beta1.jar.sha1     |   1 -
 solr/licenses/poi-ooxml-3.17-beta1.jar.sha1     |   1 +
 .../poi-ooxml-schemas-3.15-beta1.jar.sha1       |   1 -
 .../poi-ooxml-schemas-3.17-beta1.jar.sha1       |   1 +
 .../licenses/poi-scratchpad-3.15-beta1.jar.sha1 |   1 -
 .../licenses/poi-scratchpad-3.17-beta1.jar.sha1 |   1 +
 solr/licenses/rome-1.0.jar.sha1                 |   1 -
 solr/licenses/rome-1.5.1.jar.sha1               |   1 +
 solr/licenses/tika-core-1.13.jar.sha1           |   1 -
 solr/licenses/tika-core-1.16.jar.sha1           |   1 +
 solr/licenses/tika-java7-1.13.jar.sha1          |   1 -
 solr/licenses/tika-java7-1.16.jar.sha1          |   1 +
 solr/licenses/tika-parsers-1.13.jar.sha1        |   1 -
 solr/licenses/tika-parsers-1.16.jar.sha1        |   1 +
 solr/licenses/tika-xmp-1.13.jar.sha1            |   1 -
 solr/licenses/tika-xmp-1.16.jar.sha1            |   1 +
 solr/licenses/xz-1.5.jar.sha1                   |   1 -
 solr/licenses/xz-1.6.jar.sha1                   |   1 +
 .../configsets/_default/conf/solrconfig.xml     |  23 ---
 .../conf/solrconfig.xml                         |  23 ---
 solr/solr-ref-guide/src/configsets-api.adoc     |   1 -
 .../src/updatehandlers-in-solrconfig.adoc       |  18 +-
 78 files changed, 441 insertions(+), 653 deletions(-)
----------------------------------------------------------------------