Bug 528460 - AssertionError in Database.getChunk
Summary: AssertionError in Database.getChunk
Status: NEW
Alias: None
Product: CDT
Classification: Tools
Component: cdt-indexer (show other bugs)
Version: Next   Edit
Hardware: All All
: P3 normal (vote)
Target Milestone: ---   Edit
Assignee: Project Inbox CLA
QA Contact: Jonah Graham CLA
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2017-12-12 00:37 EST by EPP Error Reports CLA
Modified: 2020-09-04 15:22 EDT (History)
2 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description EPP Error Reports CLA 2017-12-12 00:37:59 EST
The following problem was reported via the automated error reporting:

Message: Unhandled event loop exception
java.lang.AssertionError: null
    at org.eclipse.cdt.internal.core.pdom.db.Database.getChunk(Database.java:295)
    at org.eclipse.cdt.internal.core.pdom.db.Database.getRecPtr(Database.java:513)
    at org.eclipse.cdt.internal.core.pdom.db.BTree.accept(BTree.java:531)
    at org.eclipse.cdt.internal.core.pdom.dom.PDOMLinkage.getBindingsViaCache(PDOMLinkage.java:408)
    at org.eclipse.cdt.internal.core.pdom.PDOM.findBindings(PDOM.java:1389)
    at org.eclipse.cdt.internal.core.pdom.PDOM.findBindings(PDOM.java:1379)
    at org.eclipse.cdt.internal.core.index.CIndex.findBindings(CIndex.java:652)
    at org.eclipse.cdt.internal.core.index.CIndex.findBindings(CIndex.java:504)
    at org.eclipse.cdt.internal.core.dom.parser.c.CScope.getBinding(CScope.java:285)
    at org.eclipse.cdt.internal.core.dom.parser.c.CVisitor.lookup(CVisitor.java:1061)
    at org.eclipse.cdt.internal.core.dom.parser.c.CVisitor.resolveBinding(CVisitor.java:846)
    at org.eclipse.cdt.internal.core.dom.parser.c.CVisitor.createBinding(CVisitor.java:468)
    at org.eclipse.cdt.internal.core.dom.parser.c.CASTName.resolveBinding(CASTName.java:63)
    at org.eclipse.cdt.internal.core.dom.parser.c.CVisitor.createBaseType(CVisitor.java:1367)
    at org.eclipse.cdt.internal.core.dom.parser.c.CVisitor.createType(CVisitor.java:1379)
    at org.eclipse.cdt.internal.core.dom.parser.c.CVisitor.createType(CVisitor.java:1224)
    at org.eclipse.cdt.internal.core.dom.parser.c.CParameter.getType(CParameter.java:57)
    at org.eclipse.cdt.internal.ui.text.contentassist.ParameterGuesser.getType(ParameterGuesser.java:139)
    at org.eclipse.cdt.internal.ui.text.contentassist.ParameterGuesser.createVariable(ParameterGuesser.java:146)
    at org.eclipse.cdt.internal.ui.text.contentassist.ParameterGuesser.evaluateVisibleMatches(ParameterGuesser.java:121)
    at org.eclipse.cdt.internal.ui.text.contentassist.ParameterGuesser.parameterProposals(ParameterGuesser.java:295)
    at org.eclipse.cdt.internal.ui.text.contentassist.ParameterGuessingProposal.guessParameters(ParameterGuessingProposal.java:292)
    at org.eclipse.cdt.internal.ui.text.contentassist.ParameterGuessingProposal$2.runOnAST(ParameterGuessingProposal.java:263)
    at org.eclipse.cdt.internal.core.model.ASTCache.runOnAST(ASTCache.java:219)
    at org.eclipse.cdt.internal.ui.editor.ASTProvider.runOnAST(ASTProvider.java:336)
    at org.eclipse.cdt.internal.ui.text.contentassist.ParameterGuessingProposal.generateParameterGuesses(ParameterGuessingProposal.java:256)
    at org.eclipse.cdt.internal.ui.text.contentassist.ParameterGuessingProposal.apply(ParameterGuessingProposal.java:176)
    at org.eclipse.cdt.internal.ui.text.contentassist.CCompletionProposal.apply(CCompletionProposal.java:525)
    at org.eclipse.jface.text.contentassist.CompletionProposalPopup.insertProposal(CompletionProposalPopup.java:982)
    at org.eclipse.jface.text.contentassist.CompletionProposalPopup.insertSelectedProposalWithMask(CompletionProposalPopup.java:931)
    at org.eclipse.jface.text.contentassist.CompletionProposalPopup.access$11(CompletionProposalPopup.java:927)
    at org.eclipse.jface.text.contentassist.CompletionProposalPopup$5.widgetDefaultSelected(CompletionProposalPopup.java:672)
    at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:120)
    at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:86)



Bundles:
| org.eclipse.cdt.core | 6.3.1.201709131603 | 6.3.1.201709131603 |
| org.eclipse.cdt.ui | 6.2.0.201709131603 | 6.2.0.201709131603 |
| org.eclipse.jface.text | 3.12.0.v20170523-1043 | 3.12.0.v20170523-1043 |
| org.eclipse.swt | 3.106.1.v20170926-0519 | 3.106.1.v20170926-0519 |

Operating Systems:
| Windows | 10.0.0 | 10.0.0 |


The above information is a snapshot of the collected data. Visit https://dev.eclipse.org/recommenders/committers/aeri/v2/#!/problems/5a28543ee4b02aaf8b226051 for the latest data.

Thank you for your assistance.
 Your friendly error-reports-inbox.


Created on behalf of zeratul976@xxxxxx.xxx
Comment 1 Nathan Ridge CLA 2017-12-12 00:39:25 EST
The assertion indicates that the index lock is not being held, but ParameterGuessingProposal is using the ASTProvider mechanism to access the AST and index, which ensures the index lock is held.

Ideas about how this could be happening are welcome.

(A reproducing testcase is also welcome, though I realize that's probably a long shot.)