Bug 15262 - Background indexer crashed and recovered
Summary: Background indexer crashed and recovered
Status: RESOLVED WONTFIX
Alias: None
Product: JDT
Classification: Eclipse Project
Component: Core (show other bugs)
Version: 2.0   Edit
Hardware: PC Windows 2000
: P3 normal (vote)
Target Milestone: 3.0 RC4   Edit
Assignee: Kent Johnson CLA
QA Contact:
URL:
Whiteboard:
Keywords:
: 6455 15174 15339 15426 24682 (view as bug list)
Depends on:
Blocks:
 
Reported: 2002-05-04 11:49 EDT by Jerome Lanneluc CLA
Modified: 2004-06-24 06:00 EDT (History)
4 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Jerome Lanneluc CLA 2002-05-04 11:49:34 EDT
Build 20020502+

For info, I found the following in the console. This had no consequence as I 
was still able to do search query.

!ENTRY org.eclipse.jdt.core 4 4 Sat May 04 17:30:04 CEST 2002
!MESSAGE Background Indexer Crash Recovery
!STACK java.lang.ArrayIndexOutOfBoundsException
        at org.eclipse.jdt.internal.core.index.impl.WordEntry.mapRefs
(WordEntry.java:128)
        at org.eclipse.jdt.internal.core.index.impl.MergeFactory.mergeReferences
(MergeFactory.java:168)
        at org.eclipse.jdt.internal.core.index.impl.MergeFactory.merge
(MergeFactory.java:79)
        at org.eclipse.jdt.internal.core.index.impl.Index.merge(Index.java:236)
        at org.eclipse.jdt.internal.core.index.impl.Index.save(Index.java:341)
        at 
org.eclipse.jdt.internal.core.search.indexing.IndexManager.saveIndexes
(IndexManager.java:408)
        at org.eclipse.jdt.internal.core.search.indexing.IndexManager.notifyIdle
(IndexManager.java:313)
        at org.eclipse.jdt.internal.core.search.processing.JobManager.run
(JobManager.java:302)
        at java.lang.Thread.run(Thread.java:484)
java.lang.ArrayIndexOutOfBoundsException
        at org.eclipse.jdt.internal.core.index.impl.WordEntry.mapRefs
(WordEntry.java:128)
        at org.eclipse.jdt.internal.core.index.impl.MergeFactory.mergeReferences
(MergeFactory.java:168)
        at org.eclipse.jdt.internal.core.index.impl.MergeFactory.merge
(MergeFactory.java:79)
        at org.eclipse.jdt.internal.core.index.impl.Index.merge(Index.java:236)
        at org.eclipse.jdt.internal.core.index.impl.Index.save(Index.java:341)
        at 
org.eclipse.jdt.internal.core.search.indexing.IndexManager.saveIndexes
(IndexManager.java:408)
        at org.eclipse.jdt.internal.core.search.indexing.IndexManager.notifyIdle
(IndexManager.java:313)
        at org.eclipse.jdt.internal.core.search.processing.JobManager.run
(JobManager.java:302)
        at java.lang.Thread.run(Thread.java:484)
Comment 1 Jerome Lanneluc CLA 2002-05-06 12:42:01 EDT
Another instance but in a difference location:

!ENTRY org.eclipse.jdt.core 4 4 Mon May 06 18:32:13 CEST 2002
!MESSAGE Background Indexer Crash Recovery
!STACK java.lang.ArrayIndexOutOfBoundsException
        at org.eclipse.jdt.internal.core.index.impl.CodeByteStream.readUnary
(CodeByteStream.java:168)
        at org.eclipse.jdt.internal.core.index.impl.CodeByteStream.readGamma
(CodeByteStream.java:107)
        at 
org.eclipse.jdt.internal.core.index.impl.GammaCompressedIndexBlock.nextEntry
(GammaCompressedIndexBlock.java:90)
        at 
org.eclipse.jdt.internal.core.index.impl.BlocksIndexInput.moveToNextWordEntry
(BlocksIndexInput.java:176)
        at org.eclipse.jdt.internal.core.index.impl.MergeFactory.mergeReferences
(MergeFactory.java:170)
        at org.eclipse.jdt.internal.core.index.impl.MergeFactory.merge
(MergeFactory.java:79)
        at org.eclipse.jdt.internal.core.index.impl.Index.merge(Index.java:236)
        at org.eclipse.jdt.internal.core.index.impl.Index.save(Index.java:341)
        at 
org.eclipse.jdt.internal.core.search.indexing.IndexManager.saveIndexes
(IndexManager.java:408)
        at org.eclipse.jdt.internal.core.search.indexing.IndexManager.notifyIdle
(IndexManager.java:313)
        at org.eclipse.jdt.internal.core.search.processing.JobManager.run
(JobManager.java:302)
        at java.lang.Thread.run(Thread.java:484)
java.lang.ArrayIndexOutOfBoundsException
        at org.eclipse.jdt.internal.core.index.impl.CodeByteStream.readUnary
(CodeByteStream.java:168)
        at org.eclipse.jdt.internal.core.index.impl.CodeByteStream.readGamma
(CodeByteStream.java:107)
        at 
org.eclipse.jdt.internal.core.index.impl.GammaCompressedIndexBlock.nextEntry
(GammaCompressedIndexBlock.java:90)
        at 
org.eclipse.jdt.internal.core.index.impl.BlocksIndexInput.moveToNextWordEntry
(BlocksIndexInput.java:176)
        at org.eclipse.jdt.internal.core.index.impl.MergeFactory.mergeReferences
(MergeFactory.java:170)
        at org.eclipse.jdt.internal.core.index.impl.MergeFactory.merge
(MergeFactory.java:79)
        at org.eclipse.jdt.internal.core.index.impl.Index.merge(Index.java:236)
        at org.eclipse.jdt.internal.core.index.impl.Index.save(Index.java:341)
        at 
org.eclipse.jdt.internal.core.search.indexing.IndexManager.saveIndexes
(IndexManager.java:408)
        at org.eclipse.jdt.internal.core.search.indexing.IndexManager.notifyIdle
(IndexManager.java:313)
        at org.eclipse.jdt.internal.core.search.processing.JobManager.run
(JobManager.java:302)
        at java.lang.Thread.run(Thread.java:484)
Comment 2 Kent Johnson CLA 2002-05-08 14:10:02 EDT
*** Bug 15426 has been marked as a duplicate of this bug. ***
Comment 3 Kent Johnson CLA 2002-05-08 15:01:37 EDT
*** Bug 15339 has been marked as a duplicate of this bug. ***
Comment 4 Kent Johnson CLA 2002-05-08 15:05:31 EDT
*** Bug 15174 has been marked as a duplicate of this bug. ***
Comment 5 Kent Johnson CLA 2002-05-09 11:49:07 EDT
No luck trying to reproduce so far... I've tried changing the installed JRE & 
replaced jdt.core with every version in the repository... I've saved the 
workspace afterwards but nothing seems to trigger the walkback yet.
Comment 6 Mariano Kamp CLA 2002-05-13 09:55:13 EDT
This bug seems to be related to bug 13988.
Comment 7 Philipe Mulet CLA 2002-06-11 08:33:29 EDT
Defer
Comment 8 Philipe Mulet CLA 2002-07-25 06:59:42 EDT
Reopening
Comment 9 Philipe Mulet CLA 2002-07-25 07:01:00 EDT
Clearing resolution
Comment 10 Philipe Mulet CLA 2002-07-25 07:26:33 EDT
Should be addressed with new implementation...
Comment 11 Kent Johnson CLA 2002-11-27 17:27:01 EST
*** Bug 24682 has been marked as a duplicate of this bug. ***
Comment 12 Kent Johnson CLA 2002-11-27 17:30:45 EST
*** Bug 6455 has been marked as a duplicate of this bug. ***
Comment 13 Rafael Chaves CLA 2002-12-09 10:26:04 EST
Version: 2.1
Build id: 200212041234

I was getting a similar error being logged every 12-13 seconds in my log, but 
with a different stack trace:

java.lang.ArrayIndexOutOfBoundsException: 8192
at org.eclipse.jdt.internal.core.index.impl.Field.putInt2(Field.java(Compiled 
Code))
at org.eclipse.jdt.internal.core.index.impl.FileListBlock.flush
(FileListBlock.java:57)
at org.eclipse.jdt.internal.core.index.impl.BlocksIndexOutput.flushFiles
(BlocksIndexOutput.java:126)
at org.eclipse.jdt.internal.core.index.impl.BlocksIndexOutput.addFile
(BlocksIndexOutput.java(Compiled Code))
at org.eclipse.jdt.internal.core.index.impl.MergeFactory.mergeFiles
(MergeFactory.java(Compiled Code))
at org.eclipse.jdt.internal.core.index.impl.MergeFactory.merge
(MergeFactory.java:84)
at org.eclipse.jdt.internal.core.index.impl.Index.merge(Index.java:249)
at org.eclipse.jdt.internal.core.search.indexing.AddJarFileToIndex.execute
(AddJarFileToIndex.java(Compiled Code))
at org.eclipse.jdt.internal.core.search.indexing.AddJarFileToIndex.execute
(AddJarFileToIndex.java(Compiled Code))
at org.eclipse.jdt.internal.core.search.processing.JobManager.run
(JobManager.java:333)
at java.lang.Thread.run(Thread.java:512)
Comment 14 John Arthorne CLA 2003-01-13 14:37:53 EST
This was also reported on the eclipse-dev mailing list over the holidays.  The
user was on M4, and the stack trace was:

java.lang.ArrayIndexOutOfBoundsException: 8192
     at org.eclipse.jdt.internal.core.index.impl.Field.putInt2(Field.java:313)
     at
org.eclipse.jdt.internal.core.index.impl.FileListBlock.flush(FileListBlock.java:57)
     at
org.eclipse.jdt.internal.core.index.impl.BlocksIndexOutput.flushFiles(BlocksIndexOutput.java:126)
     at
org.eclipse.jdt.internal.core.index.impl.BlocksIndexOutput.addFile(BlocksIndexOutput.java:66)
     at
org.eclipse.jdt.internal.core.index.impl.MergeFactory.mergeFiles(MergeFactory.java:142)
     at
org.eclipse.jdt.internal.core.index.impl.MergeFactory.merge(MergeFactory.java:84)
     at org.eclipse.jdt.internal.core.index.impl.Index.merge(Index.java:249)
     at org.eclipse.jdt.internal.core.index.impl.Index.save(Index.java:354)
     at
org.eclipse.jdt.internal.core.search.indexing.SaveIndex.execute(SaveIndex.java:47)
     at
org.eclipse.jdt.internal.core.search.processing.JobManager.run(JobManager.java:333)
     at java.lang.Thread.run(Thread.java:536)
Comment 15 Philipe Mulet CLA 2003-01-28 10:10:30 EST
Current behavior is acceptable (with crash recovery). Rewrite of the indexing 
infrastructure will occur for 2.2
Comment 16 Philipe Mulet CLA 2004-06-24 05:55:43 EDT
Index infrastructure got rewritten for 3.0. Still a few cases seem to occur 
where crash recovery is required, but far less than with previous 
implementation.
Comment 17 Philipe Mulet CLA 2004-06-24 05:59:37 EDT
reopen
Comment 18 Philipe Mulet CLA 2004-06-24 06:00:49 EDT
Closing since new infrastructure got implemented.
Subsequent issues are to be logged in new defects (such as bug 68189).