You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@lucene.apache.org by "Steve Rowe (JIRA)" <ji...@apache.org> on 2016/11/23 13:59:59 UTC

[jira] [Reopened] (SOLR-9751) PreAnalyzedField can cause managed schema corruption

     [ https://issues.apache.org/jira/browse/SOLR-9751?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Steve Rowe reopened SOLR-9751:
------------------------------

The test I added on this issue has been failing regularly, e.g. from [https://jenkins.thetaphi.de/job/Lucene-Solr-6.x-Linux/2247/]:

{noformat}
  [junit4]   2> NOTE: reproduce with: ant test  -Dtestcase=PreAnalyzedFieldManagedSchemaCloudTest -Dtests.method=testAdd2Fields -Dtests.seed=CD72F125201C0C76 -Dtests.multiplier=3 -Dtests.slow=true -Dtests.locale=is -Dtests.timezone=Antarctica/McMurdo -Dtests.asserts=true -Dtests.file.encoding=US-ASCII
  [junit4] ERROR   0.09s J0 | PreAnalyzedFieldManagedSchemaCloudTest.testAdd2Fields <<<
  [junit4]    > Throwable #1: org.apache.solr.client.solrj.SolrServerException: No live SolrServers available to handle this request:[https://127.0.0.1:39011/solr/managed-preanalyzed, https://127.0.0.1:33343/solr/managed-preanalyzed]
  [junit4]    > 	at __randomizedtesting.SeedInfo.seed([CD72F125201C0C76:656743CEFC1A9F80]:0)
  [junit4]    > 	at org.apache.solr.client.solrj.impl.LBHttpSolrClient.request(LBHttpSolrClient.java:414)
  [junit4]    > 	at org.apache.solr.client.solrj.impl.CloudSolrClient.sendRequest(CloudSolrClient.java:1292)
  [junit4]    > 	at org.apache.solr.client.solrj.impl.CloudSolrClient.requestWithRetryOnStaleState(CloudSolrClient.java:1062)
  [junit4]    > 	at org.apache.solr.client.solrj.impl.CloudSolrClient.request(CloudSolrClient.java:1004)
  [junit4]    > 	at org.apache.solr.client.solrj.SolrRequest.process(SolrRequest.java:149)
  [junit4]    > 	at org.apache.solr.schema.PreAnalyzedFieldManagedSchemaCloudTest.addField(PreAnalyzedFieldManagedSchemaCloudTest.java:61)
  [junit4]    > 	at org.apache.solr.schema.PreAnalyzedFieldManagedSchemaCloudTest.testAdd2Fields(PreAnalyzedFieldManagedSchemaCloudTest.java:52)
  [junit4]    > 	at java.lang.Thread.run(Thread.java:745)
  [junit4]    > Caused by: org.apache.solr.client.solrj.impl.HttpSolrClient$RemoteSolrException: Error from server at https://127.0.0.1:39011/solr/managed-preanalyzed: No such path /schema/fields/field2
  [junit4]    > 	at org.apache.solr.client.solrj.impl.HttpSolrClient.executeMethod(HttpSolrClient.java:593)
  [junit4]    > 	at org.apache.solr.client.solrj.impl.HttpSolrClient.request(HttpSolrClient.java:262)
  [junit4]    > 	at org.apache.solr.client.solrj.impl.HttpSolrClient.request(HttpSolrClient.java:251)
  [junit4]    > 	at org.apache.solr.client.solrj.impl.LBHttpSolrClient.doRequest(LBHttpSolrClient.java:435)
  [junit4]    > 	at org.apache.solr.client.solrj.impl.LBHttpSolrClient.request(LBHttpSolrClient.java:387)
{noformat}

The test failed only 1/100 beasting iterations on my Jenkins box.  The problem appears to be that the test doesn't wait long enough for schema changes to propogate to all replicas before attempting to access a newly created field through a replica that hasn't yet gotten the changes.  I'm testing a patch that adds {{updateTimeoutSecs=15}} to the {{SchemaRequest.AddField}} requests used by the test.

> PreAnalyzedField can cause managed schema corruption
> ----------------------------------------------------
>
>                 Key: SOLR-9751
>                 URL: https://issues.apache.org/jira/browse/SOLR-9751
>             Project: Solr
>          Issue Type: Bug
>      Security Level: Public(Default Security Level. Issues are Public) 
>          Components: Schema and Analysis
>    Affects Versions: 6.2, 6.3
>            Reporter: liuyang
>            Assignee: Steve Rowe
>            Priority: Minor
>             Fix For: master (7.0), 6.4
>
>         Attachments: SOLR-9751.patch, SOLR-9751.patch, SOLR-9751.patch
>
>
> The exception as follows:
> Caused by: org.apache.solr.common.SolrException: Could not load conf for core test_shard1_replica1: Can't load schema managed-schema: Plugin init failure for [schema.xml] fieldType "preanalyzed": Cannot load analyzer: org.apache.solr.schema.PreAnalyzedField$PreAnalyzedAnalyzer
>         at org.apache.solr.core.ConfigSetService.getConfig(ConfigSetService.java:85)
>         at org.apache.solr.core.CoreContainer.create(CoreContainer.java:1031)
>         ... 6 more
> Caused by: org.apache.solr.common.SolrException: Can't load schema managed-schema: Plugin init failure for [schema.xml] fieldType "preanalyzed": Cannot load analyzer: org.apache.solr.schema.PreAnalyzedField$PreAnalyzedAnalyzer
>         at org.apache.solr.schema.IndexSchema.readSchema(IndexSchema.java:600)
>         at org.apache.solr.schema.IndexSchema.<init>(IndexSchema.java:183)
>         at org.apache.solr.schema.ManagedIndexSchema.<init>(ManagedIndexSchema.java:104)
>         at org.apache.solr.schema.ManagedIndexSchemaFactory.create(ManagedIndexSchemaFactory.java:172)
>         at org.apache.solr.schema.ManagedIndexSchemaFactory.create(ManagedIndexSchemaFactory.java:45)
>         at org.apache.solr.schema.IndexSchemaFactory.buildIndexSchema(IndexSchemaFactory.java:75)
>         at org.apache.solr.core.ConfigSetService.createIndexSchema(ConfigSetService.java:107)
>         at org.apache.solr.core.ConfigSetService.getConfig(ConfigSetService.java:78)
>         ... 7 more
> Test procedure:
> 1.create collection using sample_techproducts_configs;
> 2.add field in Solr web view;
> 3.add field again in Solr web view.
> manage-schema is modifyed as follows:
> <fieldType name="preanalyzed" class="solr.PreAnalyzedField">
>       <analyzer class=" org.apache.solr.schema.PreAnalyzedField$PreAnalyzedAnalyzer">
>       </analyzer>
> </fieldType>



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@lucene.apache.org
For additional commands, e-mail: dev-help@lucene.apache.org