Commit Graph

850 Commits

Author SHA1 Message Date
David Smiley 732348ec7f SOLR-14197: SolrResourceLoader refactorings to reduce API
* Remove SRL.listConfigDir (unused)
* Remove SRL.getDataDir
* Remove SRL.getCoreName
* Remove SRL.getCoreProperties
 XmlConfigFile needs to be passed in the substitutableProperties
 IndexSchema needs to be passed in the substitutableProperties
 Remove redundant Properties from CoreContainer constructors
* Remove SRL.newAdminHandlerInstance (unused)
* Remove SRL.openSchema and openConfig
* Avoid SRL.getConfigDir
 Also harmonized similar initialization logic between DIH Tika processor & ExtractingRequestHandler.
* Ensure SRL.addToClassLoader and reloadLuceneSPI are called at most once
 Don't auto-load "lib" in constructor; wrong place for this logic.
* Avoid SRL.getInstancePath
 Added SolrCore.getInstancePath instead
 Use CoreContainer.getSolrHome instead
 NodeConfig should track solrHome separate from SolrResourceLoader
* Simplify some SolrCore constructors
* Move locateSolrHome to new SolrPaths
* Move "User Files" stuff to SolrPaths
2020-03-11 09:20:28 -04:00
Mike 1770797387
SOLR-14223 Create RSAKeyPair from disk (#1217)
* Create properties for PublicKeyHandler to read existing keys from disk
* Move pregenerated keys from core/test-files to test-framework
* Update tests to use existing keys instead of new keys each run
2020-02-24 12:07:10 -08:00
Erick Erickson 292bed0c42 SOLR-11035: (at least) 2 distinct failures possible when clients attempt searches during SolrCore reload 2020-02-21 10:57:16 -05:00
Chris Hostetter f549ee3535 SOLR-13794: Replace redundent test only copy of '_default' configset with SolrTestCase logic to correctly set 'solr.default.confdir' system property
This change allows us to remove kludgy test only code from ZkController
2020-02-14 11:36:53 -07:00
Chris Hostetter f1fc3e7ba2 SOLR-14247: Revert SolrTestCase Logger removal 2020-02-12 11:51:36 -07:00
Mike 71b869381e
SOLR-14247 Remove unneeded sleeps (#1244) 2020-02-10 21:13:56 -06:00
Shalin Shekhar Mangar c65b97665c
SOLR-13996: Refactor HttpShardHandler.prepDistributed method (#1220)
SOLR-13996: Refactor HttpShardHandler.prepDistributed method into smaller pieces

This commit introduces an interface named ReplicaSource which is marked as experimental. It has two sub-classes named CloudReplicaSource (for solr cloud) and LegacyReplicaSource for non-cloud clusters. The prepDistributed method now calls out to these sub-classes depending on whether the cluster is running on cloud mode or not.
2020-02-10 19:57:05 +05:30
Robert Muir 975df9ddd3
LUCENE-9182: add apache license headers to all .gradle files and enforce in rat task 2020-01-27 12:05:34 -05:00
Robert Muir 5f964eeef2
SOLR-14217: tests respect tests.workDir correctly (prevent SSD destruction) 2020-01-27 06:07:48 -05:00
Shalin Shekhar Mangar 04193d5252 SOLR-14207: Fix logging statements with less or more arguments than placeholders 2020-01-23 14:00:08 +05:30
David Smiley ab924fd4ea
SOLR-14040: shareSchema support for SolrCloud
* Use Caffeine impl and weak values (to the schema). Previously the cache never evicted!
* now populating the configSet name from ZK into CloudDescriptor when CloudDescriptor is loaded
* actual schema name needs to be deterministic now; fallback from non-existent managed-schema to schema.xml will thwart this cache
* a test conf/core.properties wasn't actually used and became a problem in it's weird location after I refactored some logic
2020-01-21 13:18:37 -05:00
Mike 338d386ae0
LUCENE-9145 First pass addressing static analysis (#1181)
Fixed a bunch of the smaller warnings found by error-prone compiler
plugin, while ignoring a lot of the bigger ones.
2020-01-17 13:30:39 -06:00
Chris Hostetter 5f2d7c4855 SOLR-14184: Internal 'test' variable DirectUpdateHandler2.commitOnClose has been removed and replaced with TestInjection.skipIndexWriterCommitOnClose 2020-01-16 11:47:06 -07:00
Dawid Weiss 5897b78572 Merge remote-tracking branch 'origin/master' into gradle-master 2019-12-20 17:35:40 +01:00
Kevin Risden aab3c5faa3
SOLR-14106: Cleanup Jetty SslContextFactory usage
Jetty 9.4.16.v20190411 and up introduced separate
client and server SslContextFactory implementations.
This split requires the proper use of of
SslContextFactory in clients and server configs.

This fixes the following
* SSL with SOLR_SSL_NEED_CLIENT_AUTH not working since v8.2.0
* Http2SolrClient SSL not working in branch_8x

Signed-off-by: Kevin Risden <krisden@apache.org>
2019-12-19 23:05:47 -05:00
Robert Muir 7490bfd828 SOLR-14085: remove solr fork of lucene test securitymanager 2019-12-18 23:06:31 -05:00
Chris Hostetter d30f90e349 SOLR-14099: expanded comment on static final variable based on followup questions in Jira from Dawid 2019-12-18 16:36:34 -07:00
Dawid Weiss 28b19c2af2 Merge with master. 2019-12-18 09:32:35 +01:00
Chris Hostetter cc4262a8ec SOLR-14099: Fixed @LogLevel annotation in test-framework to correctly 'unset' Loggers after test 2019-12-17 14:58:45 -07:00
Dawid Weiss 6094d4dd13 Merge remote-tracking branch 'origin/master' into gradle-master 2019-12-12 14:16:48 +01:00
Ishan Chattopadhyaya fa1ad006b6 SOLR-14071: Untrusted configsets shouldn't be allowed to use <lib> directive 2019-12-12 15:00:09 +05:30
Robert Muir dc031ea382 SOLR-14050: clean up tests use of network addresses
Solr tests now have a similar policy to Lucene, loopback use only. If a
test tries to resolve or connect to the internet, it will get SecurityException.

Some solr tests explicitly try to talk to dead nodes with real
networking. This is not good and asking for trouble, but use low loopback port numbers instead of
multicast addresses. The idea is that it fails faster. Move these to
constants so that stuff isn't copy-pasted everywhere, in case we have to
do something different later.
2019-12-11 12:51:45 -05:00
Dawid Weiss 27d5509644 Merge remote-tracking branch 'origin/master' into gradle-master 2019-12-11 08:57:18 +01:00
Kevin Risden 48775ea18e
SOLR-14033: Fix Hadoop tests with security manager
This removes the Solr security manager hacks
for Hadoop. It does so by:
* Using a fake group mapping class instead of ShellGroupMapping
* Copies a few Hadoop classes and modifies them for tests with no Shell
* Nulls out some of the static variables in the tests

The Hadoop files were copied from Apache Hadoop 3.2.0
and copied to the test package to be only picked up
during tests. They were modified to remove the need to
shell out for access. The assumption is that these
HDFS integration tests only run on Unix based systems
and therefore Windows compatibility was removed in some
of the modified classes. The long term goal is to remove
these custom Hadoop classes. All the copied classes are
in the org.apache.hadoop package.

Signed-off-by: Kevin Risden <krisden@apache.org>
2019-12-10 16:15:24 -05:00
Dawid Weiss 20eaaa012d Merge remote-tracking branch 'origin/master' into gradle-master 2019-12-10 14:52:30 +01:00
Houston Putman 1c78d2c637
SOLR-12217: Support shards.preference in SolrJ for individual shard requests (#984) 2019-12-09 17:11:58 -05:00
Dawid Weiss 0d18581225 Merge remote-tracking branch 'origin/master' into gradle-master 2019-12-06 19:02:26 +01:00
Dawid Weiss a7444f7af4 LUCENE-9077: Add support for running under gradle test runner. 2019-12-06 19:00:50 +01:00
Dawid Weiss f371df327f Merge remote-tracking branch 'origin/master' into gradle-master 2019-12-06 11:57:29 +01:00
Robert Muir 33ca971d2b SOLR-14020: move hadoop hacks out of lucene TestSecurityManager into a solr one 2019-12-05 14:53:23 -05:00
Dawid Weiss d4a9842375 Initial gradle build layer. 2019-12-02 15:34:57 +01:00
Dawid Weiss 063c82ebd6 SOLR-13952: reverting Erick's commit (with permission). 2019-11-25 17:56:20 +01:00
Erick Erickson 4b34d726ab SOLR-13952: Separate out Gradle-specific code from other (mostly test) changes and commit separately 2019-11-24 13:24:40 -05:00
Chris Hostetter 3a5d67b87b SOLR-13869: remove deprecated SolrTestCaseJ4.getNextAvailablePort() from master 2019-11-12 14:03:39 -07:00
Chris Hostetter 603be023fe SOLR-13864: SolrTestCaseJ4.getNextAvailablePort() has been deprecated 2019-11-12 13:41:46 -07:00
Koen De Groote e7e6cfaecf LUCENE-8994: Code Cleanup - Pass values to list constructor instead of empty constructor followed by addAll(). (#919) 2019-10-14 18:45:47 +02:00
Noble Paul e3bd5a7da2
SOLR-13821: Package Store for storing package artifacts (#929)
SOLR-13821: Package Store for storing package artifacts
2019-10-08 14:24:33 +11:00
Ishan Chattopadhyaya 515af6d3ec SOLR-13661: Reverting all half-baked stuff from SOLR-13707, SOLR-13659, SOLR-13565, SOLR-13650, SOLR-13710, SOLR-13721, SOLR-13637
All half baked package management and hot-classloading code reverted to allow for a fresh start.
2019-10-06 18:00:40 +05:30
Christine Poerschke b51013a10b SOLR-13812: Add javadocs, uneven rejection and basic test coverage for the SolrTestCaseJ4.params method.
(Diego Ceccarelli, Christine Poerschke, Munendra S N)
2019-10-04 11:18:33 +01:00
Chris Hostetter 0ec7986fc0 Minor logging improvements 2019-09-30 10:00:33 -07:00
Erick Erickson 4f89987141 :SOLR-13454: Investigate ReindexCollectionTest failures, added more safeguards in bandaid code 2019-09-29 12:25:43 -04:00
Chris Hostetter ec9780c8aa SOLR-13747: New TestSSLTestConfig.testFailIfUserRunsTestsWithJVMThatHasKnownSSLBugs() to give people running tests more visibility if/when they use a known-buggy JVM causing most SSL tests to silently SKIP 2019-09-26 14:12:20 -07:00
Jason Gerlowski 319cb005d3 SOLR-13539: Introduce EmbeddedSolrServerTestBase
This groundwork commit allows tests to randomize request content-type
more flexibly.  This will be taken advantage of by subsequent commits.

Co-Authored-By: Thomas Woeckinger
Closes: #755
2019-08-29 09:52:46 -04:00
Noble Paul cf21340294
SOLR-13723: JettySolrRunner should support /api/* (the v2 end point) 2019-08-29 14:01:52 +10:00
noble 54bd950819 formatting 2019-08-28 14:34:35 +10:00
Chris Hostetter 2fdc882bc4 Additional logging in test framework methods that 'waitFor' something to better trace order of operations when failures occur 2019-08-21 13:13:40 -07:00
Noble Paul a4b0ab530f
SOLR-13650: Support for named global classloaders 2019-08-20 05:00:38 +10:00
Chris Hostetter f5856ef404 SOLR-13701: Fixed JWTAuthPlugin to update metrics prior to continuing w/other filters or returning error 2019-08-18 12:20:51 -07:00
Chris Hostetter 0291db44bc SOLR-13464: fix javadoc typo that precommit somehow missed? 2019-08-12 14:55:17 -07:00
Chris Hostetter c7822c393e SOLR-13464: Test work arounds
* Refactor existing work around in BasicAuthIntegrationTest up into SolrCloudAuthTestCase for re-use in JWTAuthPluginIntegrationTest

 * Simplify BasicAuthOnSingleNodeTest and PKIAuthenticationIntegrationTest to use their existing (static) security settings on creation of MiniSolrCloud.  Since they no longer modify security.json once the nodes are alive, the issue no longer affects them
2019-08-12 14:03:54 -07:00