DataStax Help Center

Lucence "FuzzySet" error seen when indexing Solr core

Summary

This note covers the problem "FuzzySet" errors seen in the Cassandra system.log when indexing a Solr core on a DSE search node.

Symptoms

Indexing may be observed to be slow with the following errors observed in the system.log

 

ERROR [Lucene Merge Thread #869] 2016-03-25 04:12:02,494  CassandraDaemon.java:222 - Exception in thread Thread[Lucene Merge Thread #869,6,main]
org.apache.lucene.index.MergePolicy$MergeException: java.io.IOException: java.lang.RuntimeException: java.util.concurrent.ExecutionException: java.lang.AssertionError
        at org.apache.lucene.index.ConcurrentMergeScheduler.handleMergeException(ConcurrentMergeScheduler.java:549) ~[solr-uber-with-auth_2.0-4.10.3.0.101.jar:na]
        at org.apache.lucene.index.ConcurrentMergeScheduler$MergeThread.run(ConcurrentMergeScheduler.java:522) ~[solr-uber-with-auth_2.0-4.10.3.0.101.jar:na]
Caused by: java.io.IOException: java.lang.RuntimeException: java.util.concurrent.ExecutionException: java.lang.AssertionError
        at org.apache.lucene.index.BufferedUpdatesStream.applyDeletesAndUpdates(BufferedUpdatesStream.java:384) ~[solr-uber-with-auth_2.0-4.10.3.0.101.jar:na]
        at org.apache.lucene.index.IndexWriter._mergeInit(IndexWriter.java:4290) ~[solr-uber-with-auth_2.0-4.10.3.0.101.jar:na]
        at org.apache.lucene.index.IndexWriter.mergeInit(IndexWriter.java:4251) ~[solr-uber-with-auth_2.0-4.10.3.0.101.jar:na]
        at org.apache.lucene.index.IndexWriter.merge(IndexWriter.java:4103) ~[solr-uber-with-auth_2.0-4.10.3.0.101.jar:na]
        at org.apache.lucene.index.ConcurrentMergeScheduler.doMerge(ConcurrentMergeScheduler.java:409) ~[solr-uber-with-auth_2.0-4.10.3.0.101.jar:na]
        at org.apache.lucene.index.ConcurrentMergeScheduler$MergeThread.run(ConcurrentMergeScheduler.java:486) ~[solr-uber-with-auth_2.0-4.10.3.0.101.jar:na]
Caused by: java.lang.RuntimeException: java.util.concurrent.ExecutionException: java.lang.AssertionError
        at org.apache.lucene.search.IndexSearcher$ExecutionHelper.next(IndexSearcher.java:875) ~[solr-uber-with-auth_2.0-4.10.3.0.101.jar:na]
        at org.apache.lucene.index.BufferedUpdatesStream.doTermsDeletes(BufferedUpdatesStream.java:318) ~[solr-uber-with-auth_2.0-4.10.3.0.101.jar:na]
        at org.apache.lucene.index.BufferedUpdatesStream.applyDeletesAndUpdates(BufferedUpdatesStream.java:382) ~[solr-uber-with-auth_2.0-4.10.3.0.101.jar:na]
        ... 5 common frames omitted
Caused by: java.util.concurrent.ExecutionException: java.lang.AssertionError
        at java.util.concurrent.FutureTask.report(FutureTask.java:122) ~[na:1.8.0_66]
        at java.util.concurrent.FutureTask.get(FutureTask.java:192) ~[na:1.8.0_66]
        at org.apache.lucene.search.IndexSearcher$ExecutionHelper.next(IndexSearcher.java:871) ~[solr-uber-with-auth_2.0-4.10.3.0.101.jar:na]
        ... 7 common frames omitted
Caused by: java.lang.AssertionError: null
        at org.apache.lucene.codecs.bloom.FuzzySet.mayContainValue(FuzzySet.java:217) ~[solr-uber-with-auth_2.0-4.10.3.0.101.jar:na]
        at org.apache.lucene.codecs.bloom.FuzzySet.contains(FuzzySet.java:166) ~[solr-uber-with-auth_2.0-4.10.3.0.101.jar:na]
        at org.apache.lucene.codecs.bloom.BloomFilteringPostingsFormat$BloomFilteredFieldsProducer$BloomFilteredTermsEnum.seekExact(BloomFilteringPostingsFormat.java:368) ~[solr-uber-with-auth_2.0-4.10.3.0.101.jar:na]
        at org.apache.lucene.index.BufferedUpdatesStream.doTermDeletes(BufferedUpdatesStream.java:678) ~[solr-uber-with-auth_2.0-4.10.3.0.101.jar:na]
        at org.apache.lucene.index.BufferedUpdatesStream.access$000(BufferedUpdatesStream.java:68) ~[solr-uber-with-auth_2.0-4.10.3.0.101.jar:na]
        at org.apache.lucene.index.BufferedUpdatesStream$TermsDeleteTask.call(BufferedUpdatesStream.java:635) ~[solr-uber-with-auth_2.0-4.10.3.0.101.jar:na]
        at org.apache.lucene.index.BufferedUpdatesStream$TermsDeleteTask.call(BufferedUpdatesStream.java:615) ~[solr-uber-with-auth_2.0-4.10.3.0.101.jar:na]
        at java.util.concurrent.FutureTask.run(FutureTask.java:266) ~[na:1.8.0_66]
        at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) ~[na:1.8.0_66]
        at java.util.concurrent.FutureTask.run(FutureTask.java:266) ~[na:1.8.0_66]
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) ~[na:1.8.0_66]
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) ~[na:1.8.0_66]
        at java.lang.Thread.run(Thread.java:745) ~[na:1.8.0_66]

Cause

This is a known issue outlined in the following Lucene jira:

https://issues.apache.org/jira/browse/LUCENE-6788

Also covered in the following internal jira:

DSP-6658 - FuzzySet integer min value causes assertion bug

Workaround

Edit the solrconfig.xml file for the core to include the following line in the root config section:

<dseUseUniqueKeyBloomFilter>false</dseUseUniqueKeyBloomFilter>

This will require a full re-index of the core (delete and reindex)

Solution

Upgrade to the following DSE releases or later:

4.5.10, 4.6.10, 4.7.4,  or 4.8.1

Was this article helpful?
0 out of 0 found this helpful
Have more questions? Submit a request

Comments

Powered by Zendesk