Some of our tests don't run correctly/consistently via IntelliJ's
internal JUnit runner (compared to Gradle). IntelliJ's JUnit runner
is faster and better integrated, saving developer productivity.
I debugged the issue. The test TestInPlaceUpdatesDistrib failed
because "RAMDirectory can only be used with the 'single' lock factory
type.". This test's solrconfig.xml is very typical:
class="${solr.directoryFactory:solr.RAMDirectoryFactory}"
The code for this does *not* set the property. It turns out the
randomization.gradle configures all tests to run with this property
set to "org.apache.solr.core.MockDirectoryFactory". At least this is
the only one; the others set there have null values.
https://github.com/apache/solr/blob/bde8c14bddecc2a417d2fd36abe965675e8e670e/gradle/testing/randomization.gradle#L129
Proposal: remove this from the gradle config. Instead, replace all
"solr.directoryFactory:solr.RAMDirectoryFactory" with
"solr.directoryFactory:solr.MockDirectoryFactory" in all test
solrconfig files.
This is ultimately a minor refactoring of sorts; an improvement to the
build. No JIRA.
Any insights / concerns?
~ David Smiley
Apache Lucene/Solr Search Developer
http://www.linkedin.com/in/davidwsmiley
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]