Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.
Bug 352010 - cdt editor hangs when trying to autocomplete
Summary: cdt editor hangs when trying to autocomplete
Status: CLOSED DUPLICATE of bug 126698
Alias: None
Product: CDT
Classification: Tools
Component: cdt-editor (show other bugs)
Version: 8.0   Edit
Hardware: Macintosh Mac OS X - Carbon (unsup.)
: P3 critical (vote)
Target Milestone: ---   Edit
Assignee: Project Inbox CLA
QA Contact: Anton Leherbauer CLA
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2011-07-13 14:09 EDT by Christopher Friedt CLA
Modified: 2011-07-15 02:37 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 Christopher Friedt CLA 2011-07-13 14:09:57 EDT
Build Identifier: 

Firstly, problem exists for every platform I've ever used eclipse on (PC, Mac), and with every operating system I've ever used it on (Linux, OS X), and has persisted for as long as I've been using Eclipse (a long time).

The description of the bug is as follows:

For very large software projects (e.g. the linux kernel), when defining a global data structure or variable of some kind with an initializer (which is very, very common), the autocompletion simply hangs infinitely due to the sheer vastness of the number of global symbols the autocompletion handler needs to take into account.

Example (outside of any blocks, i.e. in the global context): 

struct irrelevant {
int field;
};

struct irrelevant x = {
.[... wait a second for autocompletion to start, and never return]


I have to stress that this only works for really large software projects, and it only fails for them too. Regardless of the size of the project, It's still a problem. 

Eclipse could be hanging for 15 minutes without any UI responsiveness, and I'm forced to just kill the process and restart eclipse.

Now, if one types the word "field" before the autocompletion handler has time to begin, there is no problem at all (but then again, autocompletion is completely sidestepped).

My suggestion is really to just forget about autocompletion in the global context. 

Even with small projects, autocompletion in the global scope (in C) usually comes up with dozens of completely unrelated and useless values. If it was disabled for the global scope, at least it wouldn't crash eclipse.

This could be related to bug #345138 or #345970, but since it's still present in what I would imagine is the latest version of eclipse, it's obviously never been resolved.

I would imagine that behaviour is better in C++ due to namespaces, but again, if anything is in the global scope (i.e. the default namespace), then it's probably just as poorly behaved.

Reproducible: Always

Steps to Reproduce:
1. follow
2. the steps
3. in my bug report
Comment 1 Christopher Friedt CLA 2011-07-13 14:17:24 EDT
Incidentally, I'm using Eclipse Helios, build id M20110210-1200.

PS: Hi Doug, how're you doing?
Comment 2 Anton Leherbauer CLA 2011-07-15 02:37:04 EDT
Note that you can disable auto completion on '.' in the preferences.

*** This bug has been marked as a duplicate of bug 126698 ***