Build 5706 and CVS offline issues

The support for using IDEA with CVS offline is much better in this build. The biggest imrpovement is the change indicators are now mostly working. However, there is still a problem. When I am editing a file and IDEA first asks me if I want to work offline and I accidentally answer "no", then the change indicators do not appear and nothing I do can get them to come back.

Hopefully this will be fixed prior to release?

25 comments

Hello Ian,

IB> The support for using IDEA with CVS offline is much better in this
IB> build. The biggest imrpovement is the change indicators are now
IB> mostly working.

To tell the truth, there have been exactly zero changes to CVS offline support
functionality between 5661 and 5706. :)

IB> However, there is still a problem. When I am editing
IB> a file and IDEA first asks me if I want to work offline and I
IB> accidentally answer "no", then the change indicators do not appear
IB> and nothing I do can get them to come back.
IB>
IB> Hopefully this will be fixed prior to release?

I'm afraid not. Maybe in a bugfix update, but it's not a simple fix and we
don't consider it critical enough to be made at the current stabilization
phase.

--
Dmitry Jemerov
Software Developer
http://www.jetbrains.com/
"Develop with Pleasure!"


0

Just a sanity check... restarting IDEA does make them come back doesn't
it? I hope so...

N.

Dmitry Jemerov wrote:

Hello Ian,

IB> The support for using IDEA with CVS offline is much better in this
IB> build. The biggest imrpovement is the change indicators are now
IB> mostly working.
To tell the truth, there have been exactly zero changes to CVS offline
support functionality between 5661 and 5706. :)

IB> However, there is still a problem. When I am editing
IB> a file and IDEA first asks me if I want to work offline and I
IB> accidentally answer "no", then the change indicators do not appear
IB> and nothing I do can get them to come back.
IB> IB> Hopefully this will be fixed prior to release?

I'm afraid not. Maybe in a bugfix update, but it's not a simple fix and
we don't consider it critical enough to be made at the current
stabilization phase.

0

Hello


IB> The support for using IDEA with CVS offline is
much better in this
IB> build. The biggest imrpovement is the change
indicators are now
IB> mostly working.

To tell the truth, there have been exactly zero
changes to CVS offline support
functionality between 5661 and 5706. :)

>

Hmmm. I have been anxiously checking each EAP for the change indicators to be fixed and 5706 was the first build that it worked for me. But maybe I was doing something different wrong in 5561 or 5692. At least it's mostly working for me now :)

IB> However, there is still a problem. When I am
editing
IB> a file and IDEA first asks me if I want to work
offline and I
IB> accidentally answer "no", then the change
indicators do not appear
IB> and nothing I do can get them to come back.
IB>
IB> Hopefully this will be fixed prior to release?

I'm afraid not. Maybe in a bugfix update, but it's
not a simple fix and we
don't consider it critical enough to be made at the
current stabilization
phase.


I can understand that thinking but am still a little disappointed that a feature that worked well in 5.1.2 is now not quite right in a later version - it seems like a backwards step. It's amazing how much you come to depend on that change indicators. I don't know how I ever got by without them.

0

Just a sanity check... restarting IDEA does make them
come back doesn't
it? I hope so...


I just tried this - and no they don't! :( :(
The only way to get them back is to re-sync with the CVS repository. Ok, now I am really disappointed. This has just turned into a show stopper for us which will likely prevent those of us with laptops upgrading :(

0

Urgh! When you say re-sync, what do you mean by that?

Cheers,
N.

Ian Booth wrote:
>> Just a sanity check... restarting IDEA does make them
>> come back doesn't
>> it? I hope so...
>>


I just tried this - and no they don't! :( :(
The only way to get them back is to re-sync with the CVS repository. Ok, now I am really disappointed. This has just turned into a show stopper for us which will likely prevent those of us with laptops upgrading :(

0

I can understand that thinking but am still a little disappointed
that a feature that worked well in 5.1.2 is now not quite right in a
later version - it seems like a backwards step. It's amazing how much
you come to depend on that change indicators. I don't know how I ever
got by without them.

+100. It was working great in 5.1, but these days I seem to spend half
my time waiting for IDEA to come back to life after I switch between
files while it's recalculating change markers. Also no more 'quick
diffs' from the Changes toolwindow like we got when it first came in.
And I hate waiting. :(

Granted, things have got better since they got worse in recent EAPs, but
not back up to the original standard - it's such a pity to have such
regression bugs in a core area of what is otherwise a great new version
of the product.

I understand the pressure to get the new version out, but I think if
it's not going to be tackled before release, we should at least be
reassured that it's a hi-pri for the next point release; that JetBrains
acknowledge that there are still issues with the area and that it really
is just not good enough yet.

N.

0

Hello Nathan,

>> I can understand that thinking but am still a little disappointed
>> that a feature that worked well in 5.1.2 is now not quite right in a
>> later version - it seems like a backwards step. It's amazing how much
>> you come to depend on that change indicators. I don't know how I ever
>> got by without them.
>>
NB> +100. It was working great in 5.1, but these days I seem to spend
NB> half my time waiting for IDEA to come back to life after I switch
NB> between files while it's recalculating change markers.

Sorry, but are you sure you're correctly diagnosing the problem? Whether
you're offline or not, change marker update should completely happen in the
background and should not block the UI. If you do see UI blocking when you're
switching between files, could you please take a CPU snapshot and attach
it to a JIRA request?

NB> Granted, things have got better since they got worse in recent EAPs,
NB> but not back up to the original standard - it's such a pity to have
NB> such regression bugs in a core area of what is otherwise a great new
NB> version of the product.
NB>
NB> I understand the pressure to get the new version out, but I think if
NB> it's not going to be tackled before release, we should at least be
NB> reassured that it's a hi-pri for the next point release; that
NB> JetBrains acknowledge that there are still issues with the area and
NB> that it really is just not good enough yet.

It is indeed possible to improve the functionality in this area: we can use
the local history as the source of the original content when the server is
not available. We'll investigate whether we'll be able to include this change
in a bugfix update (6.0.x) or it will have to wait until the next release
(6.5).

--
Dmitry Jemerov
Software Developer
http://www.jetbrains.com/
"Develop with Pleasure!"


0


I dial into the office and do a cvs update - this appears to cause the change indicators to re-appear. I think they will disappear again if I then disconnect and am not careful about choosing to work offline or not. I don't have a full explanation of all the scenarios but it does appear to be hit and miss.

Cheers,
N.

Ian Booth wrote:
>> Just a sanity check... restarting IDEA does make
them
>> come back doesn't
>> it? I hope so...
>>


I just tried this - and no they don't! :( :(
The only way to get them back is to re-sync with

the CVS repository. Ok, now I am really disappointed.
This has just turned into a show stopper for us which
will likely prevent those of us with laptops
upgrading :(Urgh! When you say re-sync, what do you mean by that?

0

Thanks for the reply Dmitry.

Dmitry Jemerov wrote:

Hello Nathan,

NB> +100. It was working great in 5.1, but these days I seem to spend
NB> half my time waiting for IDEA to come back to life after I switch
NB> between files while it's recalculating change markers.
Sorry, but are you sure you're correctly diagnosing the problem? Whether
you're offline or not, change marker update should completely happen in
the background and should not block the UI. If you do see UI blocking
when you're switching between files, could you please take a CPU
snapshot and attach it to a JIRA request?

No problem, will do.

It is indeed possible to improve the functionality in this area: we can
use the local history as the source of the original content when the
server is not available. We'll investigate whether we'll be able to
include this change in a bugfix update (6.0.x) or it will have to wait
until the next release (6.5).

Isn't this how it used to be done in 5.1?

Cheers,
N.

0

Hi Dmitry

NB> +100. It was working great in 5.1, but these
days I seem to spend
NB> half my time waiting for IDEA to come back to
life after I switch
NB> between files while it's recalculating change
markers.

Sorry, but are you sure you're correctly diagnosing
the problem? Whether
you're offline or not, change marker update should
completely happen in the
background and should not block the UI. If you do see
UI blocking when you're
switching between files, could you please take a CPU
snapshot and attach
it to a JIRA request?


I think what Nathan means is not that IDEA blocks the UI. It's just that it seems to take a long time for the background thread to make the change indicators appear. With 5.1.2, the appearance of the change indicators was instant as soon as any change was made. I realise that the radical change in how this was implemented was due to the new Change List functionality etc, but it is disappointing that such a useful feature was partially broken in the process. This is not what I have come to expect from this product - it just seems like the usual high standard has dropped in this case and I am not sure why? I do hope that a fix makes the 6.0.x release.

NB> Granted, things have got better since they got
worse in recent EAPs,
NB> but not back up to the original standard - it's
such a pity to have
NB> such regression bugs in a core area of what is
otherwise a great new
NB> version of the product.
NB>
NB> I understand the pressure to get the new version
out, but I think if
NB> it's not going to be tackled before release, we
should at least be
NB> reassured that it's a hi-pri for the next point
release; that
NB> JetBrains acknowledge that there are still issues
with the area and
NB> that it really is just not good enough yet.

It is indeed possible to improve the functionality in
this area: we can use
the local history as the source of the original
content when the server is
not available. We'll investigate whether we'll be
able to include this change
in a bugfix update (6.0.x) or it will have to wait
until the next release
(6.5).

--
Dmitry Jemerov
Software Developer
http://www.jetbrains.com/
"Develop with Pleasure!"

>

0

Nathan Brown wrote:

Dmitry Jemerov wrote:

>> It is indeed possible to improve the functionality in this area: we
>> can use the local history as the source of the original content when
>> the server is not available. We'll investigate whether we'll be able
>> to include this change in a bugfix update (6.0.x) or it will have to
>> wait until the next release (6.5).
>

Isn't this how it used to be done in 5.1?


I think so - certainly, deleting local history caused the change markers
to disappear (but they were only a 'cvs diff' away in that (for me,
infrequent) situation). I've never understood why it was changed.
Jetbrains, please bring it back!

I agree with your comment in an earlier post about waiting. It's
frustrating that the change markers now take ages to appear. I've never
timed it before, but I just made some random tests and found it takes 25
to 30 seconds for the change markers to appear for me (file size doesn't
appear to make much difference). The cvs server's at the other end of a
low bandwidth connection.

--
Mark Scott
mark@codebrewer.com

0

Hello Nathan,

>> It is indeed possible to improve the functionality in this area: we
>> can use the local history as the source of the original content when
>> the server is not available. We'll investigate whether we'll be able
>> to include this change in a bugfix update (6.0.x) or it will have to
>> wait until the next release (6.5).
>>
NB> Isn't this how it used to be done in 5.1?

It is. The good news is that restoring this logic turned out to be very simple,
so the change will be included in 6.0 final.

--
Dmitry Jemerov
Software Developer
http://www.jetbrains.com/
"Develop with Pleasure!"


0

Dmitry Jemerov wrote:

Hello Nathan,

>>> It is indeed possible to improve the functionality in this area: we
>>> can use the local history as the source of the original content when
>>> the server is not available. We'll investigate whether we'll be able
>>> to include this change in a bugfix update (6.0.x) or it will have to
>>> wait until the next release (6.5).
>>>

NB> Isn't this how it used to be done in 5.1?

It is. The good news is that restoring this logic turned out to be very
simple, so the change will be included in 6.0 final.


That sounds great, Dmitry! How do you plan to turn this on? Can I vote
for it being an option to use local history for change markers *even
when cvs is marked online*? That way, time-consuming interaction with
the cvs server can be avoided unless explicitly requested, without
having to toggle the server's online/offline status.

--
Mark Scott
mark@codebrewer.com

0


That sounds great, Dmitry! How do you plan to turn
this on? Can I vote
for it being an option to use local history for
change markers *even
when cvs is marked online*? That way, time-consuming
interaction with
the cvs server can be avoided unless explicitly
requested, without
having to toggle the server's online/offline status.


+10
I really dislike the new implementation, especially the fact that when online, there is this big delay before the change markers become active or even sometimes they disappear and then reappear after a delay. I would love to have the "old" 5.1 behaviour back where everything is instant.

0

Hello Mark,

>>>> It is indeed possible to improve the functionality in this area: we
>>>> can use the local history as the source of the original content
>>>> when the server is not available. We'll investigate whether we'll
>>>> be able to include this change in a bugfix update (6.0.x) or it
>>>> will have to wait until the next release (6.5).
>>>>
>> NB> Isn't this how it used to be done in 5.1?
>>
>> It is. The good news is that restoring this logic turned out to be
>> very simple, so the change will be included in 6.0 final.
>>
MS> That sounds great, Dmitry! How do you plan to turn this on? Can I
MS> vote for it being an option to use local history for change markers
MS> even when cvs is marked online? That way, time-consuming
MS> interaction with the cvs server can be avoided unless explicitly
MS> requested, without having to toggle the server's online/offline
MS> status.

Basically, 5.1 behavior has been restored: a server request is sent only
if the matching revision was not found in the local history.

--
Dmitry Jemerov
Software Developer
http://www.jetbrains.com/
"Develop with Pleasure!"


0

To paraphrase the legendary Homer Simpson:

"Woohoo!"

N.

Dmitry Jemerov wrote:

Hello Nathan,

>>> It is indeed possible to improve the functionality in this area: we
>>> can use the local history as the source of the original content when
>>> the server is not available. We'll investigate whether we'll be able
>>> to include this change in a bugfix update (6.0.x) or it will have to
>>> wait until the next release (6.5).
>>>

NB> Isn't this how it used to be done in 5.1?

It is. The good news is that restoring this logic turned out to be very
simple, so the change will be included in 6.0 final.

0

Dmitry Jemerov wrote:

NB> +100. It was working great in 5.1, but these days I seem to spend
NB> half my time waiting for IDEA to come back to life after I switch
NB> between files while it's recalculating change markers.
Sorry, but are you sure you're correctly diagnosing the problem? Whether
you're offline or not, change marker update should completely happen in
the background and should not block the UI. If you do see UI blocking
when you're switching between files, could you please take a CPU
snapshot and attach it to a JIRA request?


Sorry, you're right Dmitry, it wasn't change marker stuff pausing in the
end. I hadn't notice that the markers were being rebuilt in the
background now and that it must be something else which is causing the
problems.

As requested I've opened a JIRA request
(http://www.jetbrains.net/jira/browse/IDEA-9465) detailing the problems
I'm seeing. Hope this helps!

Cheers,
N.

0

So I just had the chance to experience the new "offline" mode, and I'm not very impressed.
With my VPN into the company currently being broken, I opened IDEA and was, after a
seemingly quite long timeout, presented a "no route to host" error dialog. OK, yes, I'm
offline. Next I get a "Enter password" dialog. Huh? OK, "Cancel" got rid of that. But it's
getting better, I actually got that "no route to host" error three times in a row, always
followed by the password dialog.

Finally I'm offline - I thought. Until the first edit in a file: "no route to host",
password dialog. Aha, I have to enter offline mode manually.

So, first, if there's a connection error, there's no point in presenting a password
dialog: IDEADEV-2445, which recently celebrated its first birthday. It used to be a mere
cosmetic thing, but if that bugger comes up three times in a row, it's just plain annoying.

Second, if the CVS server cannot be contacted, offer the option to go offline (dialog box
with preselected "Work offline" checkbox) immediately, instead of unsuccessfully
attempting to connect 2+ more times.

Third, when in offline mode, actions like "Update Project" should not be directly
accessible. They should instead ask whether to attempt the action anyway, switch to online
mode or cancel. Right now, "Update Project" just silently fails. It even says "Update
completed" when background mode is turned off!

Fourth, the UI should not be blocked while trying to make a connection for updating change
markers. This is something I don't need instantly and I shouldn't have to wait for this.

All in all, this needs some serious work and it does not make the impression of a RC IMHO.

Sascha

0

Thread dump during hang after project has been opened.
Full thread dump Java HotSpot(TM) Client VM (1.5.0_07-b03 mixed mode):

"Error Icon Blinker" prio=6 tid=0x0c183e48 nid=0x4854 waiting on condition
at java.lang.Thread.sleep(Native Method)
at com.intellij.diagnostic.IdeMessagePanel$Blinker.run(IdeMessagePanel.java:13)

"AlarmThread" prio=6 tid=0x0c3ee898 nid=0x3e68 in Object.wait()
at java.lang.Object.wait(Native Method)
- waiting on (a java.lang.Object) at com.intellij.util.Alarm$MyThread.run(Alarm.java:277) - locked <0x15e2d498>]]> (a java.lang.Object)

"AlarmThread" prio=6 tid=0x0c91de58 nid=0x402c in Object.wait()
at java.lang.Object.wait(Native Method)
at java.lang.Object.wait(Object.java:474)
at com.intellij.util.Alarm$MyThread.run(Alarm.java:217)
- locked ]]> (a java.lang.Object)

"Error Icon Blinker" prio=6 tid=0x0c6b3c30 nid=0x4c38 waiting on condition
at java.lang.Thread.sleep(Native Method)
at com.intellij.diagnostic.IdeMessagePanel$Blinker.run(IdeMessagePanel.java:10)

"AlarmThread" prio=6 tid=0x0c59eb68 nid=0x4b6c in Object.wait()
at java.lang.Object.wait(Native Method)
- waiting on (a java.lang.Object) at java.lang.Object.wait(Object.java:474) at com.intellij.util.Alarm$MyThread.run(Alarm.java:217) - locked <0x154613d0>]]> (a java.lang.Object)

"AlarmThread" prio=6 tid=0x0c53d5c0 nid=0x4b68 in Object.wait()
at java.lang.Object.wait(Native Method)
- waiting on (a java.lang.Object) at java.lang.Object.wait(Object.java:474) at com.intellij.util.Alarm$MyThread.run(Alarm.java:217) - locked <0x15461458>]]> (a java.lang.Object)

"Error Icon Blinker" prio=6 tid=0x0c479928 nid=0x48fc waiting on condition
at java.lang.Thread.sleep(Native Method)
at com.intellij.diagnostic.IdeMessagePanel$Blinker.run(IdeMessagePanel.java:13)

"AlarmThread" prio=6 tid=0x0c66c9a0 nid=0x48f8 in Object.wait()
at java.lang.Object.wait(Native Method)
- waiting on (a java.lang.Object) at com.intellij.util.Alarm$MyThread.run(Alarm.java:277) - locked <0x14f87548>]]> (a java.lang.Object)

"AlarmThread" prio=6 tid=0x0c55d1e0 nid=0x48f0 in Object.wait()
at java.lang.Object.wait(Native Method)
- waiting on (a java.lang.Object) at java.lang.Object.wait(Object.java:474) at com.intellij.util.Alarm$MyThread.run(Alarm.java:217) - locked <0x14f875d0>]]> (a java.lang.Object)

"Error Icon Blinker" prio=6 tid=0x0c486310 nid=0x450c waiting on condition
at java.lang.Thread.sleep(Native Method)
at com.intellij.diagnostic.IdeMessagePanel$Blinker.run(IdeMessagePanel.java:10)

"AlarmThread" prio=6 tid=0x0c61b5c0 nid=0x44cc in Object.wait()
at java.lang.Object.wait(Native Method)
- waiting on (a java.lang.Object) at java.lang.Object.wait(Object.java:474) at com.intellij.util.Alarm$MyThread.run(Alarm.java:217) - locked <0x13fff348>]]> (a java.lang.Object)

"AlarmThread" prio=6 tid=0x0c40d2c8 nid=0x44c8 in Object.wait()
at java.lang.Object.wait(Native Method)
- waiting on (a java.lang.Object) at java.lang.Object.wait(Object.java:474) at com.intellij.util.Alarm$MyThread.run(Alarm.java:217) - locked <0x13fff3d0>]]> (a java.lang.Object)

"Timer-0" prio=6 tid=0x0c55bd40 nid=0x26c0 in Object.wait()
at java.lang.Object.wait(Native Method)
- waiting on (a java.util.TaskQueue) at java.util.TimerThread.mainLoop(Timer.java:509) - locked <0x13cd2000>]]> (a java.util.TaskQueue)
at java.util.TimerThread.run(Timer.java:462)

"EditorCaretThread" prio=6 tid=0x050c1dc8 nid=0x300 waiting on condition
at java.lang.Thread.sleep(Native Method)
at com.intellij.openapi.editor.impl.EditorImpl$RepaintCursorThread.run(EditorImpl.java:18)

"Thread-14" daemon prio=6 tid=0x04cc6a28 nid=0x2cc waiting on condition
at java.lang.Thread.sleep(Native Method)
at org.jivesoftware.smack.PacketWriter$KeepAliveTask.run(PacketWriter.java:476)
at java.lang.Thread.run(Thread.java:595)

"Smack Listener Processor" daemon prio=6 tid=0x04e89860 nid=0x658 in Object.wait()
at java.lang.Object.wait(Native Method)
- waiting on (a org.jivesoftware.smack.PacketReader$2) at java.lang.Object.wait(Object.java:474) at org.jivesoftware.smack.PacketReader.processListeners(PacketReader.java:248) - locked <0x13420760>]]> (a org.jivesoftware.smack.PacketReader$2)
at org.jivesoftware.smack.PacketReader.access$100(PacketReader.java:45)
at org.jivesoftware.smack.PacketReader$2.run(PacketReader.java:76)

"Smack Packet Reader" daemon prio=6 tid=0x04ed9a68 nid=0xb88 runnable
at java.net.SocketInputStream.socketRead0(Native Method)
at java.net.SocketInputStream.read(SocketInputStream.java:129)
at com.sun.net.ssl.internal.ssl.InputRecord.readFully(InputRecord.java:293)
at com.sun.net.ssl.internal.ssl.InputRecord.read(InputRecord.java:331)
at com.sun.net.ssl.internal.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:723)
- locked (a java.lang.Object) at com.sun.net.ssl.internal.ssl.SSLSocketImpl.readDataRecord(SSLSocketImpl.java:680) at com.sun.net.ssl.internal.ssl.AppInputStream.read(AppInputStream.java:75) - locked <0x135416b8> (a com.sun.net.ssl.internal.ssl.AppInputStream) at sun.nio.cs.StreamDecoder$CharsetSD.readBytes(StreamDecoder.java:411) at sun.nio.cs.StreamDecoder$CharsetSD.implRead(StreamDecoder.java:453) at sun.nio.cs.StreamDecoder.read(StreamDecoder.java:183) - locked <0x13547718> (a java.io.InputStreamReader) at java.io.InputStreamReader.read(InputStreamReader.java:167) at java.io.BufferedReader.fill(BufferedReader.java:136) at java.io.BufferedReader.read1(BufferedReader.java:187) at java.io.BufferedReader.read(BufferedReader.java:261) - locked <0x13547718>]]> (a java.io.InputStreamReader)
at org.xmlpull.mxp1.MXParser.fillBuf(MXParser.java:2971)
at org.xmlpull.mxp1.MXParser.more(MXParser.java:3025)
at org.xmlpull.mxp1.MXParser.nextImpl(MXParser.java:1384)
at org.xmlpull.mxp1.MXParser.next(MXParser.java:1093)
at org.jivesoftware.smack.PacketReader.parsePackets(PacketReader.java:363)
at org.jivesoftware.smack.PacketReader.access$000(PacketReader.java:45)
at org.jivesoftware.smack.PacketReader$1.run(PacketReader.java:67)

"Smack Packet Writer" daemon prio=6 tid=0x04e89e38 nid=0x93c in Object.wait()
at java.lang.Object.wait(Native Method)
- waiting on (a java.util.LinkedList) at org.jivesoftware.smack.PacketWriter.nextPacket(PacketWriter.java:235) - locked <0x1341ffe8>]]> (a java.util.LinkedList)
at org.jivesoftware.smack.PacketWriter.writePackets(PacketWriter.java:256)
at org.jivesoftware.smack.PacketWriter.access$000(PacketWriter.java:39)
at org.jivesoftware.smack.PacketWriter$1.run(PacketWriter.java:79)

"Thread-10" prio=6 tid=0x05000d48 nid=0x26c in Object.wait()
at java.lang.Object.wait(Native Method)
- waiting on (a org.apache.xmlrpc.WebServer$Runner) at java.lang.Object.wait(Object.java:474) at org.apache.xmlrpc.WebServer$Runner.run(WebServer.java:657) - locked <0x1345bd68>]]> (a org.apache.xmlrpc.WebServer$Runner)
at java.lang.Thread.run(Thread.java:595)

"pool-3-thread-1" prio=6 tid=0x04e4d558 nid=0x348 waiting on condition
at sun.misc.Unsafe.park(Native Method)
at java.util.concurrent.locks.LockSupport.park(LockSupport.java:118)
at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:1767)
at java.util.concurrent.DelayQueue.take(DelayQueue.java:131)
at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:504)
at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:497)
at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:470)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:674)
at java.lang.Thread.run(Thread.java:595)

"AlarmThread" prio=6 tid=0x04b046f0 nid=0xf00 in Object.wait()
at java.lang.Object.wait(Native Method)
- waiting on (a java.lang.Object) at com.intellij.util.Alarm$MyThread.run(Alarm.java:277) - locked <0x11be7b90>]]> (a java.lang.Object)

"AlarmThread" prio=6 tid=0x04b3c260 nid=0xb9c in Object.wait()
at java.lang.Object.wait(Native Method)
- waiting on (a java.lang.Object) at java.lang.Object.wait(Object.java:474) at com.intellij.util.Alarm$MyThread.run(Alarm.java:217) - locked <0x11be7c18>]]> (a java.lang.Object)

"AlarmThread" prio=6 tid=0x04aa3118 nid=0xd10 in Object.wait()
at java.lang.Object.wait(Native Method)
- waiting on (a java.lang.Object) at java.lang.Object.wait(Object.java:474) at com.intellij.util.Alarm$MyThread.run(Alarm.java:217) - locked <0x119ff8a8>]]> (a java.lang.Object)

"Thread-9" prio=6 tid=0x04ad7410 nid=0x184 in Object.wait()
at java.lang.Object.wait(Native Method)
- waiting on (a org.apache.xmlrpc.WebServer$Runner) at java.lang.Object.wait(Object.java:474) at org.apache.xmlrpc.WebServer$Runner.run(WebServer.java:657) - locked <0x119b9688>]]> (a org.apache.xmlrpc.WebServer$Runner)
at java.lang.Thread.run(Thread.java:595)

"Thread-8" prio=6 tid=0x036c3a28 nid=0x9c4 in Object.wait()
at java.lang.Object.wait(Native Method)
- waiting on (a org.apache.xmlrpc.WebServer$Runner) at java.lang.Object.wait(Object.java:474) at org.apache.xmlrpc.WebServer$Runner.run(WebServer.java:657) - locked <0x119b9700>]]> (a org.apache.xmlrpc.WebServer$Runner)
at java.lang.Thread.run(Thread.java:595)

"Thread-7" prio=6 tid=0x049cc158 nid=0x360 in Object.wait()
at java.lang.Object.wait(Native Method)
- waiting on (a org.apache.xmlrpc.WebServer$Runner) at java.lang.Object.wait(Object.java:474) at org.apache.xmlrpc.WebServer$Runner.run(WebServer.java:657) - locked <0x119b9778>]]> (a org.apache.xmlrpc.WebServer$Runner)
at java.lang.Thread.run(Thread.java:595)

"Error Icon Blinker" prio=6 tid=0x03845780 nid=0xbe0 waiting on condition
at java.lang.Thread.sleep(Native Method)
at com.intellij.diagnostic.IdeMessagePanel$Blinker.run(IdeMessagePanel.java:13)

"/172.16.5.2 IDEtalk Multicast Thread" prio=6 tid=0x04a90398 nid=0x350 runnable
at java.net.PlainDatagramSocketImpl.receive0(Native Method)
- locked (a java.net.PlainDatagramSocketImpl) at java.net.PlainDatagramSocketImpl.receive(PlainDatagramSocketImpl.java:136) - locked <0x119b98b0> (a java.net.PlainDatagramSocketImpl) at java.net.DatagramSocket.receive(DatagramSocket.java:712) - locked <0x19ac2eb0> (a java.net.DatagramPacket) - locked <0x119b98f0>]]> (a java.net.MulticastSocket)
at jetbrains.communicator.p2p.MulticastPingThread.run(MulticastPingThread.java:101)

"/192.168.234.1 IDEtalk Multicast Thread" prio=6 tid=0x04a834d8 nid=0x51c runnable
at java.net.PlainDatagramSocketImpl.receive0(Native Method)
- locked (a java.net.PlainDatagramSocketImpl) at java.net.PlainDatagramSocketImpl.receive(PlainDatagramSocketImpl.java:136) - locked <0x119b99e0> (a java.net.PlainDatagramSocketImpl) at java.net.DatagramSocket.receive(DatagramSocket.java:712) - locked <0x19ac2ed0> (a java.net.DatagramPacket) - locked <0x119b9a20>]]> (a java.net.MulticastSocket)
at jetbrains.communicator.p2p.MulticastPingThread.run(MulticastPingThread.java:101)

"/192.168.16.1 IDEtalk Multicast Thread" prio=6 tid=0x03845d00 nid=0x2d4 runnable
at java.net.PlainDatagramSocketImpl.receive0(Native Method)
- locked (a java.net.PlainDatagramSocketImpl) at java.net.PlainDatagramSocketImpl.receive(PlainDatagramSocketImpl.java:136) - locked <0x119b9b10> (a java.net.PlainDatagramSocketImpl) at java.net.DatagramSocket.receive(DatagramSocket.java:712) - locked <0x19ac2ef0> (a java.net.DatagramPacket) - locked <0x119b9b50>]]> (a java.net.MulticastSocket)
at jetbrains.communicator.p2p.MulticastPingThread.run(MulticastPingThread.java:101)

"User Monitor Thread" prio=6 tid=0x04a82620 nid=0x284 in Object.wait()
at java.lang.Object.wait(Native Method)
- waiting on (a java.lang.Object) at jetbrains.communicator.p2p.UserMonitorThread.waitForNextSearch(UserMonitorThread.java:197) - locked <0x119b9c10>]]> (a java.lang.Object)
at jetbrains.communicator.p2p.UserMonitorThread.run(UserMonitorThread.java:119)

"XML-RPC Weblistener" prio=6 tid=0x049cff38 nid=0xce8 runnable
at java.net.PlainSocketImpl.socketAccept(Native Method)
at java.net.PlainSocketImpl.accept(PlainSocketImpl.java:384)
- locked ]]> (a java.net.SocksSocketImpl)
at java.net.ServerSocket.implAccept(ServerSocket.java:450)
at java.net.ServerSocket.accept(ServerSocket.java:421)
at org.apache.xmlrpc.WebServer.run(WebServer.java:453)
at java.lang.Thread.run(Thread.java:595)

"Fatal Errors Grouper" prio=6 tid=0x049f3688 nid=0x3ec waiting on condition
at java.lang.Thread.sleep(Native Method)
at com.intellij.diagnostic.MessagePool$MessageGrouper.run(MessagePool.java:29)

"Network Message Dispatcher" prio=6 tid=0x030ead68 nid=0xc44 in Object.wait()
at java.lang.Object.wait(Native Method)
- waiting on (a java.lang.Object) at java.lang.Object.wait(Object.java:474) at jetbrains.communicator.core.impl.dispatcher.AsyncMessageDispatcherImpl.run(AsyncMessageDispatcherImpl.java:64) - locked <0x1199f330>]]> (a java.lang.Object)
at java.lang.Thread.run(Thread.java:595)

"UserActivityMonitor thread" prio=6 tid=0x04a20b68 nid=0x6b8 in Object.wait()
at java.lang.Object.wait(Native Method)
- waiting on (a java.lang.Object) at jetbrains.communicator.idea.monitor.UserActivityMonitor.run(UserActivityMonitor.java:103) - locked <0x1195e5f0>]]> (a java.lang.Object)
at java.lang.Thread.run(Thread.java:595)

"TimerQueue" daemon prio=6 tid=0x037af530 nid=0xcf8 in Object.wait()
at java.lang.Object.wait(Native Method)
at javax.swing.TimerQueue.postExpiredTimers(TimerQueue.java:215)
- locked (a javax.swing.TimerQueue) at javax.swing.TimerQueue.run(TimerQueue.java:231) - locked <0x11795b30>]]> (a javax.swing.TimerQueue)
at java.lang.Thread.run(Thread.java:595)

"pool-1-thread-1" prio=6 tid=0x0391c568 nid=0xf04 waiting on condition
at sun.misc.Unsafe.park(Native Method)
at java.util.concurrent.locks.LockSupport.park(LockSupport.java:118)
at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:1767)
at java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:359)
at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:470)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:674)
at java.lang.Thread.run(Thread.java:595)

"StoreRefreshStatusThread" daemon prio=2 tid=0x038f8500 nid=0x918 waiting on condition
at java.lang.Thread.sleep(Native Method)
at com.intellij.openapi.vfs.impl.local.LocalFileSystemImpl$StoreRefreshStatusThread.run(LocalFileSystemImpl.java:7)

"WatchForChangesThread" prio=6 tid=0x039199d0 nid=0x914 runnable
at com.intellij.vfs.local.win32.FileWatcher.waitForChangeImpl(Native Method)
at com.intellij.vfs.local.win32.FileWatcher.waitForChange(FileWatcher.java:86)
at com.intellij.openapi.vfs.impl.local.LocalFileSystemImpl$WatchForChangesThread.run(LocalFileSystemImpl.java:31)

"Progress Cancel Checker" prio=6 tid=0x038fabf8 nid=0x910 waiting on condition
at java.lang.Thread.sleep(Native Method)
at com.intellij.openapi.progress.impl.ProgressManagerImpl$1.run(ProgressManagerImpl.java:5)

"Activation listener" prio=6 tid=0x03901490 nid=0x84c runnable
at java.net.PlainSocketImpl.socketAccept(Native Method)
at java.net.PlainSocketImpl.accept(PlainSocketImpl.java:384)
- locked ]]> (a java.net.SocksSocketImpl)
at java.net.ServerSocket.implAccept(ServerSocket.java:450)
at java.net.ServerSocket.accept(ServerSocket.java:421)
at com.intellij.ide.ActivationServerImpl.run(ActivationServerImpl.java:113)
at java.lang.Thread.run(Thread.java:595)

"XML-RPC Weblistener" prio=6 tid=0x03086be0 nid=0x8c4 runnable
at java.net.PlainSocketImpl.socketAccept(Native Method)
at java.net.PlainSocketImpl.accept(PlainSocketImpl.java:384)
- locked ]]> (a java.net.SocksSocketImpl)
at java.net.ServerSocket.implAccept(ServerSocket.java:450)
at java.net.ServerSocket.accept(ServerSocket.java:421)
at org.apache.xmlrpc.WebServer.run(WebServer.java:453)
at java.lang.Thread.run(Thread.java:595)

"AWT-EventQueue-1" prio=6 tid=0x03752d08 nid=0x568 runnable
at java.net.PlainSocketImpl.socketConnect(Native Method)
at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:333)
- locked (a java.net.SocksSocketImpl) at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:195) at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:182) at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:366) at java.net.Socket.connect(Socket.java:516) at java.net.Socket.connect(Socket.java:466) at java.net.Socket.(Socket.java:366) at java.net.Socket.(Socket.java:179) at org.netbeans.lib.cvsclient.connection.PServerConnection.createSocket(PServerConnection.java:214) at org.netbeans.lib.cvsclient.connection.PServerConnection.openConnection(PServerConnection.java:155) at org.netbeans.lib.cvsclient.connection.PServerConnection.open(PServerConnection.java:98) at com.intellij.cvsSupport2.connections.ConnectionWrapper.open(ConnectionWrapper.java:63) at com.intellij.cvsSupport2.connections.pserver.PServerLoginProviderImpl.login(PServerLoginProviderImpl.java:58) at com.intellij.cvsSupport2.connections.pserver.PServerCvsSettings.login(PServerCvsSettings.java:36) at com.intellij.cvsSupport2.connections.CvsRootProvider.login(CvsRootProvider.java:48) at com.intellij.cvsSupport2.connections.CvsRootProvider.login(CvsRootProvider.java:48) at com.intellij.cvsSupport2.cvsoperations.common.CvsCommandOperation.login(CvsCommandOperation.java:126) at com.intellij.cvsSupport2.cvsoperations.common.CvsOperation.login(CvsOperation.java:25) at com.intellij.cvsSupport2.cvshandlers.CommandCvsHandler.login(CommandCvsHandler.java:70) at com.intellij.cvsSupport2.cvsExecution.CvsOperationExecutor$3.run(CvsOperationExecutor.java:162) at com.intellij.openapi.application.impl.LaterInvocator$1.run(LaterInvocator.java:6) at com.intellij.openapi.application.impl.LaterInvocator$FlushQueue.run(LaterInvocator.java:19) - locked <0x113e7b90>]]> (a java.lang.Object)
at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:209)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:461)
at com.intellij.ide.IdeEventQueue.defaultDispatchEvent(IdeEventQueue.java:5)
at com.intellij.ide.IdeEventQueue.a(IdeEventQueue.java:150)
at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:10)
at java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:242)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:163)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:157)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:149)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:110)

"AWT-Shutdown" prio=6 tid=0x035efc98 nid=0x2c4 in Object.wait()
at java.lang.Object.wait(Native Method)
- waiting on (a java.lang.Object) at java.lang.Object.wait(Object.java:474) at sun.awt.AWTAutoShutdown.run(AWTAutoShutdown.java:259) - locked <0x11082bb8>]]> (a java.lang.Object)
at java.lang.Thread.run(Thread.java:595)

"AlarmThread" prio=6 tid=0x031fedb0 nid=0xd18 in Object.wait()
at java.lang.Object.wait(Native Method)
- waiting on (a java.lang.Object) at com.intellij.util.Alarm$MyThread.run(Alarm.java:277) - locked <0x110a75d8>]]> (a java.lang.Object)

"AlarmThread" prio=6 tid=0x031b0d70 nid=0xd1c in Object.wait()
at java.lang.Object.wait(Native Method)
- waiting on (a com.intellij.util.concurrency.Semaphore) at java.lang.Object.wait(Object.java:474) at com.intellij.util.concurrency.Semaphore.waitFor(Semaphore.java:38) - locked <0x102ad9a8>]]> (a com.intellij.util.concurrency.Semaphore)
at com.intellij.openapi.application.impl.LaterInvocator.invokeAndWait(LaterInvocator.java:50)
at com.intellij.openapi.application.impl.ApplicationImpl.invokeAndWait(ApplicationImpl.java:218)
at com.intellij.cvsSupport2.cvsExecution.ModalityContextImpl.runInDispatchThread(ModalityContextImpl.java:33)
at com.intellij.cvsSupport2.cvsExecution.CvsOperationExecutor.login(CvsOperationExecutor.java:159)
at com.intellij.cvsSupport2.cvsExecution.CvsOperationExecutor.access$500(CvsOperationExecutor.java:43)
at com.intellij.cvsSupport2.cvsExecution.CvsOperationExecutor$2.run(CvsOperationExecutor.java:128)
at com.intellij.cvsSupport2.cvsExecution.CvsOperationExecutor.performActionSync(CvsOperationExecutor.java:147)
at com.intellij.cvsSupport2.CvsVcs2.executeQuietOperation(CvsVcs2.java:224)
at com.intellij.cvsSupport2.cvsstatuses.CvsChangeProvider$CvsUpToDateRevision.getContent(CvsChangeProvider.java:271)
at com.intellij.openapi.vcs.impl.ProjectLevelVcsManagerImpl.getBaseVersionContent(ProjectLevelVcsManagerImpl.java:18)
at com.intellij.openapi.vcs.impl.LineStatusTrackerManager$3.run(LineStatusTrackerManager.java:9)
at com.intellij.util.Alarm$1.run(Alarm.java:106)
at com.intellij.util.Alarm$MyThread$1.run(Alarm.java:250)
at com.intellij.util.Alarm$MyThread.run(Alarm.java:270)

"SocketListenerThread" prio=6 tid=0x0306fc80 nid=0xb84 runnable
at java.net.PlainDatagramSocketImpl.receive0(Native Method)
- locked (a java.net.PlainDatagramSocketImpl) at java.net.PlainDatagramSocketImpl.receive(PlainDatagramSocketImpl.java:136) - locked <0x11065018> (a java.net.PlainDatagramSocketImpl) at java.net.DatagramSocket.receive(DatagramSocket.java:712) - locked <0x110a9d88> (a java.net.DatagramPacket) - locked <0x11065058>]]> (a java.net.MulticastSocket)
at com.intellij.a.c.a.e.a(e.java:30)
at com.intellij.a.c.a.f.run(f.java:5)

"SocketListenerThread" prio=6 tid=0x0306f268 nid=0xdc8 runnable
at java.net.PlainDatagramSocketImpl.receive0(Native Method)
- locked (a java.net.PlainDatagramSocketImpl) at java.net.PlainDatagramSocketImpl.receive(PlainDatagramSocketImpl.java:136) - locked <0x11067840> (a java.net.PlainDatagramSocketImpl) at java.net.DatagramSocket.receive(DatagramSocket.java:712) - locked <0x11067880> (a java.net.DatagramPacket) - locked <0x110678a0>]]> (a java.net.DatagramSocket)
at com.intellij.a.c.a.e.a(e.java:30)
at com.intellij.a.c.a.f.run(f.java:5)

"MessageDeliveryThread" prio=6 tid=0x00c90c20 nid=0xdf4 in Object.wait()
at java.lang.Object.wait(Native Method)
- waiting on (a java.lang.Object) at java.lang.Object.wait(Object.java:474) at com.intellij.a.c.r.run(r.java:17) - locked <0x11067940>]]> (a java.lang.Object)

"AWT-Windows" daemon prio=6 tid=0x031a2ca8 nid=0x8f8 runnable
at sun.awt.windows.WToolkit.eventLoop(Native Method)
at sun.awt.windows.WToolkit.run(WToolkit.java:269)
at java.lang.Thread.run(Thread.java:595)

"Java2D Disposer" daemon prio=10 tid=0x031abd48 nid=0x294 in Object.wait()
at java.lang.Object.wait(Native Method)
at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:116)
- locked ]]> (a java.lang.ref.ReferenceQueue$Lock)
at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:132)
at sun.java2d.Disposer.run(Disposer.java:107)
at java.lang.Thread.run(Thread.java:595)

"Lock thread" prio=6 tid=0x03086260 nid=0xb24 runnable
at java.net.PlainSocketImpl.socketAccept(Native Method)
at java.net.PlainSocketImpl.accept(PlainSocketImpl.java:384)
- locked ]]> (a java.net.SocksSocketImpl)
at java.net.ServerSocket.implAccept(ServerSocket.java:450)
at java.net.ServerSocket.accept(ServerSocket.java:421)
at com.intellij.idea.SocketLock$MyRunnable.run(SocketLock.java:8)
at java.lang.Thread.run(Thread.java:595)

"DestroyJavaVM" prio=6 tid=0x00037b50 nid=0x678 waiting on condition

"Low Memory Detector" daemon prio=6 tid=0x0302b0b8 nid=0xf30 runnable

"CompilerThread0" daemon prio=10 tid=0x00c4c118 nid=0x834 waiting on condition

"Signal Dispatcher" daemon prio=10 tid=0x00c7ca18 nid=0xa54 waiting on condition

"YJPAgent-CPUSampler" daemon prio=6 tid=0x000383b0 nid=0xa1c runnable

"YJPAgent-RequestListener" daemon prio=2 tid=0x030514a0 nid=0x1cc runnable
at java.net.PlainSocketImpl.socketAccept(Native Method)
at java.net.PlainSocketImpl.accept(PlainSocketImpl.java:384)
- locked ]]> (a java.net.SocksSocketImpl)
at java.net.ServerSocket.implAccept(ServerSocket.java:450)
at java.net.ServerSocket.accept(ServerSocket.java:421)
at com.yourkit.runtime.Core$2.run(Core.java:320)
at java.lang.Thread.run(Thread.java:595)

"YJPAgent-Telemetry" daemon prio=2 tid=0x00c77cd8 nid=0x67c waiting on condition
at java.lang.Thread.sleep(Native Method)
at com.yourkit.runtime.telemetry.TelemetryThread.run(TelemetryThread.java:272)

"Finalizer" daemon prio=8 tid=0x00c67040 nid=0x8b8 in Object.wait()
at java.lang.Object.wait(Native Method)
at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:116)
- locked ]]> (a java.lang.ref.ReferenceQueue$Lock)
at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:132)
at java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:159)

"Reference Handler" daemon prio=10 tid=0x00c64fe8 nid=0x904 in Object.wait()
at java.lang.Object.wait(Native Method)
at java.lang.Object.wait(Object.java:474)
at java.lang.ref.Reference$ReferenceHandler.run(Reference.java:116)
- locked ]]> (a java.lang.ref.Reference$Lock)

"VM Thread" prio=10 tid=0x00c611c8 nid=0x8b4 runnable

"VM Periodic Task Thread" prio=10 tid=0x0303de58 nid=0xccc waiting on condition

0

One more: While in offline mode I dared to start an Ant build. Blocked UI - "no route to
host". And I didn't count how many times I got that dialog before I got a chance to close
the project - but it was more than three times.

"AWT-EventQueue-1" prio=6 tid=0x18d5e3f8 nid=0x2af4 runnable
at java.net.PlainSocketImpl.socketConnect(Native Method)
at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:333)
- locked (a java.net.SocksSocketImpl) at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:195) at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:182) at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:366) at java.net.Socket.connect(Socket.java:516) at java.net.Socket.connect(Socket.java:466) at java.net.Socket.(Socket.java:366) at java.net.Socket.(Socket.java:179) at org.netbeans.lib.cvsclient.connection.PServerConnection.createSocket(PServerConnection.java:214) at org.netbeans.lib.cvsclient.connection.PServerConnection.openConnection(PServerConnection.java:155) at org.netbeans.lib.cvsclient.connection.PServerConnection.open(PServerConnection.java:98) at com.intellij.cvsSupport2.connections.ConnectionWrapper.open(ConnectionWrapper.java:63) at com.intellij.cvsSupport2.connections.pserver.PServerLoginProviderImpl.login(PServerLoginProviderImpl.java:58) at com.intellij.cvsSupport2.connections.pserver.PServerCvsSettings.login(PServerCvsSettings.java:36) at com.intellij.cvsSupport2.connections.CvsRootProvider.login(CvsRootProvider.java:48) at com.intellij.cvsSupport2.connections.CvsRootProvider.login(CvsRootProvider.java:48) at com.intellij.cvsSupport2.cvsoperations.common.CvsCommandOperation.login(CvsCommandOperation.java:126) at com.intellij.cvsSupport2.cvsoperations.common.CvsOperation.login(CvsOperation.java:25) at com.intellij.cvsSupport2.cvshandlers.CommandCvsHandler.login(CommandCvsHandler.java:70) at com.intellij.cvsSupport2.cvsExecution.CvsOperationExecutor$3.run(CvsOperationExecutor.java:162) at com.intellij.openapi.application.impl.LaterInvocator$1.run(LaterInvocator.java:6) at com.intellij.openapi.application.impl.LaterInvocator$FlushQueue.run(LaterInvocator.java:19) - locked <0x06733370> (a java.lang.Object) at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:209) at java.awt.EventQueue.dispatchEvent(EventQueue.java:461) at com.intellij.ide.IdeEventQueue.defaultDispatchEvent(IdeEventQueue.java:5) at com.intellij.ide.IdeEventQueue.a(IdeEventQueue.java:150) at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:10) at java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:242) at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:163) at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:153) at java.awt.Dialog$1.run(Dialog.java:517) at java.awt.Dialog$2.run(Dialog.java:545) at java.security.AccessController.doPrivileged(Native Method) at java.awt.Dialog.show(Dialog.java:543) at com.intellij.openapi.ui.impl.DialogWrapperPeerImpl$MyDialog.show(DialogWrapperPeerImpl.java:63) at com.intellij.openapi.ui.impl.DialogWrapperPeerImpl.show(DialogWrapperPeerImpl.java:7) at com.intellij.openapi.ui.DialogWrapper.show(DialogWrapper.java:745) - locked <0x0736de38> (a java.lang.Object) at com.intellij.lang.ant.config.execution.BuildProgressWindow$3.run(BuildProgressWindow.java:86) at com.intellij.openapi.application.impl.LaterInvocator$FlushQueue.run(LaterInvocator.java:19) - locked <0x06733370>]]> (a java.lang.Object)
at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:209)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:461)
at com.intellij.ide.IdeEventQueue.defaultDispatchEvent(IdeEventQueue.java:5)
at com.intellij.ide.IdeEventQueue.a(IdeEventQueue.java:150)
at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:10)
at
java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:242)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:163)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:157)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:149)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:110)
Full thread dump Java HotSpot(TM) Server VM (1.5.0_07-b03 mixed mode):

"Error Icon Blinker" prio=6 tid=0x19517710 nid=0x4fd0 waiting on condition
at java.lang.Thread.sleep(Native Method)
at com.intellij.diagnostic.IdeMessagePanel$Blinker.run(IdeMessagePanel.java:13)

"AlarmThread" prio=6 tid=0x1af9f530 nid=0x4fbc in Object.wait()
at java.lang.Object.wait(Native Method)
- waiting on (a java.lang.Object) at com.intellij.util.Alarm$MyThread.run(Alarm.java:277) - locked <0x09571f88>]]> (a java.lang.Object)

"AlarmThread" prio=6 tid=0x195e3e40 nid=0x4efc in Object.wait()
at java.lang.Object.wait(Native Method)
- waiting on (a java.lang.Object) at java.lang.Object.wait(Object.java:474) at com.intellij.util.Alarm$MyThread.run(Alarm.java:217) - locked <0x09572010>]]> (a java.lang.Object)

"EditorCaretThread" prio=6 tid=0x19634248 nid=0x3bcc waiting on condition
at java.lang.Thread.sleep(Native Method)
at com.intellij.openapi.editor.impl.EditorImpl$RepaintCursorThread.run(EditorImpl.java:18)

"Thread-14" daemon prio=6 tid=0x18ad08a8 nid=0x38d8 waiting on condition
at java.lang.Thread.sleep(Native Method)
at org.jivesoftware.smack.PacketWriter$KeepAliveTask.run(PacketWriter.java:476)
at java.lang.Thread.run(Thread.java:595)

"Smack Listener Processor" daemon prio=6 tid=0x1d613098 nid=0x3dbc in Object.wait()
at java.lang.Object.wait(Native Method)
- waiting on (a org.jivesoftware.smack.PacketReader$2) at java.lang.Object.wait(Object.java:474) at org.jivesoftware.smack.PacketReader.processListeners(PacketReader.java:248) - locked <0x08c7e138>]]> (a org.jivesoftware.smack.PacketReader$2)
at org.jivesoftware.smack.PacketReader.access$100(PacketReader.java:45)
at org.jivesoftware.smack.PacketReader$2.run(PacketReader.java:76)

"Smack Packet Reader" daemon prio=6 tid=0x1aee63b8 nid=0x29ec runnable
at java.net.SocketInputStream.socketRead0(Native Method)
at java.net.SocketInputStream.read(SocketInputStream.java:129)
at com.sun.net.ssl.internal.ssl.InputRecord.readFully(InputRecord.java:293)
at com.sun.net.ssl.internal.ssl.InputRecord.read(InputRecord.java:331)
at com.sun.net.ssl.internal.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:723)
- locked (a java.lang.Object) at com.sun.net.ssl.internal.ssl.SSLSocketImpl.readDataRecord(SSLSocketImpl.java:680) at com.sun.net.ssl.internal.ssl.AppInputStream.read(AppInputStream.java:75) - locked <0x08c82470> (a com.sun.net.ssl.internal.ssl.AppInputStream) at sun.nio.cs.StreamDecoder$CharsetSD.readBytes(StreamDecoder.java:411) at sun.nio.cs.StreamDecoder$CharsetSD.implRead(StreamDecoder.java:453) at sun.nio.cs.StreamDecoder.read(StreamDecoder.java:183) - locked <0x08c884d0> (a java.io.InputStreamReader) at java.io.InputStreamReader.read(InputStreamReader.java:167) at java.io.BufferedReader.fill(BufferedReader.java:136) at java.io.BufferedReader.read1(BufferedReader.java:187) at java.io.BufferedReader.read(BufferedReader.java:261) - locked <0x08c884d0>]]> (a java.io.InputStreamReader)
at org.xmlpull.mxp1.MXParser.fillBuf(MXParser.java:2971)
at org.xmlpull.mxp1.MXParser.more(MXParser.java:3025)
at org.xmlpull.mxp1.MXParser.nextImpl(MXParser.java:1384)
at org.xmlpull.mxp1.MXParser.next(MXParser.java:1093)
at org.jivesoftware.smack.PacketReader.parsePackets(PacketReader.java:363)
at org.jivesoftware.smack.PacketReader.access$000(PacketReader.java:45)
at org.jivesoftware.smack.PacketReader$1.run(PacketReader.java:67)

"Smack Packet Writer" daemon prio=6 tid=0x1d164e40 nid=0x3dac in Object.wait()
at java.lang.Object.wait(Native Method)
- waiting on (a java.util.LinkedList) at org.jivesoftware.smack.PacketWriter.nextPacket(PacketWriter.java:235) - locked <0x08c88578>]]> (a java.util.LinkedList)
at org.jivesoftware.smack.PacketWriter.writePackets(PacketWriter.java:256)
at org.jivesoftware.smack.PacketWriter.access$000(PacketWriter.java:39)
at org.jivesoftware.smack.PacketWriter$1.run(PacketWriter.java:79)

"Thread-10" prio=6 tid=0x1d403780 nid=0x3da8 in Object.wait()
at java.lang.Object.wait(Native Method)
- waiting on (a org.apache.xmlrpc.WebServer$Runner) at java.lang.Object.wait(Object.java:474) at org.apache.xmlrpc.WebServer$Runner.run(WebServer.java:657) - locked <0x08c88620>]]> (a org.apache.xmlrpc.WebServer$Runner)
at java.lang.Thread.run(Thread.java:595)

"pool-3-thread-1" prio=6 tid=0x1962ce00 nid=0x2568 waiting on condition
at sun.misc.Unsafe.park(Native Method)
at java.util.concurrent.locks.LockSupport.park(LockSupport.java:118)
at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:1767)
at java.util.concurrent.DelayQueue.take(DelayQueue.java:131)
at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:504)
at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:497)
at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:470)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:674)
at java.lang.Thread.run(Thread.java:595)

"AlarmThread" prio=6 tid=0x1dba2d10 nid=0x35b8 runnable
at java.net.PlainSocketImpl.socketConnect(Native Method)
at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:333)
- locked (a java.net.PlainSocketImpl) at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:195) at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:182) at java.net.Socket.connect(Socket.java:516) at sun.net.NetworkClient.doConnect(NetworkClient.java:155) at sun.net.www.http.HttpClient.openServer(HttpClient.java:365) at sun.net.www.http.HttpClient.openServer(HttpClient.java:477) - locked <0x04c44d50> (a sun.net.www.http.HttpClient) at sun.net.www.http.HttpClient.(HttpClient.java:214) at sun.net.www.http.HttpClient.New(HttpClient.java:287) at sun.net.www.http.HttpClient.New(HttpClient.java:299) at sun.net.www.protocol.http.HttpURLConnection.getNewHttpClient(HttpURLConnection.java:795) at sun.net.www.protocol.http.HttpURLConnection.plainConnect(HttpURLConnection.java:747) at sun.net.www.protocol.http.HttpURLConnection.connect(HttpURLConnection.java:672) at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:916) - locked <0x04c43a70>]]> (a sun.net.www.protocol.http.HttpURLConnection)
at org.apache.xmlrpc.TCDefaultXmlRpcTransport.endClientRequest(TCDefaultXmlRpcTransport.java:123)
at org.apache.xmlrpc.XmlRpcClientWorker.execute(XmlRpcClientWorker.java:110)
at org.apache.xmlrpc.XmlRpcClient.execute(XmlRpcClient.java:194)
at org.apache.xmlrpc.XmlRpcClient.execute(XmlRpcClient.java:185)
at org.apache.xmlrpc.XmlRpcClient.execute(XmlRpcClient.java:178)
at jetbrains.buildServer.xmlrpc.XmlRpcTargetImpl.call(XmlRpcTargetImpl.java:67)
at jetbrains.buildServer.serverProxy.RemoteBuildServerFacade.ensureNotificatorExists(RemoteBuildServerFacade.java:299)
at jetbrains.buildServer.BuildServerManager.registerNotificator(BuildServerManager.java:138)
at jetbrains.buildServer.BuildServerManager.access$500(BuildServerManager.java:50)
at jetbrains.buildServer.BuildServerManager$4.run(BuildServerManager.java:221)
at com.intellij.util.Alarm$1.run(Alarm.java:106)
at com.intellij.util.Alarm$MyThread$1.run(Alarm.java:250)
at com.intellij.util.Alarm$MyThread.run(Alarm.java:270)

"AlarmThread" prio=6 tid=0x1d7aa298 nid=0x35b4 in Object.wait()
at java.lang.Object.wait(Native Method)
- waiting on (a java.lang.Object) at java.lang.Object.wait(Object.java:474) at com.intellij.util.Alarm$MyThread.run(Alarm.java:217) - locked <0x072a9af8>]]> (a java.lang.Object)

"AlarmThread" prio=6 tid=0x1bafce20 nid=0x30cc in Object.wait()
at java.lang.Object.wait(Native Method)
- waiting on (a java.lang.Object) at java.lang.Object.wait(Object.java:474) at com.intellij.util.Alarm$MyThread.run(Alarm.java:217) - locked <0x06f7c478>]]> (a java.lang.Object)

"Error Icon Blinker" prio=6 tid=0x1b6d2408 nid=0x2fdc waiting on condition
at java.lang.Thread.sleep(Native Method)
at com.intellij.diagnostic.IdeMessagePanel$Blinker.run(IdeMessagePanel.java:13)

"Fatal Errors Grouper" prio=6 tid=0x1933f448 nid=0x2fd8 waiting on condition
at java.lang.Thread.sleep(Native Method)
at com.intellij.diagnostic.MessagePool$MessageGrouper.run(MessagePool.java:29)

"Thread-8" prio=6 tid=0x1ad510a8 nid=0x31e8 in Object.wait()
at java.lang.Object.wait(Native Method)
- waiting on (a org.apache.xmlrpc.WebServer$Runner) at java.lang.Object.wait(Object.java:474) at org.apache.xmlrpc.WebServer$Runner.run(WebServer.java:657) - locked <0x06f848f8>]]> (a org.apache.xmlrpc.WebServer$Runner)
at java.lang.Thread.run(Thread.java:595)

"Thread-7" prio=6 tid=0x19517b78 nid=0x37a0 in Object.wait()
at java.lang.Object.wait(Native Method)
- waiting on (a org.apache.xmlrpc.WebServer$Runner) at java.lang.Object.wait(Object.java:474) at org.apache.xmlrpc.WebServer$Runner.run(WebServer.java:657) - locked <0x06f84970>]]> (a org.apache.xmlrpc.WebServer$Runner)
at java.lang.Thread.run(Thread.java:595)

"Thread-6" prio=6 tid=0x1b598d58 nid=0x379c in Object.wait()
at java.lang.Object.wait(Native Method)
- waiting on (a org.apache.xmlrpc.WebServer$Runner) at java.lang.Object.wait(Object.java:474) at org.apache.xmlrpc.WebServer$Runner.run(WebServer.java:657) - locked <0x06f849e8>]]> (a org.apache.xmlrpc.WebServer$Runner)
at java.lang.Thread.run(Thread.java:595)

"/172.16.5.2 IDEtalk Multicast Thread" prio=6 tid=0x193af0a8 nid=0x32c4 runnable
at java.net.PlainDatagramSocketImpl.receive0(Native Method)
- locked (a java.net.PlainDatagramSocketImpl) at java.net.PlainDatagramSocketImpl.receive(PlainDatagramSocketImpl.java:136) - locked <0x06f84a48> (a java.net.PlainDatagramSocketImpl) at java.net.DatagramSocket.receive(DatagramSocket.java:712) - locked <0x03b79f98> (a java.net.DatagramPacket) - locked <0x06f84a88>]]> (a java.net.MulticastSocket)
at jetbrains.communicator.p2p.MulticastPingThread.run(MulticastPingThread.java:101)

"/192.168.234.1 IDEtalk Multicast Thread" prio=6 tid=0x18e01ba0 nid=0x32c0 runnable
at java.net.PlainDatagramSocketImpl.receive0(Native Method)
- locked (a java.net.PlainDatagramSocketImpl) at java.net.PlainDatagramSocketImpl.receive(PlainDatagramSocketImpl.java:136) - locked <0x06f84b00> (a java.net.PlainDatagramSocketImpl) at java.net.DatagramSocket.receive(DatagramSocket.java:712) - locked <0x03b43fe8> (a java.net.DatagramPacket) - locked <0x06f84b40>]]> (a java.net.MulticastSocket)
at jetbrains.communicator.p2p.MulticastPingThread.run(MulticastPingThread.java:101)

"/192.168.16.1 IDEtalk Multicast Thread" prio=6 tid=0x18f9fd68 nid=0x3648 runnable
at java.net.PlainDatagramSocketImpl.receive0(Native Method)
- locked (a java.net.PlainDatagramSocketImpl) at java.net.PlainDatagramSocketImpl.receive(PlainDatagramSocketImpl.java:136) - locked <0x06f84bb8> (a java.net.PlainDatagramSocketImpl) at java.net.DatagramSocket.receive(DatagramSocket.java:712) - locked <0x03b1de30> (a java.net.DatagramPacket) - locked <0x06f84bf8>]]> (a java.net.MulticastSocket)
at jetbrains.communicator.p2p.MulticastPingThread.run(MulticastPingThread.java:101)

"User Monitor Thread" prio=6 tid=0x19355c20 nid=0x3644 in Object.wait()
at java.lang.Object.wait(Native Method)
- waiting on (a java.lang.Object) at jetbrains.communicator.p2p.UserMonitorThread.waitForNextSearch(UserMonitorThread.java:197) - locked <0x06f47490>]]> (a java.lang.Object)
at jetbrains.communicator.p2p.UserMonitorThread.run(UserMonitorThread.java:119)

"XML-RPC Weblistener" prio=6 tid=0x1940b008 nid=0x3640 runnable
at java.net.PlainSocketImpl.socketAccept(Native Method)
at java.net.PlainSocketImpl.accept(PlainSocketImpl.java:384)
- locked ]]> (a java.net.SocksSocketImpl)
at java.net.ServerSocket.implAccept(ServerSocket.java:450)
at java.net.ServerSocket.accept(ServerSocket.java:421)
at org.apache.xmlrpc.WebServer.run(WebServer.java:453)
at java.lang.Thread.run(Thread.java:595)

"Network Message Dispatcher" prio=6 tid=0x18a8b780 nid=0x33ac in Object.wait()
at java.lang.Object.wait(Native Method)
- waiting on (a java.lang.Object) at java.lang.Object.wait(Object.java:474) at jetbrains.communicator.core.impl.dispatcher.AsyncMessageDispatcherImpl.run(AsyncMessageDispatcherImpl.java:64) - locked <0x06f2db48>]]> (a java.lang.Object)
at java.lang.Thread.run(Thread.java:595)

"UserActivityMonitor thread" prio=6 tid=0x193513c8 nid=0x32e4 in Object.wait()
at java.lang.Object.wait(Native Method)
- waiting on (a java.lang.Object) at jetbrains.communicator.idea.monitor.UserActivityMonitor.run(UserActivityMonitor.java:103) - locked <0x06ed65a8>]]> (a java.lang.Object)
at java.lang.Thread.run(Thread.java:595)

"TimerQueue" daemon prio=6 tid=0x18576a10 nid=0x37b8 in Object.wait()
at java.lang.Object.wait(Native Method)
at javax.swing.TimerQueue.run(TimerQueue.java:233)
- locked ]]> (a javax.swing.TimerQueue)
at java.lang.Thread.run(Thread.java:595)

"pool-1-thread-1" prio=6 tid=0x18f0b810 nid=0x22d0 waiting on condition
at sun.misc.Unsafe.park(Native Method)
at java.util.concurrent.locks.LockSupport.park(LockSupport.java:118)
at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:1767)
at java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:359)
at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:470)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:674)
at java.lang.Thread.run(Thread.java:595)

"StoreRefreshStatusThread" daemon prio=2 tid=0x18c91b08 nid=0x2dec waiting on condition
at java.lang.Thread.sleep(Native Method)
at com.intellij.openapi.vfs.impl.local.LocalFileSystemImpl$StoreRefreshStatusThread.run(LocalFileSystemImpl.java:7)

"WatchForChangesThread" prio=6 tid=0x192e3b28 nid=0x2de8 runnable
at com.intellij.vfs.local.win32.FileWatcher.waitForChangeImpl(Native Method)
at com.intellij.vfs.local.win32.FileWatcher.waitForChange(FileWatcher.java:86)
at com.intellij.openapi.vfs.impl.local.LocalFileSystemImpl$WatchForChangesThread.run(LocalFileSystemImpl.java:31)

"Progress Cancel Checker" prio=6 tid=0x192e37d0 nid=0x2de4 waiting on condition
at java.lang.Thread.sleep(Native Method)
at com.intellij.openapi.progress.impl.ProgressManagerImpl$1.run(ProgressManagerImpl.java:5)

"Activation listener" prio=6 tid=0x1913bd30 nid=0x2de0 runnable
at java.net.PlainSocketImpl.socketAccept(Native Method)
at java.net.PlainSocketImpl.accept(PlainSocketImpl.java:384)
- locked ]]> (a java.net.SocksSocketImpl)
at java.net.ServerSocket.implAccept(ServerSocket.java:450)
at java.net.ServerSocket.accept(ServerSocket.java:421)
at com.intellij.ide.ActivationServerImpl.run(ActivationServerImpl.java:113)
at java.lang.Thread.run(Thread.java:595)

"XML-RPC Weblistener" prio=6 tid=0x185ce880 nid=0x2dcc runnable
at java.net.PlainSocketImpl.socketAccept(Native Method)
at java.net.PlainSocketImpl.accept(PlainSocketImpl.java:384)
- locked ]]> (a java.net.SocksSocketImpl)
at java.net.ServerSocket.implAccept(ServerSocket.java:450)
at java.net.ServerSocket.accept(ServerSocket.java:421)
at org.apache.xmlrpc.WebServer.run(WebServer.java:453)
at java.lang.Thread.run(Thread.java:595)

"AWT-EventQueue-1" prio=6 tid=0x18d5e3f8 nid=0x2af4 runnable
at java.net.PlainSocketImpl.socketConnect(Native Method)
at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:333)
- locked (a java.net.SocksSocketImpl) at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:195) at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:182) at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:366) at java.net.Socket.connect(Socket.java:516) at java.net.Socket.connect(Socket.java:466) at java.net.Socket.(Socket.java:366) at java.net.Socket.(Socket.java:179) at org.netbeans.lib.cvsclient.connection.PServerConnection.createSocket(PServerConnection.java:214) at org.netbeans.lib.cvsclient.connection.PServerConnection.openConnection(PServerConnection.java:155) at org.netbeans.lib.cvsclient.connection.PServerConnection.open(PServerConnection.java:98) at com.intellij.cvsSupport2.connections.ConnectionWrapper.open(ConnectionWrapper.java:63) at com.intellij.cvsSupport2.connections.pserver.PServerLoginProviderImpl.login(PServerLoginProviderImpl.java:58) at com.intellij.cvsSupport2.connections.pserver.PServerCvsSettings.login(PServerCvsSettings.java:36) at com.intellij.cvsSupport2.connections.CvsRootProvider.login(CvsRootProvider.java:48) at com.intellij.cvsSupport2.connections.CvsRootProvider.login(CvsRootProvider.java:48) at com.intellij.cvsSupport2.cvsoperations.common.CvsCommandOperation.login(CvsCommandOperation.java:126) at com.intellij.cvsSupport2.cvsoperations.common.CvsOperation.login(CvsOperation.java:25) at com.intellij.cvsSupport2.cvshandlers.CommandCvsHandler.login(CommandCvsHandler.java:70) at com.intellij.cvsSupport2.cvsExecution.CvsOperationExecutor$3.run(CvsOperationExecutor.java:162) at com.intellij.openapi.application.impl.LaterInvocator$1.run(LaterInvocator.java:6) at com.intellij.openapi.application.impl.LaterInvocator$FlushQueue.run(LaterInvocator.java:19) - locked <0x06733370>]]> (a java.lang.Object)
at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:209)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:461)
at com.intellij.ide.IdeEventQueue.defaultDispatchEvent(IdeEventQueue.java:5)
at com.intellij.ide.IdeEventQueue.a(IdeEventQueue.java:150)
at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:10)
at java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:242)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:163)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:157)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:149)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:110)

"AWT-Shutdown" prio=6 tid=0x18ba3950 nid=0x2af0 in Object.wait()
at java.lang.Object.wait(Native Method)
- waiting on (a java.lang.Object) at java.lang.Object.wait(Object.java:474) at sun.awt.AWTAutoShutdown.run(AWTAutoShutdown.java:259) - locked <0x06245408>]]> (a java.lang.Object)
at java.lang.Thread.run(Thread.java:595)

"AlarmThread" prio=6 tid=0x18b7dc40 nid=0x2448 in Object.wait()
at java.lang.Object.wait(Native Method)
at com.intellij.util.Alarm$MyThread.run(Alarm.java:277)
- locked ]]> (a java.lang.Object)

"AlarmThread" prio=6 tid=0x18d6d410 nid=0x2f94 in Object.wait()
at java.lang.Object.wait(Native Method)
- waiting on (a com.intellij.util.concurrency.Semaphore) at java.lang.Object.wait(Object.java:474) at com.intellij.util.concurrency.Semaphore.waitFor(Semaphore.java:38) - locked <0x04becac8>]]> (a com.intellij.util.concurrency.Semaphore)
at com.intellij.openapi.application.impl.LaterInvocator.invokeAndWait(LaterInvocator.java:50)
at com.intellij.openapi.application.impl.ApplicationImpl.invokeAndWait(ApplicationImpl.java:218)
at com.intellij.cvsSupport2.cvsExecution.ModalityContextImpl.runInDispatchThread(ModalityContextImpl.java:33)
at com.intellij.cvsSupport2.cvsExecution.CvsOperationExecutor.login(CvsOperationExecutor.java:159)
at com.intellij.cvsSupport2.cvsExecution.CvsOperationExecutor.access$500(CvsOperationExecutor.java:43)
at com.intellij.cvsSupport2.cvsExecution.CvsOperationExecutor$2.run(CvsOperationExecutor.java:128)
at com.intellij.cvsSupport2.cvsExecution.CvsOperationExecutor.performActionSync(CvsOperationExecutor.java:147)
at com.intellij.cvsSupport2.CvsVcs2.executeQuietOperation(CvsVcs2.java:224)
at com.intellij.cvsSupport2.cvsstatuses.CvsChangeProvider$CvsUpToDateRevision.getContent(CvsChangeProvider.java:271)
at com.intellij.openapi.vcs.impl.ProjectLevelVcsManagerImpl.getBaseVersionContent(ProjectLevelVcsManagerImpl.java:18)
at com.intellij.openapi.vcs.impl.LineStatusTrackerManager$3.run(LineStatusTrackerManager.java:9)
at com.intellij.util.Alarm$1.run(Alarm.java:106)
at com.intellij.util.Alarm$MyThread$1.run(Alarm.java:250)
at com.intellij.util.Alarm$MyThread.run(Alarm.java:270)

"SocketListenerThread" prio=6 tid=0x186348f8 nid=0x2d38 runnable
at java.net.PlainDatagramSocketImpl.receive0(Native Method)
- locked (a java.net.PlainDatagramSocketImpl) at java.net.PlainDatagramSocketImpl.receive(PlainDatagramSocketImpl.java:136) - locked <0x0620e850> (a java.net.PlainDatagramSocketImpl) at java.net.DatagramSocket.receive(DatagramSocket.java:712) - locked <0x0620e890> (a java.net.DatagramPacket) - locked <0x0620e8b0>]]> (a java.net.MulticastSocket)
at com.intellij.a.c.a.e.a(e.java:30)
at com.intellij.a.c.a.f.run(f.java:5)

"SocketListenerThread" prio=6 tid=0x18b57e00 nid=0x2d34 runnable
at java.net.PlainDatagramSocketImpl.receive0(Native Method)
- locked (a java.net.PlainDatagramSocketImpl) at java.net.PlainDatagramSocketImpl.receive(PlainDatagramSocketImpl.java:136) - locked <0x06211098> (a java.net.PlainDatagramSocketImpl) at java.net.DatagramSocket.receive(DatagramSocket.java:712) - locked <0x062110d8> (a java.net.DatagramPacket) - locked <0x062110f8>]]> (a java.net.DatagramSocket)
at com.intellij.a.c.a.e.a(e.java:30)
at com.intellij.a.c.a.f.run(f.java:5)

"MessageDeliveryThread" prio=6 tid=0x18b57c60 nid=0x1680 in Object.wait()
at java.lang.Object.wait(Native Method)
- waiting on (a java.lang.Object) at java.lang.Object.wait(Object.java:474) at com.intellij.a.c.r.run(r.java:17) - locked <0x06211198>]]> (a java.lang.Object)

"AWT-Windows" daemon prio=6 tid=0x18b31990 nid=0x2fcc runnable
at sun.awt.windows.WToolkit.eventLoop(Native Method)
at sun.awt.windows.WToolkit.run(WToolkit.java:269)
at java.lang.Thread.run(Thread.java:595)

"Java2D Disposer" daemon prio=10 tid=0x18b15030 nid=0x2fc4 in Object.wait()
at java.lang.Object.wait(Native Method)
- waiting on (a java.lang.ref.ReferenceQueue$Lock) at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:116) - locked <0x06211290>]]> (a java.lang.ref.ReferenceQueue$Lock)
at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:132)
at sun.java2d.Disposer.run(Disposer.java:107)
at java.lang.Thread.run(Thread.java:595)

"Lock thread" prio=6 tid=0x185ceee0 nid=0x127c runnable
at java.net.PlainSocketImpl.socketAccept(Native Method)
at java.net.PlainSocketImpl.accept(PlainSocketImpl.java:384)
- locked ]]> (a java.net.SocksSocketImpl)
at java.net.ServerSocket.implAccept(ServerSocket.java:450)
at java.net.ServerSocket.accept(ServerSocket.java:421)
at com.intellij.idea.SocketLock$MyRunnable.run(SocketLock.java:8)
at java.lang.Thread.run(Thread.java:595)

"DestroyJavaVM" prio=6 tid=0x00037c18 nid=0x2c7c waiting on condition

"Low Memory Detector" daemon prio=6 tid=0x00ac20b0 nid=0x2918 runnable

"CompilerThread1" daemon prio=10 tid=0x00ac0d10 nid=0x1ec8 waiting on condition

"CompilerThread0" daemon prio=10 tid=0x00abfea8 nid=0x1ec4 waiting on condition

"AdapterThread" daemon prio=10 tid=0x00abf000 nid=0x1ec0 waiting on condition

"Signal Dispatcher" daemon prio=10 tid=0x00abe388 nid=0x1ebc waiting on condition

"Finalizer" daemon prio=8 tid=0x00ab56f8 nid=0x1b14 in Object.wait()
at java.lang.Object.wait(Native Method)
- waiting on (a java.lang.ref.ReferenceQueue$Lock) at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:116) - locked <0x06130338>]]> (a java.lang.ref.ReferenceQueue$Lock)
at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:132)
at java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:159)

"Reference Handler" daemon prio=10 tid=0x00ab4a98 nid=0x1c0c in Object.wait()
at java.lang.Object.wait(Native Method)
at java.lang.Object.wait(Object.java:474)
at java.lang.ref.Reference$ReferenceHandler.run(Reference.java:116)
- locked ]]> (a java.lang.ref.Reference$Lock)

"VM Thread" prio=10 tid=0x00ab2870 nid=0x1b18 runnable

"VM Periodic Task Thread" prio=10 tid=0x00ac33c0 nid=0x291c waiting on condition

0

Hello Sascha,

SW> So I just had the chance to experience the new "offline" mode, and
SW> I'm not very impressed. With my VPN into the company currently being
SW> broken, I opened IDEA and was, after a seemingly quite long timeout,
SW> presented a "no route to host" error dialog. OK, yes, I'm offline.
SW> Next I get a "Enter password" dialog. Huh? OK, "Cancel" got rid of
SW> that. But it's getting better, I actually got that "no route to
SW> host" error three times in a row, always followed by the password
SW> dialog.

In fact, most of the problems you have encountered have a very simple underlying
cause: "no route to host" exception was not treated as an indicator of offline
status. The behavior should be considerably better in the next build where
it's fixed.

I admit that the offline mode implementation could be much better, with smarter
handling of commit/update when offline, and so on. However, what we have
now is the best we were able to do in the limited amount of time that we
were able to dedicate to this. We're definitely going to improve this in
future releases.

--
Dmitry Jemerov
Software Developer
http://www.jetbrains.com/
"Develop with Pleasure!"


0

Hello Dmitry,

In fact, most of the problems you have encountered have a very simple
underlying cause: "no route to host" exception was not treated as an
indicator of offline status. The behavior should be considerably better
in the next build where it's fixed.


OK, I see. Sh!t happens ;) Wouldn't it be reasonable though to treat /any/
failure to connect to the CVS server as an offline indication?

And what about the blocked UI for updating the change markers? An important
detail may be that this happened when opening projects I haven't touched in a
long time, so there probably wasn't any local history available for them.

I admit that the offline mode implementation could be much better, with
smarter handling of commit/update when offline, and so on. However, what
we have now is the best we were able to do in the limited amount of time
that we were able to dedicate to this. We're definitely going to improve
this in future releases.


I do understand that, but the experience I made last night was that the offline
mode made things a lot worse than they were in 5.x, which I think is not
acceptable because it seemed to be caused by some last-minute features (offline
and background mode) which I would have been better off without.

The two things that are absolute no-go's for me are flaky/unreliable VCS support
and bugs that cause possibly unnoticed data-loss/modification which I both
happened to face yesterday and which put me in a kinda bad mood. :)

Sascha

0

OK, I see. Sh!t happens ;) Wouldn't it be reasonable though to treat
/any/ failure to connect to the CVS server as an offline indication?


Yes, please. Including failure to resolve hostname (can't see/resolve internal
CVS/SVN server when I'm not connected to the internal network).


0

Hello Taras,

>> OK, I see. Sh!t happens ;) Wouldn't it be reasonable though to treat
>> /any/ failure to connect to the CVS server as an offline indication?
>>
TT> Yes, please. Including failure to resolve hostname (can't
TT> see/resolve internal CVS/SVN server when I'm not connected to the
TT> internal network).

This should be already handled.

--
Dmitry Jemerov
Software Developer
http://www.jetbrains.com/
"Develop with Pleasure!"


0

Dmitry Jemerov wrote:

Basically, 5.1 behavior has been restored: a server request is sent only
if the matching revision was not found in the local history.


I've found working with recent builds to be great now that this change
has been made, and that includes times when I've been online and
offline. So thanks very much for doing this!

My one gripe (there had to be one...) is that the offline state isn't
persisted across IDEA restarts (although it does survive closing and
re-opening a project). Is a JIRA request needed?

--
Mark Scott
mark@codebrewer.com

0

Please sign in to leave a comment.