You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by no...@apache.org on 2020/08/19 00:54:47 UTC
[lucene-solr] branch branch_8x updated: SOLR-14750:
TestBulkSchemaConcurrent fails often(#1760)
This is an automated email from the ASF dual-hosted git repository.
noble pushed a commit to branch branch_8x
in repository https://gitbox.apache.org/repos/asf/lucene-solr.git
The following commit(s) were added to refs/heads/branch_8x by this push:
new 0f88cce SOLR-14750: TestBulkSchemaConcurrent fails often(#1760)
0f88cce is described below
commit 0f88cce8418f8a65b1643951a43fff66722f9547
Author: Noble Paul <no...@users.noreply.github.com>
AuthorDate: Wed Aug 19 10:52:12 2020 +1000
SOLR-14750: TestBulkSchemaConcurrent fails often(#1760)
---
solr/core/src/java/org/apache/solr/core/ConfigSetService.java | 5 ++---
solr/core/src/java/org/apache/solr/core/SolrCore.java | 3 +--
.../src/java/org/apache/solr/core/SolrResourceLoader.java | 11 +----------
solr/core/src/java/org/apache/solr/schema/IndexSchema.java | 2 +-
solr/core/src/test/org/apache/solr/pkg/TestPackages.java | 2 ++
5 files changed, 7 insertions(+), 16 deletions(-)
diff --git a/solr/core/src/java/org/apache/solr/core/ConfigSetService.java b/solr/core/src/java/org/apache/solr/core/ConfigSetService.java
index 3713434..76bc0c1 100644
--- a/solr/core/src/java/org/apache/solr/core/ConfigSetService.java
+++ b/solr/core/src/java/org/apache/solr/core/ConfigSetService.java
@@ -81,8 +81,8 @@ public abstract class ConfigSetService {
) ? false: true;
SolrConfig solrConfig = createSolrConfig(dcore, coreLoader, trusted);
- ConfigSet.SchemaSupplier schema = force -> createIndexSchema(dcore, solrConfig, force);
- return new ConfigSet(configSetName(dcore), solrConfig, schema, properties, trusted);
+ IndexSchema indexSchema = createIndexSchema(dcore, solrConfig, false);
+ return new ConfigSet(configSetName(dcore), solrConfig, force -> indexSchema, properties, trusted);
} catch (Exception e) {
throw new SolrException(SolrException.ErrorCode.SERVER_ERROR,
"Could not load conf for core " + dcore.getName() +
@@ -135,7 +135,6 @@ public abstract class ConfigSetService {
if (modVersion != null) {
// note: luceneMatchVersion influences the schema
String cacheKey = configSet + "/" + guessSchemaName + "/" + modVersion + "/" + solrConfig.luceneMatchVersion;
- if(forceFetch) schemaCache.invalidate(cacheKey);
return schemaCache.get(cacheKey,
(key) -> indexSchemaFactory.create(cdSchemaName, solrConfig));
} else {
diff --git a/solr/core/src/java/org/apache/solr/core/SolrCore.java b/solr/core/src/java/org/apache/solr/core/SolrCore.java
index ca7865b..711e67b 100644
--- a/solr/core/src/java/org/apache/solr/core/SolrCore.java
+++ b/solr/core/src/java/org/apache/solr/core/SolrCore.java
@@ -943,10 +943,9 @@ public final class SolrCore implements SolrInfoBean, SolrMetricProducer, Closeab
this.solrConfig = configSet.getSolrConfig();
this.resourceLoader = configSet.getSolrConfig().getResourceLoader();
- this.resourceLoader.core = this;
schemaPluginsLoader = new PackageListeningClassLoader(coreContainer, resourceLoader,
solrConfig::maxPackageVersion,
- () -> setLatestSchema(configSet.getIndexSchema(true)));
+ () -> setLatestSchema(configSet.getIndexSchema()));
this.packageListeners.addListener(schemaPluginsLoader);
IndexSchema schema = configSet.getIndexSchema();
diff --git a/solr/core/src/java/org/apache/solr/core/SolrResourceLoader.java b/solr/core/src/java/org/apache/solr/core/SolrResourceLoader.java
index 595dacf..a073c9a 100644
--- a/solr/core/src/java/org/apache/solr/core/SolrResourceLoader.java
+++ b/solr/core/src/java/org/apache/solr/core/SolrResourceLoader.java
@@ -76,11 +76,7 @@ public class SolrResourceLoader implements ResourceLoader, Closeable, SolrClassL
private final Path instanceDir;
private String dataDir; // gone in 9.0
- /**
- * this is set by the {@link SolrCore}
- * This could be null if the core is not yet initialized
- */
- SolrCore core;
+
private final List<SolrCoreAware> waitingForCore = Collections.synchronizedList(new ArrayList<SolrCoreAware>());
private final List<SolrInfoBean> infoMBeans = Collections.synchronizedList(new ArrayList<SolrInfoBean>());
@@ -206,11 +202,6 @@ public class SolrResourceLoader implements ResourceLoader, Closeable, SolrClassL
TokenizerFactory.reloadTokenizers(this.classLoader);
}
- public SolrCore getCore(){
- return core;
- }
-
-
private static URLClassLoader addURLsToClassLoader(final URLClassLoader oldLoader, List<URL> urls) {
if (urls.size() == 0) {
return oldLoader;
diff --git a/solr/core/src/java/org/apache/solr/schema/IndexSchema.java b/solr/core/src/java/org/apache/solr/schema/IndexSchema.java
index af2a5b1..22d33a6 100644
--- a/solr/core/src/java/org/apache/solr/schema/IndexSchema.java
+++ b/solr/core/src/java/org/apache/solr/schema/IndexSchema.java
@@ -190,7 +190,7 @@ public class IndexSchema {
protected IndexSchema(Version luceneVersion, SolrResourceLoader loader, Properties substitutableProperties) {
this.luceneVersion = Objects.requireNonNull(luceneVersion);
this.loader = loader;
- this.solrClassLoader = loader.getCore() == null? loader: loader.getCore().getSchemaPluginsLoader();
+ this.solrClassLoader = loader;//loader.getCore() == null? loader: loader.getCore().getSchemaPluginsLoader();
this.substitutableProperties = substitutableProperties;
}
diff --git a/solr/core/src/test/org/apache/solr/pkg/TestPackages.java b/solr/core/src/test/org/apache/solr/pkg/TestPackages.java
index f967cbd..46b4071 100644
--- a/solr/core/src/test/org/apache/solr/pkg/TestPackages.java
+++ b/solr/core/src/test/org/apache/solr/pkg/TestPackages.java
@@ -63,6 +63,7 @@ import org.apache.solr.util.plugin.SolrCoreAware;
import org.apache.zookeeper.data.Stat;
import org.junit.After;
import org.junit.Before;
+import org.junit.Ignore;
import org.junit.Test;
import static org.apache.solr.common.cloud.ZkStateReader.SOLR_PKGS_PATH;
@@ -636,6 +637,7 @@ public class TestPackages extends SolrCloudTestCase {
}
@SuppressWarnings("rawtypes")
+ @Ignore("SOLR-14750")
public void testSchemaPlugins() throws Exception {
String COLLECTION_NAME = "testSchemaLoadingColl";
System.setProperty("managed.schema.mutable", "true");