IDEA VERY VERY slow handling large classes

This issue might have been raised before, so please bear
with me if so.

In a project I work with there are some very large classes
(around 5000 lines long) which are generated as a result
of compiling MIB files to java.

IDEA is very very slow operating on these classes, although all they have in them are simple hashtable
initialisation. Cut/Paste operation take in the order
of 30 secs to complete.

These, admitadly are exceptional cases, however the performance degradation is worrying.


9 comments
Comment actions Permalink

There is an 8000 lines class in the project I'm working on (don't ask! :), and every time I open it (which happens only by mistake :) I have to wait tens of seconds for IDEA to become responsive. After that, I just close the file as quick as possible.

The sad part is that I don't even think of using IDEA to refactor that class. It's just too slow on such large files.

You can vote for http://www.intellij.net/tracker/idea/viewSCR?publicId=30752 if you'd be willing to sacrifice some of the fancy stuff in order to gain some speed.

Andrei

0
Comment actions Permalink

Andrei Oprea wrote:

There is an 8000 lines class in the project I'm working on (don't ask! :), and every time I open it (which happens only by mistake :) I have to wait tens of seconds for IDEA to become responsive. After that, I just close the file as quick as possible.

The sad part is that I don't even think of using IDEA to refactor that class. It's just too slow on such large files.

You can vote for http://www.intellij.net/tracker/idea/viewSCR?publicId=30752 if you'd be willing to sacrifice some of the fancy stuff in order to gain some speed.

Andrei

There are definitely some slow algorithms in IDEA's handling of large
elements. See
http://www.intellij.net/tracker/idea/viewSCR?publicId=29641 for an example.

--
Rob Harwood
Software Developer
JetBrains Inc.
http://www.jetbrains.com
"Develop with pleasure!"

0
Comment actions Permalink

Sounds like a great candidate for performance enhacements because I can't imagine that fixing issues like that won't speed the editing of pretty much all java files.

Why isn't that marked as critical for Pallada?

R

0
Comment actions Permalink

One word - REFACTOR. Isn't that the point of IntelliJ. Extra
Superclass ... Pull methods into a helper class.

I have a class that is 1800 lines long (profuse comments and generous
spacing). I am going to split it into a main class and 2 or 3 helper
classes. What time I spend refactoring the code will be more than worth
it in the long-run.

Norris Shelton
Sun Certified Java Programmer




Andrei Oprea wrote:

>There is an 8000 lines class in the project I'm working on (don't ask! :), and every time I open it (which happens only by mistake :) I have to wait tens of seconds for IDEA to become responsive. After that, I just close the file as quick as possible.
>
>The sad part is that I don't even think of using IDEA to refactor that class. It's just too slow on such large files.
>
>You can vote for http://www.intellij.net/tracker/idea/viewSCR?publicId=30752 if you'd be willing to sacrifice some of the fancy stuff in order to gain some speed.
>
>Andrei

>

0
Comment actions Permalink

That's not the point. Some of us work with legacy (usually production) code
that we cannot touch or can only make bug fixes. But if we want to look at
that code, it takes forever. It takes a minor act of congress where I work
to change any code let alone production code that 'works' but is 'just' too
long.

"Norris Shelton" <i.hate.spam@yahoo.com> wrote in message
news:40AE06C6.9070208@yahoo.com...

One word - REFACTOR. Isn't that the point of IntelliJ. Extra
Superclass ... Pull methods into a helper class.

>

I have a class that is 1800 lines long (profuse comments and generous
spacing). I am going to split it into a main class and 2 or 3 helper
classes. What time I spend refactoring the code will be more than worth
it in the long-run.

>

Norris Shelton
Sun Certified Java Programmer

>
>
>
>

Andrei Oprea wrote:

>

>There is an 8000 lines class in the project I'm working on (don't ask!

:), and every time I open it (which happens only by mistake :) I have to
wait tens of seconds for IDEA to become responsive. After that, I just close
the file as quick as possible.

>
>The sad part is that I don't even think of using IDEA to refactor that

class. It's just too slow on such large files.

>
>You can vote for

http://www.intellij.net/tracker/idea/viewSCR?publicId=30752 if you'd be
willing to sacrifice some of the fancy stuff in order to gain some speed.

>
>Andrei
>
>



0
Comment actions Permalink

Thanks for the advise, but I think you're missing the point. I avoid opening that file in IDEA because of the speed problems (right now I have to chose between textpad and WSAD). Refactoring that class (or any big classes for that matter) is definitely not IntelliJ's strong point, IDEA would just choke on it.

As for why the class ended up that big (and keeps staying that way for now)... well, that's another story, one that you might not want to hear. And I definitely don't wanna tell it. ;)

Regards,
Andrei

NS> One word - REFACTOR. Isn't that the point of IntelliJ. Extra
NS> Superclass ... Pull methods into a helper class.
NS>

0
Comment actions Permalink

Robert S. Sfeir wrote:

Sounds like a great candidate for performance enhacements because I can't imagine that fixing issues like that won't speed the editing of pretty much all java files.

Why isn't that marked as critical for Pallada?

R

I've posted a new catch-all issue to tracker. Vote and/or comment if you
think this is a critical feature (I do myself, but don't work on that
portion of IDEA). See
http://www.intellij.net/tracker/idea/viewSCR?publicId=33061

--
Rob Harwood
Software Developer
JetBrains Inc.
http://www.jetbrains.com
"Develop with pleasure!"

0
Comment actions Permalink

:-D

Norris Shelton
Sun Certified Java Programmer




Andrei Oprea wrote:

>Thanks for the advise, but I think you're missing the point. I avoid opening that file in IDEA because of the speed problems (right now I have to chose between textpad and WSAD). Refactoring that class (or any big classes for that matter) is definitely not IntelliJ's strong point, IDEA would just choke on it.
>
>As for why the class ended up that big (and keeps staying that way for now)... well, that's another story, one that you might not want to hear. And I definitely don't wanna tell it. ;)
>
>Regards,
>Andrei
>
>NS> One word - REFACTOR. Isn't that the point of IntelliJ. Extra
>NS> Superclass ... Pull methods into a helper class.
>NS>
>

>

0
Comment actions Permalink

Norris, if you look at the bug that Rob Harwood posted, it is 300 some lines of code with ONE thing in it. Not sure how you would refactor that. It is apparent that the issue resides and is duplicable in smaller files also.

R

0

Please sign in to leave a comment.