You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by jb...@apache.org on 2019/06/06 01:53:47 UTC

[lucene-solr] 02/04: Merge branch 'master' into SOLR-13105-visual

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

jbernste pushed a commit to branch SOLR-13105-visual
in repository https://gitbox.apache.org/repos/asf/lucene-solr.git

commit a1efdf2eb0f43b9ac5c474de94237436905f944e
Merge: c6fa8ab f3148fa
Author: Joel Bernstein <jb...@apache.org>
AuthorDate: Wed Jun 5 21:20:18 2019 -0400

    Merge branch 'master' into SOLR-13105-visual

 .gitignore                                         |    1 +
 build.xml                                          |   40 +-
 dev-tools/doap/lucene.rdf                          |   23 +-
 dev-tools/doap/solr.rdf                            |   25 +-
 dev-tools/eclipse/dot.classpath.xsl                |    2 +-
 .../dot.settings/org.eclipse.jdt.core.prefs        |    6 +-
 dev-tools/idea/.idea/ant.xml                       |    1 +
 .../Solr_jaeger_tracer_configurator_library.xml    |   10 +
 dev-tools/idea/.idea/misc.xml                      |    2 +-
 dev-tools/idea/.idea/modules.xml                   |    2 +
 dev-tools/idea/.idea/workspace.xml                 |    8 +
 dev-tools/idea/lucene/luke/luke.iml                |   33 +
 .../jaegertracer-configurator.iml                  |   37 +
 .../solr/test-framework/solr-test-framework.iml    |    1 +
 dev-tools/maven/README.maven                       |    6 +-
 dev-tools/maven/pom.xml.template                   |   49 +-
 .../jaegertracer-configurator/pom.xml.template     |   80 +
 dev-tools/maven/solr/contrib/pom.xml.template      |    1 +
 dev-tools/scripts/addVersion.py                    |    2 +-
 dev-tools/scripts/checkJavaDocs.py                 |   11 +-
 dev-tools/scripts/checkJavadocLinks.py             |   11 +-
 dev-tools/scripts/poll-mirrors.py                  |   39 +-
 dev-tools/scripts/smokeTestRelease.py              |  132 +-
 lucene/BUILD.txt                                   |    6 +-
 lucene/CHANGES.txt                                 |  136 +-
 lucene/SYSTEM_REQUIREMENTS.txt                     |    2 +-
 lucene/analysis/common/build.xml                   |    2 +-
 .../lucene/analysis/hunspell/Dictionary.java       |   10 +-
 .../lucene/analysis/snowball/SnowballFilter.java   |    2 +-
 .../snowball/SnowballPorterFilterFactory.java      |    2 +-
 .../analysis/util/AbstractAnalysisFactory.java     |    3 +-
 .../analysis/util/ClasspathResourceLoader.java     |    2 +-
 .../lucene/analysis/core/TestRandomChains.java     |    2 +-
 .../analysis/util/StringMockResourceLoader.java    |    2 +-
 lucene/analysis/kuromoji/build.xml                 |    7 +-
 lucene/analysis/kuromoji/ivy.xml                   |    4 +-
 .../ja/dict/TokenInfoDictionary$buffer.dat         |  Bin 4337216 -> 4337224 bytes
 .../analysis/ja/dict/TokenInfoDictionary$fst.dat   |  Bin 1698563 -> 1698570 bytes
 .../ja/dict/TokenInfoDictionary$targetMap.dat      |  Bin 392165 -> 392166 bytes
 .../analysis/ja/StringMockResourceLoader.java      |    2 +-
 .../lucene/analysis/ja/TestJapaneseTokenizer.java  |   12 +
 .../ja/util/TokenInfoDictionaryBuilder.java        |    2 +-
 .../src/tools/patches/Noun.proper.csv.patch        |   22 +
 .../apache/lucene/analysis/ko/KoreanAnalyzer.java  |    2 +-
 .../apache/lucene/analysis/ko/KoreanTokenizer.java |   37 +-
 .../lucene/analysis/ko/KoreanTokenizerFactory.java |    7 +-
 .../analysis/ko/dict/CharacterDefinition.java      |    2 +-
 .../analysis/ko/StringMockResourceLoader.java      |    2 +-
 .../lucene/analysis/ko/TestKoreanTokenizer.java    |   40 +-
 .../analysis/ko/TestKoreanTokenizerFactory.java    |   30 +
 .../ko/util/TokenInfoDictionaryBuilder.java        |    2 +-
 .../analysis/phonetic/PhoneticFilterFactory.java   |    2 +-
 .../lucene/index/TestBackwardsCompatibility.java   |   14 +-
 .../org/apache/lucene/index/index.8.1.0-cfs.zip    |  Bin 0 -> 15686 bytes
 .../org/apache/lucene/index/index.8.1.0-nocfs.zip  |  Bin 0 -> 15705 bytes
 .../org/apache/lucene/index/index.8.1.1-cfs.zip    |  Bin 0 -> 15622 bytes
 .../org/apache/lucene/index/index.8.1.1-nocfs.zip  |  Bin 0 -> 15615 bytes
 .../test/org/apache/lucene/index/sorted.8.1.0.zip  |  Bin 0 -> 91038 bytes
 .../test/org/apache/lucene/index/sorted.8.1.1.zip  |  Bin 0 -> 393883 bytes
 .../apache/lucene/index/unsupported.7.7.2-cfs.zip  |  Bin 0 -> 15556 bytes
 .../lucene/index/unsupported.7.7.2-nocfs.zip       |  Bin 0 -> 15556 bytes
 lucene/benchmark/build.xml                         |   17 +-
 .../lucene/benchmark/byTask/PerfRunData.java       |    8 +-
 .../byTask/feeds/EnwikiContentSource.java          |   26 +-
 .../benchmark/byTask/feeds/TrecContentSource.java  |    4 +-
 .../benchmark/byTask/tasks/CreateIndexTask.java    |    9 +-
 .../benchmark/byTask/tasks/NewAnalyzerTask.java    |    2 +-
 .../byTask/tasks/SearchWithCollectorTask.java      |    2 +-
 .../benchmark/quality/utils/DocNameExtractor.java  |    7 +-
 lucene/build.xml                                   |    4 +-
 .../blocktreeords/OrdsBlockTreeTermsWriter.java    |    2 +-
 .../codecs/blocktreeords/OrdsSegmentTermsEnum.java |    2 -
 .../codecs/simpletext/SimpleTextBKDWriter.java     |   21 +-
 .../simpletext/SimpleTextSegmentInfoFormat.java    |    4 +-
 .../simpletext/SimpleTextStoredFieldsReader.java   |    7 +-
 lucene/common-build.xml                            |  182 +-
 lucene/core/build.xml                              |    9 -
 .../tokenattributes/CharTermAttributeImpl.java     |   10 +-
 .../apache/lucene/codecs/StoredFieldsWriter.java   |    7 +-
 .../codecs/blocktree/BlockTreeTermsReader.java     |   57 +-
 .../codecs/blocktree/BlockTreeTermsWriter.java     |    2 +-
 .../lucene/codecs/blocktree/FieldReader.java       |    3 +-
 .../compressing/CompressingStoredFieldsReader.java |    5 +-
 .../org/apache/lucene/codecs/compressing/LZ4.java  |    3 +-
 .../codecs/lucene50/Lucene50PostingsFormat.java    |   49 +-
 .../lucene/codecs/lucene80/Lucene80Codec.java      |   11 +-
 .../org/apache/lucene/document/BinaryPoint.java    |    3 +-
 .../document/DocumentStoredFieldVisitor.java       |    6 +-
 .../org/apache/lucene/document/DoubleRange.java    |    7 +-
 .../org/apache/lucene/document/FeatureField.java   |   22 +-
 .../apache/lucene/document/FeatureSortField.java   |  164 ++
 .../java/org/apache/lucene/document/FieldType.java |    1 +
 .../org/apache/lucene/document/FloatRange.java     |    7 +-
 .../java/org/apache/lucene/document/IntRange.java  |    7 +-
 .../document/LatLonPointDistanceFeatureQuery.java  |   38 +-
 .../lucene/document/LatLonPointDistanceQuery.java  |   42 +-
 .../lucene/document/LatLonPointInPolygonQuery.java |    9 +-
 .../lucene/document/LongDistanceFeatureQuery.java  |   14 +-
 .../java/org/apache/lucene/document/LongRange.java |    7 +-
 .../apache/lucene/document/RangeFieldQuery.java    |   37 +-
 .../src/java/org/apache/lucene/geo/EdgeTree.java   |  156 +-
 .../src/java/org/apache/lucene/geo/GeoUtils.java   |   16 +-
 .../src/java/org/apache/lucene/geo/Polygon2D.java  |   77 +-
 .../java/org/apache/lucene/index/BitsSlice.java    |    5 +-
 .../java/org/apache/lucene/index/CheckIndex.java   |   22 +-
 .../java/org/apache/lucene/index/CodecReader.java  |    4 +-
 .../apache/lucene/index/DefaultIndexingChain.java  |    3 +-
 .../org/apache/lucene/index/DirectoryReader.java   |   29 +-
 .../org/apache/lucene/index/DocumentsWriter.java   |   30 +-
 .../lucene/index/DocumentsWriterDeleteQueue.java   |  103 +-
 .../lucene/index/DocumentsWriterFlushQueue.java    |   10 +-
 .../lucene/index/DocumentsWriterPerThread.java     |    3 +-
 .../apache/lucene/index/FrozenBufferedUpdates.java |   28 +-
 .../java/org/apache/lucene/index/IndexWriter.java  |   15 +-
 .../org/apache/lucene/index/IndexWriterConfig.java |   13 +-
 .../apache/lucene/index/LiveIndexWriterConfig.java |   13 +
 .../apache/lucene/index/MergeReaderWrapper.java    |    4 +-
 .../java/org/apache/lucene/index/PointValues.java  |    6 +-
 .../org/apache/lucene/index/PrefixCodedTerms.java  |    6 +
 .../java/org/apache/lucene/index/ReaderPool.java   |    8 +-
 .../org/apache/lucene/index/ReadersAndUpdates.java |   17 +-
 .../apache/lucene/index/SegmentCoreReaders.java    |    5 +-
 .../org/apache/lucene/index/SegmentDocValues.java  |    3 +-
 .../java/org/apache/lucene/index/SegmentInfo.java  |   21 +-
 .../org/apache/lucene/index/SegmentMerger.java     |    3 +-
 .../org/apache/lucene/index/SegmentReadState.java  |   16 +-
 .../org/apache/lucene/index/SegmentReader.java     |    5 +-
 .../lucene/index/SortingStoredFieldsConsumer.java  |    7 +-
 .../lucene/index/StandardDirectoryReader.java      |   23 +-
 .../apache/lucene/index/StoredFieldVisitor.java    |    4 +-
 .../lucene/search/BlockMaxConjunctionScorer.java   |  128 +-
 .../org/apache/lucene/search/BooleanQuery.java     |   65 +-
 .../org/apache/lucene/search/BooleanScorer.java    |    4 +-
 .../org/apache/lucene/search/BooleanWeight.java    |    5 -
 .../org/apache/lucene/search/IndexSearcher.java    |   68 +-
 .../org/apache/lucene/search/PointInSetQuery.java  |    5 +-
 .../org/apache/lucene/search/PointRangeQuery.java  |   29 +-
 .../apache/lucene/search/TopFieldCollector.java    |    4 +-
 .../src/java/org/apache/lucene/search/Weight.java  |    5 +-
 .../apache/lucene/store/ByteBuffersDataOutput.java |    4 +-
 .../org/apache/lucene/store/LockStressTest.java    |    2 +-
 .../org/apache/lucene/store/MMapDirectory.java     |   54 +-
 .../src/java/org/apache/lucene/util/BytesRef.java  |    6 +-
 .../java/org/apache/lucene/util/BytesRefArray.java |    5 +-
 .../src/java/org/apache/lucene/util/CharsRef.java  |   12 +-
 .../java/org/apache/lucene/util/FutureArrays.java  |  268 ---
 .../java/org/apache/lucene/util/FutureObjects.java |   70 -
 .../src/java/org/apache/lucene/util/IntsRef.java   |    5 +-
 .../src/java/org/apache/lucene/util/LongsRef.java  |    5 +-
 .../org/apache/lucene/util/NamedSPILoader.java     |    2 +-
 .../java/org/apache/lucene/util/StringHelper.java  |    8 +-
 .../src/java/org/apache/lucene/util/Version.java   |   14 +
 .../apache/lucene/util/automaton/Automaton.java    |   10 +-
 .../apache/lucene/util/bkd/BKDRadixSelector.java   |   13 +-
 .../java/org/apache/lucene/util/bkd/BKDReader.java |   12 +-
 .../java/org/apache/lucene/util/bkd/BKDWriter.java |   41 +-
 .../lucene/util/bkd/MutablePointsReaderUtils.java  |    9 +-
 .../java/org/apache/lucene/util/fst/Builder.java   |   19 +-
 .../org/apache/lucene/util/fst/BytesStore.java     |    6 +-
 .../src/java/org/apache/lucene/util/fst/FST.java   |  262 ++-
 .../java/org/apache/lucene/util/fst/FSTEnum.java   |  588 +++--
 .../java/org/apache/lucene/util/fst/NodeHash.java  |    4 +-
 .../src/java/org/apache/lucene/util/fst/Util.java  |    6 +-
 .../tokenattributes/TestBytesRefAttImpl.java       |    2 +-
 .../tokenattributes/TestCharTermAttributeImpl.java |    2 +-
 .../codecs/lucene50/TestBlockPostingsFormat.java   |   58 +-
 ...tLucene50StoredFieldsFormatHighCompression.java |   10 +-
 .../codecs/lucene60/TestLucene60PointsFormat.java  |    9 +-
 .../apache/lucene/document/TestFeatureSort.java    |  213 ++
 .../org/apache/lucene/document/TestFieldType.java  |   21 +
 .../test/org/apache/lucene/geo/TestPolygon2D.java  |   18 +-
 .../test/org/apache/lucene/index/TestCodecs.java   |    4 +-
 .../lucene/index/TestDemoParallelLeafReader.java   |    7 +-
 .../src/test/org/apache/lucene/index/TestDoc.java  |    6 +-
 .../apache/lucene/index/TestDocumentWriter.java    |    9 +-
 .../index/TestDocumentsWriterDeleteQueue.java      |   34 +-
 .../apache/lucene/index/TestIndexTooManyDocs.java  |   37 +-
 .../org/apache/lucene/index/TestIndexWriter.java   |   49 +
 .../index/TestIndexWriterThreadsToSegments.java    |    3 +-
 .../org/apache/lucene/index/TestReaderPool.java    |   12 +-
 .../org/apache/lucene/index/TestSegmentInfos.java  |   18 +-
 .../org/apache/lucene/index/TestSegmentMerger.java |    6 +-
 .../org/apache/lucene/index/TestSegmentReader.java |    3 +-
 .../apache/lucene/index/TestSegmentTermDocs.java   |    7 +-
 .../lucene/index/TestSegmentToThreadMapping.java   |  268 +++
 .../lucene/search/TestBlockMaxConjunction.java     |   20 +
 .../apache/lucene/search/TestBooleanRewrites.java  |  118 +
 .../apache/lucene/search/TestLRUQueryCache.java    |    5 +-
 .../apache/lucene/search/TestMatchesIterator.java  |   59 +-
 .../org/apache/lucene/search/TestPointQueries.java |    9 +-
 .../org/apache/lucene/search/TestWANDScorer.java   |    2 +-
 .../org/apache/lucene/util/TestFutureArrays.java   |  305 ---
 .../org/apache/lucene/util/TestFutureObjects.java  |  102 -
 .../org/apache/lucene/util/TestUnicodeUtil.java    |    4 +-
 .../test/org/apache/lucene/util/bkd/TestBKD.java   |  114 +-
 .../lucene/util/bkd/TestBKDRadixSelector.java      |   13 +-
 .../util/bkd/TestMutablePointsReaderUtils.java     |    5 +-
 .../test/org/apache/lucene/util/fst/Test2BFST.java |   32 +-
 .../test/org/apache/lucene/util/fst/TestFSTs.java  |    8 +-
 .../org/apache/lucene/util/fst/TestFstDirect.java  |  217 ++
 lucene/default-nested-ivy-settings.xml             |   10 +-
 .../directory/DirectoryTaxonomyWriter.java         |    4 +-
 .../search/uhighlight/UnifiedHighlighter.java      |    5 +-
 .../vectorhighlight/BaseFragmentsBuilder.java      |    6 +-
 lucene/ivy-ignore-conflicts.properties             |    3 +-
 lucene/ivy-versions.properties                     |   28 +-
 .../search/join/SeekingTermSetTermsEnum.java       |  102 +
 .../org/apache/lucene/search/join/TermsQuery.java  |   72 -
 lucene/licenses/elegant-icon-font-LICENSE-MIT.txt  |   21 +
 lucene/licenses/elegant-icon-font-NOTICE.txt       |    3 +
 lucene/licenses/log4j-LICENSE-ASL.txt              |  202 ++
 lucene/licenses/log4j-NOTICE.txt                   |    5 +
 lucene/licenses/log4j-api-2.11.2.jar.sha1          |    1 +
 lucene/licenses/log4j-api-LICENSE-ASL.txt          |  201 ++
 lucene/licenses/log4j-api-NOTICE.txt               |   17 +
 lucene/licenses/log4j-core-2.11.2.jar.sha1         |    1 +
 lucene/licenses/log4j-core-LICENSE-ASL.txt         |  201 ++
 lucene/licenses/log4j-core-NOTICE.txt              |   17 +
 lucene/luke/bin/luke.bat                           |   13 +
 lucene/luke/bin/luke.sh                            |   18 +
 lucene/luke/build.xml                              |   82 +
 lucene/luke/ivy.xml                                |   34 +
 .../apache/lucene/luke/app/AbstractHandler.java    |   47 +
 .../apache/lucene/luke/app/DirectoryHandler.java   |  112 +
 .../apache/lucene/luke/app/DirectoryObserver.java  |   27 +
 .../org/apache/lucene/luke/app/IndexHandler.java   |  147 ++
 .../org/apache/lucene/luke/app/IndexObserver.java  |   27 +
 .../java/org/apache/lucene/luke/app/LukeState.java |   57 +
 .../java/org/apache/lucene/luke/app/Observer.java  |   22 +
 .../apache/lucene/luke/app/desktop/LukeMain.java   |   94 +
 .../lucene/luke/app/desktop/MessageBroker.java     |   65 +
 .../lucene/luke/app/desktop/Preferences.java       |   69 +
 .../luke/app/desktop/PreferencesFactory.java       |   34 +
 .../lucene/luke/app/desktop/PreferencesImpl.java   |  143 ++
 .../desktop/components/AnalysisPanelProvider.java  |  441 ++++
 .../desktop/components/AnalysisTabOperator.java    |   33 +
 .../desktop/components/CommitsPanelProvider.java   |  575 +++++
 .../components/ComponentOperatorRegistry.java      |   50 +
 .../desktop/components/DocumentsPanelProvider.java | 1115 +++++++++
 .../desktop/components/DocumentsTabOperator.java   |   31 +
 .../app/desktop/components/LogsPanelProvider.java  |   58 +
 .../app/desktop/components/LukeWindowOperator.java |   25 +
 .../app/desktop/components/LukeWindowProvider.java |  250 ++
 .../app/desktop/components/MenuBarProvider.java    |  303 +++
 .../desktop/components/OverviewPanelProvider.java  |  644 ++++++
 .../desktop/components/SearchPanelProvider.java    |  834 +++++++
 .../app/desktop/components/SearchTabOperator.java  |   29 +
 .../app/desktop/components/TabSwitcherProxy.java   |   49 +
 .../app/desktop/components/TabbedPaneProvider.java |  137 ++
 .../app/desktop/components/TableColumnInfo.java    |   33 +
 .../app/desktop/components/TableModelBase.java     |   75 +
 .../components/dialog/ConfirmDialogFactory.java    |  119 +
 .../components/dialog/HelpDialogFactory.java       |  106 +
 .../analysis/AnalysisChainDialogFactory.java       |  158 ++
 .../dialog/analysis/EditFiltersDialogFactory.java  |  303 +++
 .../dialog/analysis/EditFiltersMode.java           |   23 +
 .../dialog/analysis/EditParamsDialogFactory.java   |  254 +++
 .../components/dialog/analysis/EditParamsMode.java |   23 +
 .../analysis/TokenAttributeDialogFactory.java      |  196 ++
 .../components/dialog/analysis/package-info.java   |   19 +
 .../dialog/documents/AddDocumentDialogFactory.java |  593 +++++
 .../documents/AddDocumentDialogOperator.java       |   27 +
 .../dialog/documents/DocValuesDialogFactory.java   |  296 +++
 .../documents/IndexOptionsDialogFactory.java       |  308 +++
 .../dialog/documents/StoredValueDialogFactory.java |  132 ++
 .../dialog/documents/TermVectorDialogFactory.java  |  189 ++
 .../components/dialog/documents/package-info.java  |   19 +
 .../dialog/menubar/AboutDialogFactory.java         |  200 ++
 .../dialog/menubar/CheckIndexDialogFactory.java    |  380 ++++
 .../dialog/menubar/CreateIndexDialogFactory.java   |  356 +++
 .../dialog/menubar/OpenIndexDialogFactory.java     |  385 ++++
 .../dialog/menubar/OptimizeIndexDialogFactory.java |  260 +++
 .../components/dialog/menubar/package-info.java    |   19 +
 .../desktop/components/dialog/package-info.java    |   19 +
 .../dialog/search/ExplainDialogFactory.java        |  182 ++
 .../components/dialog/search/package-info.java     |   19 +
 .../analysis/CustomAnalyzerPanelOperator.java      |   45 +
 .../analysis/CustomAnalyzerPanelProvider.java      |  751 ++++++
 .../analysis/PresetAnalyzerPanelOperator.java      |   30 +
 .../analysis/PresetAnalyzerPanelProvider.java      |   96 +
 .../fragments/analysis/package-info.java           |   19 +
 .../desktop/components/fragments/package-info.java |   19 +
 .../fragments/search/AnalyzerPaneProvider.java     |  200 ++
 .../fragments/search/AnalyzerTabOperator.java      |   27 +
 .../fragments/search/FieldValuesPaneProvider.java  |  206 ++
 .../fragments/search/FieldValuesTabOperator.java   |   30 +
 .../fragments/search/MLTPaneProvider.java          |  303 +++
 .../fragments/search/MLTTabOperator.java           |   33 +
 .../fragments/search/QueryParserPaneProvider.java  |  513 +++++
 .../fragments/search/QueryParserTabOperator.java   |   35 +
 .../fragments/search/SimilarityPaneProvider.java   |  145 ++
 .../fragments/search/SimilarityTabOperator.java    |   26 +
 .../fragments/search/SortPaneProvider.java         |  255 +++
 .../fragments/search/SortTabOperator.java          |   34 +
 .../components/fragments/search/package-info.java  |   19 +
 .../luke/app/desktop/components/package-info.java  |   19 +
 .../luke/app/desktop/dto/documents/NewField.java   |  148 ++
 .../app/desktop/dto/documents/package-info.java    |   19 +
 .../lucene/luke/app/desktop/package-info.java      |   19 +
 .../lucene/luke/app/desktop/util/DialogOpener.java |   52 +
 .../luke/app/desktop/util/ExceptionHandler.java    |   44 +
 .../lucene/luke/app/desktop/util/FontUtils.java    |   71 +
 .../luke/app/desktop/util/HelpHeaderRenderer.java  |  129 ++
 .../lucene/luke/app/desktop/util/ImageUtils.java   |   45 +
 .../lucene/luke/app/desktop/util/ListUtils.java    |   43 +
 .../lucene/luke/app/desktop/util/MessageUtils.java |   61 +
 .../lucene/luke/app/desktop/util/NumericUtils.java |  103 +
 .../lucene/luke/app/desktop/util/StringUtils.java  |   31 +
 .../luke/app/desktop/util/StyleConstants.java      |   43 +
 .../lucene/luke/app/desktop/util/TabUtils.java     |   41 +
 .../lucene/luke/app/desktop/util/TableUtils.java   |   85 +
 .../luke/app/desktop/util/TextAreaAppender.java    |  102 +
 .../luke/app/desktop/util/TextAreaPrintStream.java |   47 +
 .../lucene/luke/app/desktop/util/URLLabel.java     |   65 +
 .../luke/app/desktop/util/inifile/IniFile.java     |   36 +
 .../app/desktop/util/inifile/IniFileReader.java    |   29 +
 .../app/desktop/util/inifile/IniFileWriter.java    |   29 +
 .../luke/app/desktop/util/inifile/OptionMap.java   |   33 +
 .../app/desktop/util/inifile/SimpleIniFile.java    |   82 +
 .../desktop/util/inifile/SimpleIniFileReader.java  |   63 +
 .../desktop/util/inifile/SimpleIniFileWriter.java  |   47 +
 .../app/desktop/util/inifile/package-info.java     |   19 +
 .../luke/app/desktop/util/lang/Callable.java       |   24 +
 .../luke/app/desktop/util/lang/package-info.java   |   19 +
 .../lucene/luke/app/desktop/util/package-info.java |   19 +
 .../org/apache/lucene/luke/app/package-info.java   |   19 +
 .../apache/lucene/luke/models/LukeException.java   |   35 +
 .../org/apache/lucene/luke/models/LukeModel.java   |   71 +
 .../lucene/luke/models/analysis/Analysis.java      |  151 ++
 .../luke/models/analysis/AnalysisFactory.java      |   27 +
 .../lucene/luke/models/analysis/AnalysisImpl.java  |  216 ++
 .../luke/models/analysis/CustomAnalyzerConfig.java |  132 ++
 .../lucene/luke/models/analysis/package-info.java  |   19 +
 .../apache/lucene/luke/models/commits/Commit.java  |   68 +
 .../apache/lucene/luke/models/commits/Commits.java |   82 +
 .../lucene/luke/models/commits/CommitsFactory.java |   34 +
 .../lucene/luke/models/commits/CommitsImpl.java    |  224 ++
 .../apache/lucene/luke/models/commits/File.java    |   52 +
 .../apache/lucene/luke/models/commits/Segment.java |   95 +
 .../lucene/luke/models/commits/package-info.java   |   19 +
 .../lucene/luke/models/documents/DocValues.java    |   84 +
 .../luke/models/documents/DocValuesAdapter.java    |  168 ++
 .../luke/models/documents/DocumentField.java       |  169 ++
 .../lucene/luke/models/documents/Documents.java    |  143 ++
 .../luke/models/documents/DocumentsFactory.java    |   29 +
 .../luke/models/documents/DocumentsImpl.java       |  347 +++
 .../lucene/luke/models/documents/TermPosting.java  |   90 +
 .../luke/models/documents/TermVectorEntry.java     |  177 ++
 .../luke/models/documents/TermVectorsAdapter.java  |   71 +
 .../lucene/luke/models/documents/package-info.java |   19 +
 .../lucene/luke/models/overview/Overview.java      |  121 +
 .../luke/models/overview/OverviewFactory.java      |   29 +
 .../lucene/luke/models/overview/OverviewImpl.java  |  171 ++
 .../lucene/luke/models/overview/TermCounts.java    |   82 +
 .../luke/models/overview/TermCountsOrder.java      |   43 +
 .../lucene/luke/models/overview/TermStats.java     |   76 +
 .../lucene/luke/models/overview/TopTerms.java      |   67 +
 .../lucene/luke/models/overview/package-info.java  |   19 +
 .../apache/lucene/luke/models/package-info.java    |   19 +
 .../lucene/luke/models/search/MLTConfig.java       |   95 +
 .../luke/models/search/QueryParserConfig.java      |  251 +++
 .../apache/lucene/luke/models/search/Search.java   |  158 ++
 .../lucene/luke/models/search/SearchFactory.java   |   29 +
 .../lucene/luke/models/search/SearchImpl.java      |  471 ++++
 .../lucene/luke/models/search/SearchResults.java   |  160 ++
 .../luke/models/search/SimilarityConfig.java       |  100 +
 .../lucene/luke/models/search/package-info.java    |   19 +
 .../lucene/luke/models/tools/IndexTools.java       |   97 +
 .../luke/models/tools/IndexToolsFactory.java       |   34 +
 .../lucene/luke/models/tools/IndexToolsImpl.java   |  187 ++
 .../lucene/luke/models/tools/package-info.java     |   19 +
 .../apache/lucene/luke/models/util/IndexUtils.java |  497 ++++
 .../lucene/luke/models/util/package-info.java      |   19 +
 .../luke/models/util/twentynewsgroups/Message.java |  182 ++
 .../util/twentynewsgroups/MessageFilesParser.java  |  123 +
 .../models/util/twentynewsgroups/package-info.java |   19 +
 .../java/org/apache/lucene/luke/package-info.java  |   19 +
 .../org/apache/lucene/luke/util/BytesRefUtils.java |   37 +
 .../org/apache/lucene/luke/util/LoggerFactory.java |   73 +
 .../org/apache/lucene/luke/util/package-info.java  |   19 +
 .../lucene/luke/util/reflection/ClassScanner.java  |  113 +
 .../luke/util/reflection/SubtypeCollector.java     |  100 +
 .../lucene/luke/util/reflection/package-info.java  |   19 +
 lucene/luke/src/java/overview.html                 |   26 +
 .../lucene/luke/app/desktop/font/ElegantIcons.ttf  |  Bin 0 -> 59388 bytes
 .../lucene/luke/app/desktop/img/indicator.gif      |  Bin 0 -> 673 bytes
 .../lucene/luke/app/desktop/img/lucene-logo.gif    |  Bin 0 -> 1337 bytes
 .../apache/lucene/luke/app/desktop/img/lucene.gif  |  Bin 0 -> 335 bytes
 .../lucene/luke/app/desktop/img/luke-logo.gif      |  Bin 0 -> 2408 bytes
 .../luke/app/desktop/messages/messages.properties  |  280 +++
 .../desktop/util/inifile/SimpleIniFileTest.java    |  115 +
 .../luke/models/analysis/AnalysisImplTest.java     |  136 ++
 .../luke/models/commits/CommitsImplTest.java       |  214 ++
 .../models/documents/DocValuesAdapterTest.java     |  114 +
 .../luke/models/documents/DocumentsImplTest.java   |  248 ++
 .../luke/models/documents/DocumentsTestBase.java   |  152 ++
 .../models/documents/TermVectorsAdapterTest.java   |  165 ++
 .../luke/models/overview/OverviewImplTest.java     |  140 ++
 .../luke/models/overview/OverviewTestBase.java     |   95 +
 .../luke/models/overview/TermCountsTest.java       |   82 +
 .../lucene/luke/models/overview/TopTermsTest.java  |   40 +
 .../lucene/luke/models/search/SearchImplTest.java  |  380 ++++
 .../apache/lucene/index/memory/MemoryIndex.java    |    5 +-
 .../apache/lucene/document/InetAddressPoint.java   |    3 +-
 .../apache/lucene/document/InetAddressRange.java   |    4 +-
 .../org/apache/lucene/index/IndexSplitter.java     |    4 +-
 .../apache/lucene/document/TestLazyDocument.java   |    6 +-
 .../lucene/search/TestInetAddressRangeQueries.java |   19 +-
 lucene/module-build.xml                            |   45 +-
 .../apache/lucene/queries/mlt/MoreLikeThis.java    |   12 +-
 .../lucene/queries/mlt/TestMoreLikeThis.java       |   71 +
 .../nrt/SegmentInfosSearcherManager.java           |    5 +-
 .../idversion/VersionBlockTreeTermsWriter.java     |    2 +-
 .../document/LatLonShapeBoundingBoxQuery.java      |   11 +-
 .../src/java/org/apache/lucene/geo/Line2D.java     |   45 +-
 .../java/org/apache/lucene/geo/Rectangle2D.java    |   60 +-
 .../lucene/document/BaseLatLonShapeTestCase.java   |   85 +
 .../apache/lucene/document/TestHalfFloatPoint.java |    3 +-
 .../apache/lucene/document/TestLatLonShape.java    |  218 +-
 .../spatial/prefix/tree/DateRangePrefixTree.java   |   10 +-
 .../prefix/tree/SpatialPrefixTreeFactory.java      |    2 +-
 .../prefix/tree/DateRangePrefixTreeTest.java       |   28 +
 .../apache/lucene/spatial3d/TestGeo3DPoint.java    |    5 +-
 .../search/suggest/fst/FSTCompletionBuilder.java   |    2 +-
 .../lucene/search/suggest/LookupBenchmarkTest.java |   31 +-
 .../lucene/search/suggest/PersistenceTest.java     |    4 +-
 .../codecs/cheapbastard/CheapBastardCodec.java     |    5 +-
 .../mockrandom/MockRandomPostingsFormat.java       |    4 +-
 .../java/org/apache/lucene/geo/GeoTestUtil.java    |   17 +-
 .../apache/lucene/index/AssertingLeafReader.java   |   10 +-
 .../lucene/index/BaseCompoundFormatTestCase.java   |    3 +-
 .../lucene/index/BaseFieldInfoFormatTestCase.java  |    3 +-
 .../lucene/index/BaseIndexFileFormatTestCase.java  |    4 +-
 .../lucene/index/BasePointsFormatTestCase.java     |   27 +-
 .../index/BaseSegmentInfoFormatTestCase.java       |   20 +-
 .../apache/lucene/index/FieldFilterLeafReader.java |    5 +-
 .../apache/lucene/index/MismatchedLeafReader.java  |    5 +-
 .../apache/lucene/index/PointsStackTracker.java    |    6 +-
 .../java/org/apache/lucene/index/RandomCodec.java  |    5 +-
 .../apache/lucene/index/RandomPostingsTester.java  |    2 +-
 .../apache/lucene/search/AssertingCollector.java   |    5 +
 .../org/apache/lucene/util/LuceneTestCase.java     |   11 +-
 .../util/TestRuleSetupAndRestoreClassEnv.java      |    5 +-
 .../src/java/org/apache/lucene/util/TestUtil.java  |    5 +-
 .../java/org/apache/lucene/util/fst/FSTTester.java |    5 +-
 lucene/tools/javadoc/ecj.javadocs.prefs            |    6 +-
 lucene/tools/javadoc/java11/package-list           |  282 +++
 lucene/tools/javadoc/java8/package-list            |  217 --
 lucene/tools/junit4/tests.policy                   |    6 +-
 .../src/groovy/install-markdown-filter.groovy      |    4 +-
 lucene/tools/src/groovy/patch-mrjar-classes.groovy |   83 -
 lucene/tools/src/groovy/run-maven-build.groovy     |    1 +
 .../lucene/validation/LibVersionsCheckTask.java    |   21 +-
 solr/CHANGES.txt                                   |  342 ++-
 solr/NOTICE.txt                                    |   15 +-
 solr/README.txt                                    |    4 +-
 solr/bin/solr                                      |   20 +-
 solr/bin/solr.cmd                                  |   20 +-
 solr/bin/solr.in.cmd                               |   15 +-
 solr/bin/solr.in.sh                                |   17 +-
 solr/build.xml                                     |   37 +-
 solr/common-build.xml                              |   13 +-
 solr/contrib/analysis-extras/ivy.xml               |    3 +-
 .../solr/analytics/legacy/LegacyNoFacetTest.java   |    6 +
 .../legacy/facet/LegacyQueryFacetCloudTest.java    |   17 +-
 .../carrot2/LuceneCarrot2StemmerFactory.java       |    2 +-
 .../handler/dataimport/MailEntityProcessor.java    |    4 +-
 .../solr/handler/dataimport/DataImporter.java      |    6 +-
 .../apache/solr/handler/dataimport/DocBuilder.java |    4 +-
 .../handler/dataimport/EntityProcessorWrapper.java |    4 +-
 .../solr/handler/dataimport/JdbcDataSource.java    |   14 +-
 .../dataimport/AbstractDIHJdbcTestCase.java        |    4 +-
 .../dataimport/TestEntityProcessorBase.java        |    6 +-
 .../handler/dataimport/TestZKPropertiesWriter.java |    5 +-
 solr/contrib/jaegertracer-configurator/README.txt  |   32 +
 solr/contrib/jaegertracer-configurator/build.xml   |   34 +
 solr/contrib/jaegertracer-configurator/ivy.xml     |   32 +
 .../solr/jaeger/JaegerTracerConfigurator.java      |   89 +
 .../java/org/apache/solr/jaeger/package-info.java  |   21 +
 .../src/java/overview.html                         |   26 +
 .../test-files/solr/collection1/conf/schema.xml    |   29 +
 .../solr/collection1/conf/solrconfig.xml           |   51 +
 .../src/test-files/solr/solr.xml                   |   62 +
 .../apache/solr/jaeger/TestJaegerConfigurator.java |  124 +
 solr/contrib/langid/build.xml                      |    4 +-
 .../java/org/apache/solr/ltr/feature/Feature.java  |   27 +-
 .../solr/ltr/feature/FieldLengthFeature.java       |    2 +-
 .../apache/solr/ltr/feature/FieldValueFeature.java |    2 +-
 .../solr/ltr/feature/OriginalScoreFeature.java     |    2 +-
 .../org/apache/solr/ltr/feature/SolrFeature.java   |    2 +-
 .../org/apache/solr/ltr/feature/ValueFeature.java  |    2 +-
 .../test/org/apache/solr/ltr/TestRerankBase.java   |   67 +-
 .../TestFeatureExtractionFromMultipleSegments.java |    4 +-
 .../solr/ltr/feature/TestFieldLengthFeature.java   |    8 +
 .../solr/ltr/feature/TestFieldValueFeature.java    |    8 +
 .../solr/ltr/feature/TestNoMatchSolrFeature.java   |   10 +-
 .../solr/ltr/feature/TestOriginalScoreFeature.java |   13 +-
 .../solr/ltr/feature/TestRankingFeature.java       |    9 +
 .../apache/solr/ltr/feature/TestValueFeature.java  |   12 +
 .../store/rest/TestModelManagerPersistence.java    |    6 +-
 solr/contrib/prometheus-exporter/bin/solr-exporter |    4 +
 .../prometheus-exporter/bin/solr-exporter.cmd      |  208 +-
 .../exporter/SolrExporterIntegrationTest.java      |    7 +-
 solr/core/ivy.xml                                  |    5 +
 .../src/java/org/apache/solr/api/V2HttpCall.java   |    5 +
 .../src/java/org/apache/solr/cloud/CloudUtil.java  |  140 ++
 .../org/apache/solr/cloud/ElectionContext.java     |   14 +-
 .../java/org/apache/solr/cloud/LeaderElector.java  |    1 +
 .../org/apache/solr/cloud/NodesSysPropsCacher.java |  204 ++
 .../cloud/OverseerConfigSetMessageHandler.java     |    4 +-
 .../apache/solr/cloud/OverseerTaskProcessor.java   |    9 +
 .../org/apache/solr/cloud/OverseerTaskQueue.java   |    6 +-
 .../java/org/apache/solr/cloud/SolrZkServer.java   |   13 +-
 .../core/src/java/org/apache/solr/cloud/ZkCLI.java |    2 +-
 .../java/org/apache/solr/cloud/ZkController.java   |  140 +-
 .../solr/cloud/api/collections/AddReplicaCmd.java  |   43 +-
 .../solr/cloud/api/collections/BackupCmd.java      |   28 +-
 .../solr/cloud/api/collections/CreateAliasCmd.java |   11 +-
 .../cloud/api/collections/CreateCollectionCmd.java |   38 +-
 .../solr/cloud/api/collections/CreateShardCmd.java |    5 +-
 .../cloud/api/collections/CreateSnapshotCmd.java   |   11 +-
 .../cloud/api/collections/DeleteCollectionCmd.java |   84 +-
 .../cloud/api/collections/DeleteReplicaCmd.java    |   27 +-
 .../solr/cloud/api/collections/DeleteShardCmd.java |    4 +-
 .../cloud/api/collections/DeleteSnapshotCmd.java   |   14 +-
 .../MaintainCategoryRoutedAliasCmd.java            |    4 +-
 .../collections/MaintainTimeRoutedAliasCmd.java    |    4 +-
 .../solr/cloud/api/collections/MigrateCmd.java     |   79 +-
 .../solr/cloud/api/collections/MoveReplicaCmd.java |    4 +-
 .../OverseerCollectionMessageHandler.java          |  280 ++-
 .../api/collections/ReindexCollectionCmd.java      |   73 +-
 .../solr/cloud/api/collections/RenameCmd.java      |   70 +
 .../solr/cloud/api/collections/RestoreCmd.java     |   63 +-
 .../solr/cloud/api/collections/RoutedAlias.java    |    2 +-
 .../solr/cloud/api/collections/SplitShardCmd.java  |   96 +-
 .../cloud/api/collections/TimeRoutedAlias.java     |    1 +
 .../solr/cloud/autoscaling/AutoScalingHandler.java |   62 +-
 .../solr/cloud/autoscaling/IndexSizeTrigger.java   |   40 +-
 .../solr/cloud/autoscaling/sim/ActionError.java    |    0
 .../autoscaling/sim/GenericDistributedQueue.java   |    0
 .../sim/GenericDistributedQueueFactory.java        |    0
 .../solr/cloud/autoscaling/sim/LiveNodesSet.java   |    0
 .../sim/NoopDistributedQueueFactory.java           |   94 +
 .../cloud/autoscaling/sim/SimCloudManager.java     | 1042 +++++++++
 .../autoscaling/sim/SimClusterStateProvider.java   | 2384 ++++++++++++++++++++
 .../autoscaling/sim/SimDistribStateManager.java    |  646 ++++++
 .../sim/SimDistributedQueueFactory.java            |    0
 .../autoscaling/sim/SimNodeStateProvider.java      |  330 +++
 .../solr/cloud/autoscaling/sim/SimUtils.java       |  354 +++
 .../autoscaling/sim/SnapshotCloudManager.java      |  237 ++
 .../sim/SnapshotClusterStateProvider.java          |  131 ++
 .../sim/SnapshotDistribStateManager.java           |  191 ++
 .../autoscaling/sim/SnapshotNodeStateProvider.java |  186 ++
 .../solr/cloud/autoscaling/sim/package-info.java   |   94 +
 .../apache/solr/cloud/rule/ReplicaAssigner.java    |    4 +-
 .../java/org/apache/solr/core/ConfigOverlay.java   |   12 +-
 .../org/apache/solr/core/ConfigSetProperties.java  |    8 +-
 .../java/org/apache/solr/core/CoreContainer.java   |   69 +-
 .../java/org/apache/solr/core/MemClassLoader.java  |    2 +-
 .../src/java/org/apache/solr/core/NodeConfig.java  |   41 +-
 .../java/org/apache/solr/core/RequestParams.java   |    9 +-
 .../org/apache/solr/core/SchemaCodecFactory.java   |    3 +-
 .../src/java/org/apache/solr/core/SolrConfig.java  |   28 +-
 .../src/java/org/apache/solr/core/SolrCore.java    |   26 +-
 .../src/java/org/apache/solr/core/SolrCores.java   |   22 +-
 .../java/org/apache/solr/core/SolrXmlConfig.java   |    9 +
 .../org/apache/solr/core/TracerConfigurator.java   |   70 +
 .../apache/solr/core/TransientSolrCoreCache.java   |    9 +-
 .../solr/core/TransientSolrCoreCacheDefault.java   |   18 +-
 .../solr/core/TransientSolrCoreCacheFactory.java   |    2 +-
 .../src/java/org/apache/solr/core/ZkContainer.java |    3 +-
 .../org/apache/solr/core/backup/BackupManager.java |    1 +
 .../apache/solr/handler/MoreLikeThisHandler.java   |    2 +-
 .../org/apache/solr/handler/SchemaHandler.java     |    6 +-
 .../org/apache/solr/handler/SolrConfigHandler.java |    3 +-
 .../org/apache/solr/handler/StreamHandler.java     |   74 +-
 .../solr/handler/admin/CollectionsHandler.java     |   37 +-
 .../apache/solr/handler/admin/MetricsHandler.java  |    8 +
 .../solr/handler/admin/MetricsHistoryHandler.java  |   14 +-
 .../solr/handler/admin/ZookeeperInfoHandler.java   |    5 +-
 .../solr/handler/admin/ZookeeperStatusHandler.java |   39 +-
 .../solr/handler/component/DebugComponent.java     |   20 +-
 .../solr/handler/component/HttpShardHandler.java   |   11 +
 .../handler/component/HttpShardHandlerFactory.java |   73 +-
 .../handler/component/MoreLikeThisComponent.java   |   50 +-
 .../solr/handler/component/QueryComponent.java     |   13 +
 .../handler/component/RealTimeGetComponent.java    |  155 +-
 .../handler/component/ShardHandlerFactory.java     |    2 +-
 .../solr/handler/component/TermsComponent.java     |   29 +-
 .../org/apache/solr/handler/sql/SolrSchema.java    |   23 +-
 .../org/apache/solr/logging/MDCLoggingContext.java |   11 +
 .../org/apache/solr/metrics/MetricSuppliers.java   |   16 +-
 .../metrics/reporters/SolrGangliaReporter.java     |  135 --
 .../solr/metrics/reporters/SolrJmxReporter.java    |    3 +-
 .../metrics/reporters/jmx/JmxMetricsReporter.java  |    6 +-
 .../reporters/jmx/JmxObjectNameFactory.java        |    2 +-
 .../apache/solr/metrics/rrd/SolrRrdBackend.java    |  161 +-
 .../solr/metrics/rrd/SolrRrdBackendFactory.java    |   22 +-
 .../apache/solr/request/SolrQueryRequestBase.java  |    4 -
 .../org/apache/solr/request/SolrRequestInfo.java   |    2 +-
 .../apache/solr/rest/ManagedResourceStorage.java   |   11 +-
 .../src/java/org/apache/solr/rest/RestManager.java |    8 +-
 .../org/apache/solr/schema/CurrencyFieldType.java  |    2 +-
 .../apache/solr/schema/FieldTypePluginLoader.java  |    2 +-
 .../solr/schema/FileExchangeRateProvider.java      |    2 +-
 .../java/org/apache/solr/schema/IndexSchema.java   |   15 +
 .../apache/solr/schema/JsonPreAnalyzedParser.java  |    6 +-
 .../src/java/org/apache/solr/search/BitDocSet.java |    8 +
 .../java/org/apache/solr/search/CacheConfig.java   |    2 +-
 .../solr/search/CollapsingQParserPlugin.java       |  124 +-
 .../solr/search/GraphTermsQParserPlugin.java       |    5 +-
 .../src/java/org/apache/solr/search/Grouping.java  |   16 +-
 .../apache/solr/search/SolrDocumentFetcher.java    |   26 +-
 .../org/apache/solr/search/SolrIndexSearcher.java  |   14 +
 .../org/apache/solr/search/SortedIntDocSet.java    |    8 +
 .../org/apache/solr/search/facet/FacetModule.java  |    5 +-
 .../GroupedEndResultTransformer.java               |   24 +-
 .../solr/search/join/ScoreJoinQParserPlugin.java   |   10 +-
 .../apache/solr/security/AuditLoggerPlugin.java    |   34 +-
 .../org/apache/solr/security/JWTAuthPlugin.java    |   58 +-
 .../solr/security/MultiDestinationAuditLogger.java |    2 +-
 .../java/org/apache/solr/servlet/HttpSolrCall.java |   38 +-
 .../apache/solr/servlet/SolrDispatchFilter.java    |   34 +-
 .../apache/solr/servlet/SolrRequestParsers.java    |    4 +
 .../apache/solr/store/blockcache/BufferStore.java  |    9 +
 .../org/apache/solr/uninverting/DocTermOrds.java   |    5 +
 .../org/apache/solr/update/AddUpdateCommand.java   |   16 +-
 .../apache/solr/update/DefaultSolrCoreState.java   |    3 +-
 .../apache/solr/update/DirectUpdateHandler2.java   |   12 +-
 .../org/apache/solr/update/SolrCmdDistributor.java |   12 +
 .../org/apache/solr/update/SolrIndexWriter.java    |   13 -
 .../org/apache/solr/update/TimedVersionBucket.java |   78 +
 .../java/org/apache/solr/update/VersionBucket.java |   46 +-
 .../java/org/apache/solr/update/VersionInfo.java   |   19 +-
 .../processor/AtomicUpdateDocumentMerger.java      |  231 +-
 .../processor/DistributedUpdateProcessor.java      |  596 ++---
 .../processor/DistributedZkUpdateProcessor.java    |    6 +-
 .../DocBasedVersionConstraintsProcessor.java       |    2 +-
 .../DocExpirationUpdateProcessorFactory.java       |    2 +
 .../processor/NestedUpdateProcessorFactory.java    |   15 +-
 .../processor/RoutedAliasUpdateProcessor.java      |    2 +-
 .../org/apache/solr/util/ConcurrentLFUCache.java   |   15 -
 .../org/apache/solr/util/ConcurrentLRUCache.java   |   16 -
 .../apache/solr/util/MockSearchableSolrClient.java |  117 +
 .../src/java/org/apache/solr/util/SolrCLI.java     |  511 +++--
 .../java/org/apache/solr/util/TestInjection.java   |   10 +-
 .../SSLCredentialProviderFactory.java              |    2 +-
 .../org/apache/solr/util/tracing/GlobalTracer.java |  120 +
 .../solr/util/tracing/HttpServletCarrier.java      |   93 +
 .../solr/util/tracing/SolrRequestCarrier.java      |   46 +
 .../org/apache/solr/util/tracing/package-info.java |   23 +
 solr/core/src/test-files/log4j2.xml                |    4 +-
 .../collection1/conf/schema-inplace-updates.xml    |    1 +
 .../solr/collection1/conf/schema-nest.xml          |    6 +
 .../solr/collection1/conf/schema-spatial.xml       |    6 +-
 .../test-files/solr/collection1/conf/schema.xml    |   12 +-
 .../test-files/solr/collection1/conf/schema12.xml  |    2 +
 .../solr/configsets/_default/conf/solrconfig.xml   |   13 +-
 solr/core/src/test-files/solr/solr-50-all.xml      |    1 +
 .../src/test-files/solr/solr-gangliareporter.xml   |   32 -
 solr/core/src/test-files/solr/solr-tracing.xml     |   57 +
 .../src/test/org/apache/solr/CursorPagingTest.java |   52 +-
 .../src/test/org/apache/solr/SolrInfoBeanTest.java |   10 +-
 .../org/apache/solr/TestDistributedGrouping.java   |   39 +-
 .../test/org/apache/solr/TestGroupingSearch.java   |   43 +-
 solr/core/src/test/org/apache/solr/TestJoin.java   |   21 +-
 .../test/org/apache/solr/TestRandomFaceting.java   |    7 +-
 .../analysis/ThrowingMockTokenFilterFactory.java   |    5 +-
 .../apache/solr/cloud/AliasIntegrationTest.java    |   70 +-
 .../cloud/AsyncCallRequestStatusResponseTest.java  |   60 -
 .../apache/solr/cloud/BasicDistributedZkTest.java  |  138 +-
 .../test/org/apache/solr/cloud/CloudTestUtils.java |  165 +-
 .../apache/solr/cloud/CollectionsAPISolrJTest.java |   57 +
 .../apache/solr/cloud/ConnectionManagerTest.java   |   14 +-
 .../solr/cloud/CreateCollectionCleanupTest.java    |    6 +-
 .../apache/solr/cloud/DistributedQueueTest.java    |    6 +-
 .../apache/solr/cloud/DocValuesNotIndexedTest.java |   90 +-
 .../solr/cloud/FullSolrCloudDistribCmdsTest.java   |    4 +-
 .../org/apache/solr/cloud/LeaderElectionTest.java  |    3 +-
 .../solr/cloud/MetricsHistoryIntegrationTest.java  |    4 +-
 .../MetricsHistoryWithAuthIntegrationTest.java     |   93 +
 .../solr/cloud/NestedShardedAtomicUpdateTest.java  |  233 ++
 .../OutOfBoxZkACLAndCredentialsProvidersTest.java  |   23 +-
 ...OverriddenZkACLAndCredentialsProvidersTest.java |    7 +-
 .../OverseerCollectionConfigSetProcessorTest.java  |    5 +-
 .../org/apache/solr/cloud/OverseerRolesTest.java   |   78 +-
 .../test/org/apache/solr/cloud/OverseerTest.java   |   18 +-
 .../apache/solr/cloud/ReindexCollectionTest.java   |   33 +-
 .../cloud/RoutingToNodesWithPropertiesTest.java    |  240 ++
 .../apache/solr/cloud/SaslZkACLProviderTest.java   |   20 +-
 .../apache/solr/cloud/SolrCloudExampleTest.java    |    6 +-
 .../org/apache/solr/cloud/SolrXmlInZkTest.java     |    4 +-
 .../TestCloudPhrasesIdentificationComponent.java   |    4 +-
 .../solr/cloud/TestCloudPseudoReturnFields.java    |    4 +-
 .../solr/cloud/TestCloudSearcherWarming.java       |   10 +-
 .../org/apache/solr/cloud/TestConfigSetsAPI.java   |   48 +-
 .../solr/cloud/TestConfigSetsAPIZkFailure.java     |   14 +-
 .../org/apache/solr/cloud/TestDistributedMap.java  |    2 +-
 .../solr/cloud/TestLeaderElectionZkExpiry.java     |    2 +-
 .../apache/solr/cloud/TestRandomFlRTGCloud.java    |    4 +-
 .../cloud/TestStressCloudBlindAtomicUpdates.java   |    5 +-
 .../test/org/apache/solr/cloud/TestZkChroot.java   |    4 +-
 .../solr/cloud/TriLevelCompositeIdRoutingTest.java |    1 +
 .../VMParamsZkACLAndCredentialsProvidersTest.java  |    7 +-
 .../src/test/org/apache/solr/cloud/ZkCLITest.java  |   21 +-
 .../org/apache/solr/cloud/ZkControllerTest.java    |    9 +-
 .../org/apache/solr/cloud/ZkSolrClientTest.java    |    7 +-
 .../solr/cloud/api/collections/AssignTest.java     |    5 +-
 .../AsyncCallRequestStatusResponseTest.java        |   91 +
 .../CollectionsAPIDistributedZkTest.java           |   19 +-
 .../cloud/api/collections/TestCollectionAPI.java   |   34 +
 .../TestRequestStatusCollectionAPI.java            |   65 +-
 .../cloud/autoscaling/AutoScalingHandlerTest.java  |  102 +-
 .../cloud/autoscaling/HttpTriggerListenerTest.java |   28 +-
 .../cloud/autoscaling/IndexSizeTriggerTest.java    |  262 ++-
 .../autoscaling/MetricTriggerIntegrationTest.java  |    9 +-
 .../autoscaling/NodeMarkersRegistrationTest.java   |    1 +
 .../ScheduledMaintenanceTriggerTest.java           |   12 +-
 .../ScheduledTriggerIntegrationTest.java           |    6 +-
 .../SearchRateTriggerIntegrationTest.java          |   33 +-
 .../cloud/autoscaling/SearchRateTriggerTest.java   |    8 +-
 .../TriggerCooldownIntegrationTest.java            |   42 +-
 .../cloud/autoscaling/sim/SimCloudManager.java     |  991 --------
 .../autoscaling/sim/SimClusterStateProvider.java   | 2260 -------------------
 .../autoscaling/sim/SimDistribStateManager.java    |  613 -----
 .../autoscaling/sim/SimNodeStateProvider.java      |  329 ---
 .../autoscaling/sim/SimSolrCloudTestCase.java      |   84 +
 .../sim/TestSimClusterStateProvider.java           |   28 +-
 .../autoscaling/sim/TestSimComputePlanAction.java  |   12 +-
 .../sim/TestSimDistribStateManager.java            |    2 +-
 .../autoscaling/sim/TestSimExecutePlanAction.java  |   18 +-
 .../autoscaling/sim/TestSimExtremeIndexing.java    |    8 +-
 .../cloud/autoscaling/sim/TestSimLargeCluster.java |   37 +-
 .../cloud/autoscaling/sim/TestSimPolicyCloud.java  |   38 +-
 .../autoscaling/sim/TestSimTriggerIntegration.java |    5 +-
 .../autoscaling/sim/TestSnapshotCloudManager.java  |  195 ++
 .../solr/cloud/autoscaling/sim/package-info.java   |   98 -
 .../solr/cloud/overseer/ZkStateReaderTest.java     |    9 +-
 .../solr/cloud/overseer/ZkStateWriterTest.java     |   11 +-
 .../org/apache/solr/core/DirectoryFactoryTest.java |    6 +-
 .../solr/core/ExitableDirectoryReaderTest.java     |   11 +-
 .../apache/solr/core/TestConfigSetImmutable.java   |    7 +-
 .../apache/solr/core/TestConfigSetProperties.java  |    8 +-
 .../org/apache/solr/core/TestDirectoryFactory.java |    2 +-
 .../apache/solr/core/TestSolrConfigHandler.java    |    5 +-
 .../src/test/org/apache/solr/core/TestSolrXml.java |    5 +-
 .../org/apache/solr/handler/JsonLoaderTest.java    |   10 +-
 .../org/apache/solr/handler/TestBlobHandler.java   |    5 +-
 .../TestReplicationHandlerDiskOverFlow.java        |  130 +-
 .../handler/TestSolrConfigHandlerConcurrent.java   |    3 +-
 .../admin/AutoscalingHistoryHandlerTest.java       |    6 +
 .../solr/handler/admin/DaemonStreamApiTest.java    |  319 +++
 .../solr/handler/admin/MetricsHandlerTest.java     |   21 +-
 .../handler/admin/MetricsHistoryHandlerTest.java   |    6 +-
 .../solr/handler/admin/TestApiFramework.java       |    3 +-
 .../handler/admin/ZookeeperStatusHandlerTest.java  |    6 +-
 .../component/DistributedTermsComponentTest.java   |   48 +-
 .../component/MoreLikeThisComponentTest.java       |  286 +++
 .../solr/handler/component/TermsComponentTest.java |   23 +
 .../TestDistributedStatsComponentCardinality.java  |    2 +
 .../component/TestHttpShardHandlerFactory.java     |   31 +-
 .../solr/handler/export/TestExportWriter.java      |    3 +-
 .../apache/solr/legacy/TestNumericTokenStream.java |    2 +-
 .../metrics/reporters/SolrGangliaReporterTest.java |   84 -
 .../metrics/rrd/SolrRrdBackendFactoryTest.java     |    2 +
 .../org/apache/solr/request/SimpleFacetsTest.java  |    5 +-
 .../org/apache/solr/rest/TestManagedResource.java  |   13 +-
 .../test/org/apache/solr/rest/TestRestManager.java |    5 +-
 .../apache/solr/rest/schema/TestBulkSchemaAPI.java |   65 +-
 .../analysis/TestManagedStopFilterFactory.java     |    9 +-
 .../analysis/TestManagedSynonymFilterFactory.java  |   26 +-
 .../TestManagedSynonymGraphFilterFactory.java      |   19 +-
 .../apache/solr/schema/PrimitiveFieldTypeTest.java |    4 +-
 .../solr/schema/TestBulkSchemaConcurrent.java      |   15 +-
 .../solr/schema/TestManagedSchemaThreadSafety.java |    2 +-
 .../solr/schema/TestSchemalessBufferedUpdates.java |    2 +-
 .../solr/schema/TestUseDocValuesAsStored2.java     |    6 +-
 .../solr/search/TestExtendedDismaxParser.java      |    4 +-
 ...estOverriddenPrefixQueryForCustomFieldType.java |    2 +
 .../org/apache/solr/search/TestRealTimeGet.java    |   22 +-
 .../test/org/apache/solr/search/TestRecovery.java  |   52 +-
 .../org/apache/solr/search/TestRecoveryHdfs.java   |    9 +-
 .../org/apache/solr/search/TestSolr4Spatial2.java  |  102 +-
 .../apache/solr/search/TestSolrQueryParser.java    |   74 +-
 .../src/test/org/apache/solr/search/TestSort.java  |    7 +-
 .../org/apache/solr/search/TestStressRecovery.java |   10 +-
 .../org/apache/solr/search/TestStressReorder.java  |   18 +-
 .../apache/solr/search/TestStressUserVersions.java |   18 +-
 .../org/apache/solr/search/TestStressVersions.java |   14 +-
 .../solr/search/facet/RangeFacetCloudTest.java     |    4 +-
 .../search/facet/TestCloudJSONFacetJoinDomain.java |    4 +-
 .../solr/search/facet/TestCloudJSONFacetSKG.java   |    4 +-
 .../solr/search/facet/TestJsonFacetRefinement.java |   21 +-
 .../search/facet/TestJsonFacetsStatsParsing.java   |    3 +-
 .../solr/search/join/TestScoreJoinQPNoScore.java   |    9 +-
 .../solr/security/AuditLoggerIntegrationTest.java  |    8 +-
 .../solr/security/BasicAuthOnSingleNodeTest.java   |   97 +
 .../solr/security/BasicAuthStandaloneTest.java     |   59 +-
 .../solr/security/CallbackAuditLoggerPlugin.java   |    1 +
 .../security/JWTAuthPluginIntegrationTest.java     |   14 +-
 .../apache/solr/security/JWTAuthPluginTest.java    |   94 +-
 .../hadoop/TestSolrCloudWithHadoopAuthPlugin.java  |    2 +-
 .../spelling/ConjunctionSolrSpellCheckerTest.java  |    4 +-
 .../solr/store/blockcache/BlockCacheTest.java      |   16 +-
 .../solr/store/blockcache/BufferStoreTest.java     |    6 +
 .../uninverting/TestDocTermOrdsUninvertLimit.java  |   21 +-
 .../org/apache/solr/update/AddBlockUpdateTest.java |    5 +-
 .../org/apache/solr/update/CdcrUpdateLogTest.java  |    6 +-
 .../update/TestInPlaceUpdateWithRouteField.java    |  148 ++
 .../solr/update/TestInPlaceUpdatesStandalone.java  |   26 +-
 .../solr/update/processor/AtomicUpdatesTest.java   |   46 +-
 .../CategoryRoutedAliasUpdateProcessorTest.java    |   49 +-
 .../processor/DistributedUpdateProcessorTest.java  |  168 +-
 .../update/processor/NestedAtomicUpdateTest.java   |  657 ++++++
 .../apache/solr/util/MockSearchableSolrClient.java |  117 -
 .../solr/util/tracing/TestDistributedTracing.java  |  144 ++
 .../solr/util/tracing/TestHttpServletCarrier.java  |   68 +
 solr/licenses/gmetric4j-1.0.7.jar.sha1             |    1 -
 solr/licenses/gmetric4j-LICENSE-BSD.txt            |   31 -
 solr/licenses/jaeger-core-0.35.5.jar.sha1          |    1 +
 ...LICENSE-ASL.txt => jaeger-core-LICENSE-ASL.txt} |    0
 ...gmetric4j-NOTICE.txt => jaeger-core-NOTICE.txt} |    0
 solr/licenses/jaeger-thrift-0.35.5.jar.sha1        |    1 +
 ...CENSE-ASL.txt => jaeger-thrift-LICENSE-ASL.txt} |    0
 ...etric4j-NOTICE.txt => jaeger-thrift-NOTICE.txt} |    0
 solr/licenses/jose4j-0.6.4.jar.sha1                |    1 -
 solr/licenses/jose4j-0.6.5.jar.sha1                |    1 +
 solr/licenses/libthrift-0.12.0.jar.sha1            |    1 +
 ...t-LICENSE-ASL.txt => libthrift-LICENSE-ASL.txt} |    0
 solr/licenses/libthrift-NOTICE.txt                 |    5 +
 solr/licenses/metrics-core-3.2.6.jar.sha1          |    1 -
 solr/licenses/metrics-core-4.0.5.jar.sha1          |    1 +
 solr/licenses/metrics-ganglia-3.2.6.jar.sha1       |    1 -
 solr/licenses/metrics-graphite-3.2.6.jar.sha1      |    1 -
 solr/licenses/metrics-graphite-4.0.5.jar.sha1      |    1 +
 solr/licenses/metrics-jetty9-3.2.6.jar.sha1        |    1 -
 solr/licenses/metrics-jetty9-4.0.5.jar.sha1        |    1 +
 solr/licenses/metrics-jmx-4.0.5.jar.sha1           |    1 +
 ...LICENSE-ASL.txt => metrics-jmx-LICENSE-ASL.txt} |    0
 ...s-ganglia-NOTICE.txt => metrics-jmx-NOTICE.txt} |    0
 solr/licenses/metrics-jvm-3.2.6.jar.sha1           |    1 -
 solr/licenses/metrics-jvm-4.0.5.jar.sha1           |    1 +
 .../morfologik-ukrainian-search-3.9.0.jar.sha1     |    1 +
 .../morfologik-ukrainian-search-LICENSE-ASL.txt    |  202 ++
 .../morfologik-ukrainian-search-NOTICE.txt         |    6 +
 solr/licenses/noggit-0.8.jar.sha1                  |    1 -
 solr/licenses/noggit-NOTICE.txt                    |    3 -
 solr/licenses/opentracing-api-0.33.0.jar.sha1      |    1 +
 ...NSE-ASL.txt => opentracing-api-LICENSE-ASL.txt} |    0
 ...ric4j-NOTICE.txt => opentracing-api-NOTICE.txt} |    0
 solr/licenses/opentracing-mock-0.33.0.jar.sha1     |    1 +
 ...SE-ASL.txt => opentracing-mock-LICENSE-ASL.txt} |    0
 ...ic4j-NOTICE.txt => opentracing-mock-NOTICE.txt} |    0
 solr/licenses/opentracing-noop-0.33.0.jar.sha1     |    1 +
 ...SE-ASL.txt => opentracing-noop-LICENSE-ASL.txt} |    0
 ...ic4j-NOTICE.txt => opentracing-noop-NOTICE.txt} |    0
 solr/licenses/opentracing-util-0.33.0.jar.sha1     |    1 +
 ...SE-ASL.txt => opentracing-util-LICENSE-ASL.txt} |    0
 ...ic4j-NOTICE.txt => opentracing-util-NOTICE.txt} |    0
 solr/licenses/rrd4j-3.2.jar.sha1                   |    1 -
 solr/licenses/rrd4j-3.5.jar.sha1                   |    1 +
 .../s2-geometry-library-java-1.0.0.jar.sha1        |    1 +
 .../s2-geometry-library-java-LICENSE-ASL.txt       |  202 ++
 ...ICE.txt => s2-geometry-library-java-NOTICE.txt} |    0
 solr/licenses/zookeeper-3.4.14.jar.sha1            |    1 -
 solr/licenses/zookeeper-3.5.5.jar.sha1             |    1 +
 solr/licenses/zookeeper-jute-3.5.5.jar.sha1        |    1 +
 solr/licenses/zookeeper-jute-LICENSE-ASL.txt       |  202 ++
 solr/licenses/zookeeper-jute-NOTICE.txt            |    5 +
 solr/server/etc/webdefault.xml                     |    2 +-
 solr/server/ivy.xml                                |    3 +-
 .../solr/configsets/_default/conf/solrconfig.xml   |   13 +-
 .../conf/solrconfig.xml                            |   13 +-
 solr/server/solr/solr.xml                          |    2 +
 solr/site/SYSTEM_REQUIREMENTS.mdtext               |    2 +-
 .../src/_templates/_hdlist.html.slim               |    2 +-
 solr/solr-ref-guide/src/aliases.adoc               |  133 +-
 solr/solr-ref-guide/src/audit-logging.adoc         |   24 +-
 .../src/basic-authentication-plugin.adoc           |    6 +-
 solr/solr-ref-guide/src/cloud-screens.adoc         |    2 +-
 solr/solr-ref-guide/src/collections-api.adoc       |   80 +-
 solr/solr-ref-guide/src/coreadmin-api.adoc         |    4 +-
 solr/solr-ref-guide/src/documents-screen.adoc      |    2 +-
 solr/solr-ref-guide/src/format-of-solr-xml.adoc    |   16 +-
 .../images/solr-tracing/query-request-tracing.png  |  Bin 0 -> 286374 bytes
 .../src/indexing-nested-documents.adoc             |    6 +-
 solr/solr-ref-guide/src/json-query-dsl.adoc        |    6 +-
 solr/solr-ref-guide/src/json-request-api.adoc      |    2 +-
 .../src/jwt-authentication-plugin.adoc             |   29 +-
 .../src/major-changes-in-solr-7.adoc               |    8 +-
 .../src/major-changes-in-solr-8.adoc               |  509 ++++-
 solr/solr-ref-guide/src/metrics-reporting.adoc     |    4 +-
 ...onitoring-solr-with-prometheus-and-grafana.adoc |   28 +
 solr/solr-ref-guide/src/monitoring-solr.adoc       |    4 +-
 solr/solr-ref-guide/src/morelikethis.adoc          |    9 +-
 .../src/query-settings-in-solrconfig.adoc          |   13 +-
 .../setting-up-an-external-zookeeper-ensemble.adoc |    6 +
 .../src/solr-system-requirements.adoc              |   59 +-
 solr/solr-ref-guide/src/solr-tracing.adoc          |   87 +
 solr/solr-ref-guide/src/solr-tutorial.adoc         |   16 +-
 solr/solr-ref-guide/src/solr-upgrade-notes.adoc    |  256 +--
 .../src/solrcloud-autoscaling-api.adoc             |  194 +-
 .../src/solrcloud-autoscaling-listeners.adoc       |    2 +-
 .../solrcloud-autoscaling-policy-preferences.adoc  |   85 +-
 .../src/solrcloud-autoscaling-triggers.adoc        |   17 +-
 solr/solr-ref-guide/src/spatial-search.adoc        |   20 +-
 solr/solr-ref-guide/src/streaming-expressions.adoc |    1 +
 .../src/taking-solr-to-production.adoc             |    6 +-
 .../src/updatehandlers-in-solrconfig.adoc          |   24 +
 .../src/updating-parts-of-documents.adoc           |  209 +-
 solr/solrj/ivy.xml                                 |    2 +-
 .../org/apache/solr/client/solrj/SolrRequest.java  |   16 +
 .../client/solrj/beans/DocumentObjectBinder.java   |    2 +-
 .../client/solrj/cloud/DistribStateManager.java    |    2 +-
 .../solrj/cloud/autoscaling/AutoScalingConfig.java |    3 +-
 .../client/solrj/cloud/autoscaling/Clause.java     |  196 +-
 .../DelegatingClusterStateProvider.java            |   18 +
 .../client/solrj/cloud/autoscaling/Policy.java     |    6 +-
 .../solrj/cloud/autoscaling/PolicyHelper.java      |   66 +-
 .../solrj/cloud/autoscaling/ReplicaInfo.java       |   26 +-
 .../client/solrj/cloud/autoscaling/Suggester.java  |    6 +-
 .../client/solrj/cloud/autoscaling/Suggestion.java |    9 +-
 .../client/solrj/cloud/autoscaling/Variable.java   |    5 +-
 .../solrj/cloud/autoscaling/VariableBase.java      |   11 +-
 .../solrj/cloud/autoscaling/VersionedData.java     |   48 +-
 .../client/solrj/impl/BaseCloudSolrClient.java     |   38 +-
 .../solrj/impl/BaseHttpClusterStateProvider.java   |   18 +-
 .../client/solrj/impl/ClusterStateProvider.java    |   26 +
 .../impl/ConcurrentUpdateHttp2SolrClient.java      |    2 +-
 .../solr/client/solrj/impl/Http2SolrClient.java    |   25 +-
 .../solr/client/solrj/impl/HttpClientUtil.java     |    5 +-
 .../client/solrj/impl/HttpListenerFactory.java     |   14 +
 .../solr/client/solrj/impl/HttpSolrClient.java     |    7 +
 .../solr/client/solrj/impl/PreferenceRule.java     |   47 +
 .../solrj/impl/SolrClientNodeStateProvider.java    |    2 +
 .../solrj/impl/ZkClientClusterStateProvider.java   |   72 +-
 .../client/solrj/impl/ZkDistribStateManager.java   |    4 +-
 .../java/org/apache/solr/client/solrj/io/Lang.java |    5 +-
 .../solrj/io/eval/StandardDeviationEvaluator.java  |   59 +
 .../client/solrj/io/eval/VarianceEvaluator.java    |   59 +
 .../client/solrj/io/stream/CloudSolrStream.java    |   53 +-
 .../solr/client/solrj/io/stream/DaemonStream.java  |    7 +-
 .../client/solrj/io/stream/DeepRandomStream.java   |  483 ++++
 .../solr/client/solrj/io/stream/Facet2DStream.java |  472 ++++
 .../client/solrj/io/stream/RandomFacadeStream.java |  148 ++
 .../solr/client/solrj/io/stream/RandomStream.java  |    6 +-
 .../solrj/io/stream/SignificantTermsStream.java    |    3 +
 .../solr/client/solrj/io/stream/SolrStream.java    |   22 +-
 .../solr/client/solrj/io/stream/SqlStream.java     |    3 +
 .../solr/client/solrj/io/stream/StatsStream.java   |   45 +-
 .../solr/client/solrj/io/stream/StreamContext.java |   21 +-
 .../solr/client/solrj/io/stream/TupleStream.java   |   10 +-
 .../solrj/request/CollectionAdminRequest.java      |   32 +
 .../client/solrj/request/schema/SchemaRequest.java |    4 +-
 .../solrj/response/CollectionAdminResponse.java    |    8 +
 .../solrj/response/json/BucketBasedJsonFacet.java  |   26 +-
 .../java/org/apache/solr/common/cloud/Aliases.java |  160 +-
 .../common/cloud/ClusterPropertiesListener.java    |   39 +
 .../org/apache/solr/common/cloud/ClusterState.java |   11 +-
 .../solr/common/cloud/ConnectionManager.java       |   38 +-
 .../common/cloud/DefaultConnectionStrategy.java    |    6 +-
 .../apache/solr/common/cloud/DocCollection.java    |    4 +-
 .../org/apache/solr/common/cloud/DocRouter.java    |    2 +-
 .../apache/solr/common/cloud/HashBasedRouter.java  |    2 +-
 .../org/apache/solr/common/cloud/OnReconnect.java  |    4 +-
 .../java/org/apache/solr/common/cloud/Replica.java |    4 +-
 .../org/apache/solr/common/cloud/RoutingRule.java  |    4 +-
 .../java/org/apache/solr/common/cloud/Slice.java   |    5 +-
 .../org/apache/solr/common/cloud/SolrZkClient.java |   91 +-
 .../org/apache/solr/common/cloud/ZkNodeProps.java  |    5 +-
 .../apache/solr/common/cloud/ZkStateReader.java    |  168 +-
 .../solr/common/params/CollectionAdminParams.java  |   15 +
 .../solr/common/params/CollectionParams.java       |    3 +-
 .../apache/solr/common/params/CommonParams.java    |    2 +
 .../org/apache/solr/common/params/ShardParams.java |    3 +
 .../org/apache/solr/common/util/ByteUtils.java     |    1 +
 .../java/org/apache/solr/common/util/StrUtils.java |    9 +
 .../org/apache/solr/common/util/TimeSource.java    |    6 +-
 .../java/org/apache/solr/common/util/Utils.java    |   16 +-
 solr/solrj/src/java/org/noggit/CharArr.java        |  394 ++++
 solr/solrj/src/java/org/noggit/JSONParser.java     | 1297 +++++++++++
 solr/solrj/src/java/org/noggit/JSONUtil.java       |  203 ++
 solr/solrj/src/java/org/noggit/JSONWriter.java     |  358 +++
 solr/solrj/src/java/org/noggit/ObjectBuilder.java  |  168 ++
 solr/solrj/src/java/org/noggit/package-info.java   |   23 +
 solr/solrj/src/test-files/log4j2.xml               |   47 +-
 .../apache/solr/client/solrj/SolrExampleTests.java |   47 +-
 .../client/solrj/cloud/autoscaling/TestPolicy.java |  272 ++-
 .../solrj/cloud/autoscaling/TestPolicy2.java       |   49 +-
 .../solrj/cloud/autoscaling/TestPolicy2Old.java    |   26 +
 .../solrj/cloud/autoscaling/TestPolicyOld.java     |   25 +
 .../solrj/embedded/SolrExampleJettyTest.java       |    7 +-
 .../solrj/impl/CloudHttp2SolrClientTest.java       |    2 +
 .../client/solrj/impl/CloudSolrClientTest.java     |    2 +
 .../solrj/impl/TestCloudSolrClientConnections.java |   54 +
 .../org/apache/solr/client/solrj/io/TestLang.java  |    4 +-
 .../client/solrj/io/stream/JDBCStreamTest.java     |    2 +-
 .../client/solrj/io/stream/MathExpressionTest.java |   18 +
 .../solrj/io/stream/StreamExpressionTest.java      |  224 +-
 .../solr/client/solrj/io/stream/StreamingTest.java |  229 +-
 .../apache/solr/common/cloud/SolrZkClientTest.java |   99 +-
 .../common/cloud/TestCollectionStateWatchers.java  |   22 +-
 .../solr/common/cloud/TestZkConfigManager.java     |    2 +-
 solr/solrj/src/test/org/noggit/TestJSONParser.java |  690 ++++++
 solr/solrj/src/test/org/noggit/TestJSONWriter.java |   94 +
 .../src/test/org/noggit/TestObjectBuilder.java     |   99 +
 solr/test-framework/ivy.xml                        |    1 +
 .../src/java/org/apache/solr/SolrTestCaseJ4.java   |  163 +-
 .../analysis/StringMockSolrResourceLoader.java     |    2 +-
 .../solr/cloud/AbstractDistribZkTestBase.java      |    4 +-
 .../solr/cloud/AbstractFullDistribZkTestBase.java  |    2 +-
 .../org/apache/solr/cloud/AbstractZkTestCase.java  |    5 +-
 .../org/apache/solr/cloud/CloudInspectUtil.java    |    7 +-
 .../apache/solr/cloud/MiniSolrCloudCluster.java    |    2 +-
 .../java/org/apache/solr/cloud/ZkTestServer.java   |   45 +-
 .../apache/solr/core/MockTracerConfigurator.java   |   35 +
 solr/webapp/web/js/angular/controllers/cloud.js    |   59 +-
 solr/webapp/web/libs/ngtimeago.js                  |    7 +-
 1018 files changed, 52757 insertions(+), 11502 deletions(-)

diff --cc solr/solr-ref-guide/src/streaming-expressions.adoc
index 23eb4fd,3bd467c..202978f
--- a/solr/solr-ref-guide/src/streaming-expressions.adoc
+++ b/solr/solr-ref-guide/src/streaming-expressions.adoc
@@@ -80,40 -95,58 +80,41 @@@ For the above example the `/stream` han
  
  Note the last tuple in the above example stream is `{"EOF":true,"RESPONSE_TIME":33}`. The `EOF` indicates the end of the stream. To process the JSON response, you'll need to use a streaming JSON implementation because streaming expressions are designed to return the entire result set which may have millions of records. In your JSON client you'll need to iterate each doc (tuple) and check for the EOF tuple to determine the end of stream.
  
 -The {solr-javadocs}/solr-solrj/org/apache/solr/client/solrj/io/package-summary.html[`org.apache.solr.client.solrj.io`] package provides Java classes that compile streaming expressions into streaming API objects. These classes can be used to execute streaming expressions from inside a Java application. For example:
  
 -[source,java]
 -----
 -    StreamFactory streamFactory = new DefaultStreamFactory().withCollectionZkHost("collection1", zkServer.getZkAddress());
 -    InjectionDefense defense = new InjectionDefense("parallel(collection1, group(search(collection1, q=\"*:*\", fl=\"id,a_s,a_i,a_f\", sort=\"a_s asc,a_f asc\", partitionKeys=\"a_s\"), by=\"a_s asc\"), workers=\"2\", zkHost=\"?$?\", sort=\"a_s asc\")");
 -    defense.addParameter(zkhost);
 -    ParallelStream pstream = (ParallelStream)streamFactory.constructStream(defense.safeExpressionString());
 -----
 +== Elements of the Lanaguage
  
 -Note that InjectionDefense need only be used if the string being inserted could contain user supplied data. See the
 -javadoc for `InjectionDefense` for usage details and SOLR-12891 for an example of the potential risks.
 -Also note that for security reasons normal parameter substitution no longer applies to the expr parameter
 -unless the jvm has been started with `-DStreamingExpressionMacros=true` (usually via `solr.in.sh`)
 +=== Stream Sources
  
 -=== Data Requirements
 +Stream sources originate streams. There are rich set of searching, sampling and aggregation stream sources to choose from.
 +
 +A full reference to all available source expressions is available in <<stream-source-reference.adoc#stream-source-reference,Stream Source Reference>>.
  
 -Because streaming expressions relies on the `/export` handler, many of the field and field type requirements to use `/export` are also requirements for `/stream`, particularly for `sort` and `fl` parameters. Please see the section <<exporting-result-sets.adoc#exporting-result-sets,Exporting Result Sets>> for details.
+ 
 -=== Local Execution
 +=== Stream Decorators
  
 -In certain special cases such as joining documents on a value that is 1:1 with the portion of the id used in
 -composite routing, the relevant data is always co-located on the same node. When this happens, fanning out requests
 -among many nodes and waiting for a response from all nodes is inefficient. In cases where data co-location holds true
 -for the entire expression, it may be faster for the client to send the expression to each slice with
 -`&streamLocalOnly=true` and handle merging of the results (if required) locally. This is an advanced option, relying
 -on a convenient organization of the index, and should only be considered if normal usage poses a performance issue.
 +Stream decorators wrap stream sources and other stream decorators to transform a stream.
  
 -== Types of Streaming Expressions
 +A full reference to all available decorator expressions is available in <<stream-decorator-reference.adoc#stream-decorator-reference,Stream Decorator Reference>>.
  
 -=== About Stream Sources
 +=== Math Expressions
  
 -Stream sources originate streams. The most commonly used one of these is `search`, which does a query.
 +Math expressions are a vector and matrix math library that can be combined with streaming expressions to perform analysis and build mathematical models
 +of the result sets. From a language standpoint Math Expressions are a sub-langauge of streaming expressions that don't return streams of tuples. Instead
 +they operate on and return numbers, vectors, matrices and mathematical models. The documentation will show how to combine Streaming Expressions and Math
 +Expressions.
  
 -A full reference to all available source expressions is available in <<stream-source-reference.adoc#stream-source-reference,Stream Source Reference>>.
 +The Math Expressions user guide is available in <<>>
  
 -=== About Stream Decorators
 -Stream decorators wrap other stream functions or perform operations on a stream.
 +From a language standpoint Math Expressions are referred to as Stream Evaluators.
  
 -A full reference to all available decorator expressions is available in <<stream-decorator-reference.adoc#stream-decorator-reference,Stream Decorator Reference>>.
 +A full reference to all available evaluator expressions is available in <<stream-evaluator-reference.adoc#stream-evaluator-reference,Stream Evaluator Reference>>.
  
 -=== About Stream Evaluators
 +=== Visualization
  
 -Stream Evaluators can be used to evaluate (calculate) new values based on other values in a tuple. That newly evaluated value can be put into the tuple (as part of a `select(...)` clause), used to filter streams (as part of a `having(...)` clause), and for other things. Evaluators can contain field names, raw values, or other evaluators, giving you the ability to create complex evaluation logic, including conditional if/then choices.
  
 -In cases where you want to use raw values as part of an evaluation you will need to consider the order of how evaluators are parsed.
 +Visualization of both Streaming Expressions and Math Expressions is done using Apache Zeppelin and the Zeppelin-Solr Interpreter.
  
 -1.  If the parameter can be parsed into a valid number, then it is considered a number. For example, `add(3,4.5)`
 -2.  If the parameter can be parsed into a valid boolean, then it is considered a boolean. For example, `eq(true,false)`
 -3.  If the parameter can be parsed into a valid evaluator, then it is considered an evaluator. For example, `eq(add(10,4),add(7,7))`
 -4.  The parameter is considered a field name, even if it quoted. For example, `eq(fieldA,"fieldB")`
 +Visualizing Streaming expressions and setting up of Apache Zeppeling is documented in<<>>
  
 -If you wish to use a raw string as part of an evaluation, you will want to consider using the `raw(string)` evaluator. This will always return the raw value, no matter what is entered.
 +The Math Expressions user guide has in depth coverage of visualization techniques.
  
 -A full reference to all available evaluator expressions is available in <<stream-evaluator-reference.adoc#stream-evaluator-reference,Stream Evaluator Reference>>.