13013 Commits

Author SHA1 Message Date
Chris Hostetter
653ba8d245 SOLR-12923: Fix some issues w/concurrency and exception swallowing in SimClusterStateProvider/SimCloudManager
There are 3 tightly related bug fixes in these changes:

1) ConcurrentModificationExceptions were being thrown by some SimClusterStateProvider methods when
   creating collections/replicas due to the use of ArrayLists nodeReplicaMap. These ArrayLists were changed
   to use synchronizedList wrappers.
2) The Exceptions from #1 were being swallowed/hidden by code using SimCloudManager.submit() w/o checking
   the result of the resulting Future object. (As a result, tests waiting for a particular ClusterShape
   would timeout regardless of how long they waited.)   To protect against "silent" failures like this,
   this SimCloudManager.submit() has been updated to wrap all input Callables such that any uncaught errors
   will be logged and "counted."  SimSolrCloudTestCase will ensure a suite level failure if any such failures
   are counted.
3) The changes in #2 exposed additional concurrency problems with the Callables involved in leader election:
   These would frequently throw IllegalStateExceptions due to assumptions about the state/existence of
   replicas when the Callables were created vs when they were later run -- notably a Callable may have been
   created that held a reference to a Slice, but by the time that Callable was run the collection (or a
   node, etc...) refered to by that Slice may have been deleted.  While fixing this, the leader election
   logic was also cleaned up such that adding a replica only triggers leader election for that shard, not
   every shard in the collection.

While auditing this code, cleanup was also done to ensure all usage of SimClusterStateProvider.lock was
also cleaned up to remove all risky points where an exception may have been possible after aquiring the
lock but before the try/finally that ensured it would be unlocked.

(cherry picked from commit 76babf876a49f82959cc36a1d7ef922a9c2dddff)
2019-03-15 14:24:07 -07:00
Jan Høydahl
4540fa427a SOLR-13244: Nodes view fails when a node is temporarily down
(cherry picked from commit 8f29d1eaadce5ca2c79b1f48161a8dda696d9952)
2019-03-15 13:31:34 +01:00
Andrzej Bialecki
f7e41ef868 SOLR-13292: Fix a logic bug when point types are present, add more details to the unit test. 2019-03-15 11:54:13 +01:00
Alan Woodward
ecf86ecab7 LUCENE-3041: QueryVisitor (#581)
This commit adds an introspection API to Query, allowing users to traverse
the nested structure of a query and examine its leaves.  It replaces the existing
`extractTerms` method on Weight, and alters some highlighting code to use
the new API
2019-03-15 08:29:32 +00:00
Moshe
7961e17e7e SOLR-13129: nested docs: add more/better documentation in Solr ref-guide
(cherry picked from commit c2a6772f1edd506c114a4e8179bd09e928f97b49)
2019-03-14 09:12:41 -04:00
Jan Høydahl
e68d16f32c SOLR-12121: Remove a System.out.println in JWTAuthPlugin
(cherry picked from commit a18aa2118bf53bed0bf512820e066a2fa9f018b1)
2019-03-14 10:52:32 +01:00
Shalin Shekhar Mangar
cedff86aaa SOLR-13234: Fix for turkish locales
WhenSolrExporterIntegrationTest.jvmMetrics ran on a JVM with the Turkish locale, (test seed: 62880F3B9F140C89). The JVM metric for terminated thread-count has a dotless-i e.g. termınated.
This causes the check for matching metrics to fail.

We could normalize the text in this case, however I think it's better to ensure we have the correct total number of JVM thread metrics rather than looking at Prometheus labels which maybe localized.

This closes #605.

(cherry picked from commit 6d0386c901b9d14c7464c7cf286d4a005eb9c72c)
2019-03-14 11:12:35 +05:30
Gus Heck
1d85f13eeb SOLR-13131 Category Routed Aliases
(cherry picked from commit d8f2a02fdb11a484425f9fddfa7061711d2f0034)
2019-03-13 01:36:40 -04:00
Gus Heck
39adb09fc9 Remove inadvertently included println 2019-03-12 16:07:02 -04:00
Gus Heck
470813143d SOLR-12891 MacroExpander will no longer will expand URL parameters by
default inside of the 'expr' parameter, add InjectionDefense class
for safer handling of untrusted data in streaming expressions and add
-DStreamingExpressionMacros system property to revert to legacy behavior

(cherry picked from commit 9edc557f4526ffbbf35daea06972eb2c595e692b)
2019-03-12 11:56:28 -04:00
Erick Erickson
a87ba09e11 SOLR-13268: Clean up any test failures resulting from defaulting to async logging. Put TestXmlQParser back
(cherry picked from commit b893548d97f8b04b40dfbebd79bd860603b92c63)
2019-03-11 21:42:37 -07:00
Erick Erickson
6f6fbf0be2 SOLR-12732: TestLogWatcher failure on Jenkins. Deal with superclass logging bleeding into first watcher in the test 2019-03-11 13:00:26 -07:00
Chris Hostetter
44ff1c0ef9 SOLR-13300: DistributedFacetExistsSmallTest should not attempt to compare results of a query that is known to differ in behavior in distributed mode
(cherry picked from commit 7eb728a611a5cad82e44bd662294d682353a2ccb)
2019-03-11 10:03:07 -07:00
Kevin Risden
b4d9a98b32
SOLR-13307: Ensure HDFS tests clear System properties they set (Kevin Risden)
Signed-off-by: Kevin Risden <krisden@apache.org>
2019-03-11 11:22:22 -04:00
Mikhail Khludnev
5a5a39ee18 SOLR-13284: fallback to json instead of NPE and 500 code, when wt is omitted or wrong. 2019-03-10 23:12:22 +03:00
erick
277251c202 SOLR-13268: Clean up any test failures resulting from defaulting to async logging
(cherry picked from commit 9272c29)
2019-03-10 11:35:51 -07:00
Andrzej Bialecki
f6f5f995ef SOLR-13292: Provide extended per-segment status of a collection. 2019-03-09 14:09:34 +01:00
Erick Erickson
83ab355772 SOLR-12732: TestLogWatcher failure on Jenkins. Added more logging
(cherry picked from commit 8c6e30536562413639eaf8bab1087da700733b33)
2019-03-08 21:43:08 -08:00
Chris Hostetter
7ebd7f2fa5 Merge remote-tracking branch 'refs/remotes/origin/branch_8x' into branch_8x 2019-03-08 14:55:05 -07:00
Chris Hostetter
de5f0947e6 Delete OpenCloseCoreStressTest
This is a fairly old test that isn't particularlay valuable, all it really does is stress test indexing, but w/o actually validating the results.

In it's current state, it can suffer from exceeding file handle limits depending on merge settings, and isn't reliably reproducible due to it's
approach of "do (a variable) amount of work until a fixed amount of wall clock time has elapsed"

(cherry picked from commit 4335ad97af16a068ae35f3a42e4ec942ae1fd310)
2019-03-08 14:53:10 -07:00
Jan Høydahl
4dfe945ae7 SOLR-12121: Move CHANGES entry from Improvements to New Features section
(cherry picked from commit 9eabaf46a2be77383643dada10e93087970c07f7)
2019-03-08 22:11:54 +01:00
Chris Hostetter
27aeb11a37 SOLR-12923: harden TestSimLargeCluster
- added logging
- ensure start/finish trigger action counters are incremented before latches are released
- replace arbitrary sleep calls with a trigger listener countdown latch
- increase all await() times: This means that 'real' failures (which should be rare and hopefully
  reproducible) will be 'slow', but the trade off will be less hard to reproduce 'false failures'
  due to thread contention on slow or heavily loaded (ie: jenkins) machines

(cherry picked from commit 20de3d2ee0d234d04bbcf7c2cddc18ff67a09f8b)
2019-03-07 15:41:50 -07:00
Christine Poerschke
c55415cda8 SOLR-13254: Correct message that is logged in solrj's ConnectionManager when an exception occurred while reconnecting to ZooKeeper. (hu xiaodong via Christine Poerschke) 2019-03-07 21:09:43 +00:00
Erick Erickson
fc76b70bd5 SOLR-13261: Make SortableTextField work with export/streaming, now requires useDocValuesAsStored='true'
(cherry picked from commit 1e09268e781039b62e856cc696aba0e519079bbc)
2019-03-07 11:00:01 -08:00
Uwe Schindler
dac4169b01 Fix Windows startup script to disable HTTP/2 if TLS is enabled on Java 8. 2019-03-07 14:37:17 +01:00
Gus Heck
f772e4143e SOLR-13296 fix doc example so that it can be accepted by Solr 2019-03-07 08:07:12 -05:00
Cao Manh Dat
747832907b SOLR-13302: Adding HttpPartitionTest and ForceLeaderTest for TLOG replicas 2019-03-07 12:18:58 +00:00
Cao Manh Dat
b40efc883c SOLR-12313: Fix precommit 2019-03-07 12:01:09 +00:00
Cao Manh Dat
d6ee413acd SOLR-12313: Removing TestInjection#waitForInSyncWithLeader 2019-03-07 11:26:12 +00:00
Chris Hostetter
bb5b7f08b1 SOLR-13237: AwaitsFix LeaderTragicEventTest until we can make the underlying corruption detection reliable
(cherry picked from commit e827dc22347f597a33c61ae4b4604354627efccf)
2019-03-06 13:29:42 -07:00
Joel Bernstein
9456d25b13 SOLR-13287: Remove System.out debugging 2019-03-06 13:57:05 -05:00
erick
e4e4ea3771 Clean up any test failures resulting from defaulting to async logging, reenable shutdown hook
(cherry picked from commit 5f91670)
2019-03-05 14:11:27 -08:00
Erick Erickson
bbf4cbc17e SOLR-13295: Reproducible failure in TestDistributedGrouping 2019-03-05 14:02:42 -08:00
Mikhail Khludnev
76df3ac75d SOLR-9882: picking results for mergeIds even after partial ones occurred 2019-03-05 23:28:47 +03:00
Andrzej Bialecki
5f605daf92 SOLR-13271: Read-only mode for SolrCloud collections. 2019-03-05 17:17:00 +01:00
Joel Bernstein
357254b642 SOLR-13287: Update CHANGES.txt 2019-03-05 10:12:52 -05:00
Joel Bernstein
6ccd03e1fd SOLR-13287: Allow zplot to visualize probability distributions in Apache Zeppelin 2019-03-05 09:44:25 -05:00
Adrien Grand
b15dfbc7a9 SOLR-13234: Remove 9.0 from Solr changes. 2019-03-05 09:56:29 +01:00
Chris Hostetter
30f7562eb4 SOLR-13294: refactor test to include more loging to help diagnose some windows jenkins failures 2019-03-04 14:16:20 -07:00
Cassandra Targett
68adeab46a SOLR-13259: Add new section on Reindexing in Solr (#594)
Add new reindexing.adoc page; standardize on "reindex" vs "re-index"
2019-03-04 12:25:35 -06:00
Chris Hostetter
b8b51389ae SOLR-12923: harden testEventQueue by replacing the arbitrary sleep call with a countdown latch
(cherry picked from commit 7f7357696f9efe63147bacc3e1ed3d800d389d28)
2019-03-04 10:00:11 -07:00
Chris Hostetter
666e83d84a SOLR-12923: increase all await() times in TriggerIntegrationTest
This means that 'real' failures (which should be rare and hopefully reproducile) will be 'slow', but the trade off will be less hard to reproduce 'false failures' due to thread contention on slow or heavily loaded (ie: jenkins) machines

(cherry picked from commit 235b15acfc97a97cdf03ce73939bc5daf052b6cf)
2019-03-04 10:00:03 -07:00
Cao Manh Dat
0acc1f0584 SOLR-13276: Move change entry to 8.1 2019-03-04 15:52:18 +00:00
Jason Gerlowski
a545592c15 SOLR-13256: Add ref-guide upgrade notes for 7.7 2019-03-04 10:31:42 -05:00
Mikhail Khludnev
17c2634217 SOLR-9882: reporting timeAllowed breach as partialResults instead of 500 error 2019-03-04 17:43:58 +03:00
Adrien Grand
1c1fd08a2c Add 7.7.1 version and bwc indices. 2019-03-04 10:51:47 +01:00
Cao Manh Dat
3064b9bb5f SOLR-13276: Adding Http2 equivalent classes of CloudSolrClient and HttpClusterStateProvider 2019-03-04 09:43:35 +00:00
Shalin Shekhar Mangar
02eb9d3440 SOLR-13234: Prometheus Metric Exporter not threadsafe.
This changes the prometheus exporter to collect metrics from Solr on a fixed interval controlled by this tool and prevents concurrent collections. This change also improves performance slightly by using the cluster state instead of sending multiple HTTP requests to each node to lookup all the cores.

This closes #571.

(cherry picked from commit 1f9c767aac76ac1618ccaffce42524e109335fe8)
2019-03-04 11:04:33 +05:30
Noble Paul
b14748e61f SOLR-13285: Updates with enum fields and javabin cause ClassCastException 2019-03-04 10:26:09 +11:00
Chris Hostetter
677a97edc7 SOLR-12923: increase all await() times in TestSimTriggerIntegration
This means that 'real' failures (which should be rare and hopefully reproducile) will be 'slow', but the trade off will be less hard to reproduce 'false failures' due to thread contention on slow or heavily loaded (ie: jenkins) machines

(cherry picked from commit fed80599a6f3c237ac61782a42196f6355b8cda6)
2019-03-01 11:38:31 -07:00