Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [cdt-dev] Problems with indexing/searching

Exactly my experience. See bugzilla 155324.

-sergey

On 10/12/06, James Hawkins <truiken@xxxxxxxxx> wrote:
On 10/12/06, Larry Streepy <larry@xxxxxxxxxxxxxx> wrote:
> I've updated to the latest versions of the CDT and I'm still having
> trouble with the indexer.
>
> Here's some environmental data:
> Running on CentOs (Linux variant)
>
> Eclipse version 3.2.1
> CDT version 3.1.1.2006092708
>
> My project is big, but not massive (roughly 250,000 lines of C++ code).
>
> First, I just couldn't seem to get it to index my code properly at all.
>   The indexer would run for less than a minute and emit no messages, so
> I thought things were just fine.
>
> Then I would try to do a navigate to a type (Navigate->Open Type) and
> I'd start typing in the name of *any* of the classes defined in my code
> and none of them are present.  The only things present seemed to be
> coming from some of my system includes, but nothing from my code base.
> I tweaked a lot of settings and then told the indexer to run and off it
> went (and has been going for more than an hour now).
>
> I looked in the eclipse .log file and I'm seeing several
> StackOverflowError messages being emitted, so something is definitely
> off with the indexer.  Here's a portion of one of the stack traces:
>
> java.lang.StackOverflowError
> org.eclipse.cdt.internal.core.pdom.db.ShortString.compare(ShortString.java:202)
> org.eclipse.cdt.internal.core.pdom.dom.PDOMNamedNode$NodeFinder.compare(PDOMNamedNode.java :85)
> org.eclipse.cdt.internal.core.pdom.db.BTree.accept(BTree.java:226)
> org.eclipse.cdt.internal.core.pdom.db.BTree.accept(BTree.java:229)
> org.eclipse.cdt.internal.core.pdom.db.BTree.accept(BTree.java :229)
> org.eclipse.cdt.internal.core.pdom.db.BTree.accept(BTree.java:195)
> org.eclipse.cdt.internal.core.pdom.dom.cpp.PDOMCPPLinkage.adaptBinding(PDOMCPPLinkage.java:292)
> org.eclipse.cdt.internal.core.pdom.dom.cpp.PDOMCPPLinkage.resolveBinding (PDOMCPPLinkage.java:316)
> org.eclipse.cdt.internal.core.pdom.PDOM.resolveBinding(PDOM.java:248)
> org.eclipse.cdt.internal.core.dom.parser.cpp.CPPScope.getBinding(CPPScope.java:134)
> org.eclipse.cdt.internal.core.dom.parser.cpp.CPPSemantics.lookup (CPPSemantics.java:1019)
> org.eclipse.cdt.internal.core.dom.parser.cpp.CPPSemantics.resolveBinding(CPPSemantics.java:613)
> org.eclipse.cdt.internal.core.dom.parser.cpp.CPPVisitor.createBinding(CPPVisitor.java :164)
> org.eclipse.cdt.internal.core.dom.parser.cpp.CPPASTName.resolveBinding(CPPASTName.java:52)
> org.eclipse.cdt.internal.core.pdom.dom.cpp.PDOMCPPNamespace.getBinding(PDOMCPPNamespace.java:146)
> org.eclipse.cdt.internal.core.dom.parser.cpp.CPPScope.getBinding (CPPScope.java:136)
> org.eclipse.cdt.internal.core.dom.parser.cpp.CPPVisitor.createBinding(CPPVisitor.java:350)
> org.eclipse.cdt.internal.core.dom.parser.cpp.CPPVisitor.createBinding(CPPVisitor.java:191)
> org.eclipse.cdt.internal.core.dom.parser.cpp.CPPASTName.resolveBinding(CPPASTName.java:52)
> org.eclipse.cdt.internal.core.pdom.dom.cpp.PDOMCPPNamespace.getBinding(PDOMCPPNamespace.java:146)
> org.eclipse.cdt.internal.core.dom.parser.cpp.CPPScope.getBinding (CPPScope.java:136)
> org.eclipse.cdt.internal.core.dom.parser.cpp.CPPVisitor.createBinding(CPPVisitor.java:350)
> org.eclipse.cdt.internal.core.dom.parser.cpp.CPPVisitor.createBinding(CPPVisitor.java:191)
> org.eclipse.cdt.internal.core.dom.parser.cpp.CPPASTName.resolveBinding(CPPASTName.java:52)
> org.eclipse.cdt.internal.core.pdom.dom.cpp.PDOMCPPNamespace.getBinding(PDOMCPPNamespace.java:146)
> org.eclipse.cdt.internal.core.dom.parser.cpp.CPPScope.getBinding (CPPScope.java:136)
> org.eclipse.cdt.internal.core.dom.parser.cpp.CPPVisitor.createBinding(CPPVisitor.java:350)
> org.eclipse.cdt.internal.core.dom.parser.cpp.CPPVisitor.createBinding(CPPVisitor.java:191)
> org.eclipse.cdt.internal.core.dom.parser.cpp.CPPASTName.resolveBinding(CPPASTName.java:52)
> ...
>
>
> There are two basic forms of stack overflow that have been occuring,
> here's a sample of the other:
>
> java.lang.StackOverflowError
> org.eclipse.cdt.internal.core.dom.parser.ASTNode.getTranslationUnit(ASTNode.java:108)
> org.eclipse.cdt.internal.core.dom.parser.ASTNode.getTranslationUnit(ASTNode.java :108)
> org.eclipse.cdt.internal.core.dom.parser.ASTNode.getTranslationUnit(ASTNode.java:108)
> org.eclipse.cdt.internal.core.dom.parser.ASTNode.getTranslationUnit(ASTNode.java:108)
> org.eclipse.cdt.internal.core.dom.parser.cpp.CPPScope.getBinding (CPPScope.java:128)
> org.eclipse.cdt.internal.core.dom.parser.cpp.CPPClassScope.getBinding(CPPClassScope.java:238)
> org.eclipse.cdt.internal.core.dom.parser.cpp.CPPSemantics.lookup(CPPSemantics.java:1019)
> org.eclipse.cdt.internal.core.dom.parser.cpp.CPPSemantics.postResolution(CPPSemantics.java:665)
> org.eclipse.cdt.internal.core.dom.parser.cpp.CPPSemantics.resolveBinding(CPPSemantics.java:629)
> org.eclipse.cdt.internal.core.dom.parser.cpp.CPPVisitor.createBinding (CPPVisitor.java:297)
> org.eclipse.cdt.internal.core.dom.parser.cpp.CPPVisitor.createBinding(CPPVisitor.java:191)
> org.eclipse.cdt.internal.core.dom.parser.cpp.CPPASTName.resolveBinding(CPPASTName.java:52)
> org.eclipse.cdt.internal.core.pdom.dom.cpp.PDOMCPPNamespace.getBinding(PDOMCPPNamespace.java:146)
> org.eclipse.cdt.internal.core.dom.parser.cpp.CPPVisitor.createBinding(CPPVisitor.java:350)
> org.eclipse.cdt.internal.core.dom.parser.cpp.CPPVisitor.createBinding (CPPVisitor.java:191)
> org.eclipse.cdt.internal.core.dom.parser.cpp.CPPASTName.resolveBinding(CPPASTName.java:52)
> org.eclipse.cdt.internal.core.pdom.dom.cpp.PDOMCPPNamespace.getBinding(PDOMCPPNamespace.java :146)
> org.eclipse.cdt.internal.core.dom.parser.cpp.CPPVisitor.createBinding(CPPVisitor.java:350)
> org.eclipse.cdt.internal.core.dom.parser.cpp.CPPVisitor.createBinding(CPPVisitor.java:191)
> org.eclipse.cdt.internal.core.dom.parser.cpp.CPPASTName.resolveBinding (CPPASTName.java:52)
> ...
>
>
> I have increased the heap size and thread stack size considerably (with
> -vmargs -Xmx2048M -Xss512M) so I don't think it's mu configuration.
>
> Any ideas on what might be wrong?  Has this behavior been seen before?
> I did search the archives and other blogs, but I didn't find anything
> directly relevant.
>

I run into this problem when trying to index the source of the Wine
code base.  The indexer either doesn't run at all, runs but stops
because of stack overflow, or it runs to completion (or so it says)
but only recognizes some (a very limited amount) of my information.

--
James Hawkins
_______________________________________________
cdt-dev mailing list
cdt-dev@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/cdt-dev


Back to the top