[infinispan-issues] [JBoss JIRA] (ISPN-8168) LiveRunningTest random failures

Gustavo Fernandes (JIRA) issues at jboss.org
Thu Aug 3 07:38:00 EDT 2017


    [ https://issues.jboss.org/browse/ISPN-8168?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13443869#comment-13443869 ] 

Gustavo Fernandes commented on ISPN-8168:
-----------------------------------------

The cache {{LuceneIndexesMetadata}} has an entry with a value of type {{FileListCacheValue}} that store a list of Strings, which is {{DeltaAware}}. So a command to replace an item from a value replicates only the removed item. In the TRACE below, the value "_4.nvd"  is supposed to be removed from the list, but the whole list is wiped:

The delta aware becomes a FunctionalCommand

{code}
09:29:22,672 TRACE (jgroups-6,ISPN,gfernandes-29609:[]) [StateTransferInterceptor] Retrying command ReadWriteKeyValueCommand 
{key=*|emails|-1, value=*FileListCacheValueDelta{ops=[DeleteOperation{element='_4.nvd'}]}*, prevValue=null, prevMetadata=null, 
flags=[SKIP_INDEXING, IGNORE_RETURN_VALUES, COMMAND_RETRY], valueMatcher=MATCH_ALWAYS, successful=true} for topology 11
{code}

Topology is changed in every step of the test, so a retry happens:

{code}
09:29:22,673 TRACE (jgroups-6,ISPN,gfernandes-29609:[]) [EntryWrappingInterceptor] This is a retry- removing looked up entry 
ReadCommittedEntry(392a2ecf){key=*|emails|-1, value=FileListCacheValue [filenames=[_3.si, _0.si, _1.cfe, _1.si, _2.si, _0.cfs,
 _2.cfs, _4.cfe, _3.cfe, segments_6, segments_5, _4.fdx, _4_Lucene50_0.doc, _4_Lucene50_0.tim, _1.cfs, _0.cfe, _2.cfe, _3.cfs,
 _4.cfs, _4.si]], isCreated=false, isChanged=false, isRemoved=false, isValid=true, isExpired=false, skipLookup=false, 
metadata=MetaParamsInternalMetadata{params=MetaParams{length=0, metas=[]}}}
{code}

We can see that in the data container the FileListCacheValue contains lots of values:

{code}
09:29:22,673 TRACE (jgroups-6,ISPN,gfernandes-29609:[]) [EntryFactoryImpl] Exists in context? null

09:29:22,673 TRACE (jgroups-6,ISPN,gfernandes-29609:[]) [EntryFactoryImpl] Retrieved from container 
MetadataImmortalCacheEntry{key=*|emails|-1, value=FileListCacheValue [filenames=[_3.si, _0.si, _1.cfe, _1.si, _2.si, _0.cfs, 
_2.cfs, _4.cfe, _3.cfe, segments_6, segments_5, _4.fdx, _4_Lucene50_0.doc, _4_Lucene50_0.tim, _1.cfs, _0.cfe, _2.cfe, _3.cfs,
 _4.cfs, _4.si]], metadata=MetaParamsInternalMetadata{params=MetaParams{length=0, metas=[]}}}

09:29:22,673 TRACE (jgroups-6,ISPN,gfernandes-29609:[]) [EntryFactoryImpl] Creating new entry for key *|emails|-1

09:29:22,673 TRACE (jgroups-6,ISPN,gfernandes-29609:[]) [EntryFactoryImpl] Updated context entry null -> 
ReadCommittedEntry(31f4a69f){key=*|emails|-1, value=FileListCacheValue [filenames=[_3.si, _0.si, _1.cfe, _1.si, _2.si, _0.cfs,
 _2.cfs, _4.cfe, _3.cfe, segments_6, segments_5, _4.fdx, _4_Lucene50_0.doc, _4_Lucene50_0.tim, _1.cfs, _0.cfe, _2.cfe, _3.cfs,
 _4.cfs, _4.si]], isCreated=false, isChanged=false, isRemoved=false, isValid=true, isExpired=false, skipLookup=false, 
metadata=MetaParamsInternalMetadata{params=MetaParams{length=0, metas=[]}}}

09:29:22,673 TRACE (jgroups-6,ISPN,gfernandes-29609:[]) [CallInterceptor] Invoking: ReadWriteKeyValueCommand
{code}


But those values are wiped when the functional command is executed:

{code}

09:29:22,674 TRACE (jgroups-6,ISPN,gfernandes-29609:[]) [ReadWriteKeyValueCommand] Execute read-write function on previous value 
null and previous metadata null

09:29:22,674 TRACE (jgroups-6,ISPN,gfernandes-29609:[]) [BaseDistributionInterceptor] Current topology 11, command topology 11

09:29:22,674 TRACE (jgroups-6,ISPN,gfernandes-29609:[]) [EntryWrappingInterceptor] About to commit entry ReadCommittedEntry(31f4a69f)
{key=*|emails|-1, value=FileListCacheValue [filenames=[]], isCreated=false, isChanged=true, isRemoved=false, isValid=true, isExpired=false,
 skipLookup=false, metadata=MetaParamsInternalMetadata{params=MetaParams{length=0, metas=[]}}}

09:29:22,674 TRACE (jgroups-6,ISPN,gfernandes-29609:[]) [DefaultDataContainer] Creating new ICE for writing. 
*Existing=MetadataImmortalCacheEntry{key=*|emails|-1, value=FileListCacheValue [filenames=[_3.si, _0.si, _1.cfe, _1.si, _2.si, _0.cfs,
 _2.cfs, _4.cfe, _3.cfe, segments_6, segments_5, _4.fdx, _4_Lucene50_0.doc, _4_Lucene50_0.tim, _1.cfs, _0.cfe, _2.cfe, _3.cfs, _4.cfs,
 _4.si]*], metadata=MetaParamsInternalMetadata{params=MetaParams{length=0, metas=[]}}}, metadata=MetaParamsInternalMetadata{params=
MetaParams{length=0, metas=[]}}, new value=FileListCacheValue [filenames=[]]

09:29:22,674 TRACE (jgroups-6,ISPN,gfernandes-29609:[]) [DefaultDataContainer] Store MetadataImmortalCacheEntry
{key=*|emails|-1, value=FileListCacheValue [*filenames=[]]*, metadata=MetaParamsInternalMetadata{params=MetaParams{length=0, metas=[]}}} in container

{code}







> LiveRunningTest random failures
> -------------------------------
>
>                 Key: ISPN-8168
>                 URL: https://issues.jboss.org/browse/ISPN-8168
>             Project: Infinispan
>          Issue Type: Bug
>          Components: Lucene Directory
>    Affects Versions: 9.1.0.Final
>            Reporter: Gustavo Fernandes
>            Assignee: Gustavo Fernandes
>              Labels: testsuite_stability
>
> The test fails very often with 
> {noformat}
> Caused by: org.apache.lucene.index.IndexNotFoundException: no segments* file found in InfinispanDirectory{indexName='emails'}: files: []
> 	at org.apache.lucene.index.SegmentInfos$FindSegmentsFile.run(SegmentInfos.java:726)
> 	at org.apache.lucene.index.SegmentInfos$FindSegmentsFile.run(SegmentInfos.java:683)
> {noformat}
> The cache entry that contains the list of files the lucene directory (FileListCacheValue) for some reason is empty, although the index is not. The missing value for FileListCacheValue causes the index reader to think the index is empty and thus the error



--
This message was sent by Atlassian JIRA
(v7.2.3#72005)


More information about the infinispan-issues mailing list