Viewing Issue Advanced Details |
|||||
| ID | 0003745 | Category | [DMDirc] *Unsorted | Severity | minor |
| Reproducibility | always | Date Submitted | 2010-02-07 20:52 | Last Update | 2010-02-18 20:19 |
| Reporter | Greboid | Assigned To | MD87 | View Status | public |
| Priority | normal | Status | closed | Resolution | fixed |
| Platform | Fixed in Version | Target Version | 0.6.3 | ||
| Product Version | Product Build | ||||
| Summary | 0003745: deadlock in icon updated | ||||
|
Description |
deadlock in icon updated
|
||||
| Needs unit test | no | ||||
| Upstream Bug URL | |||||
|
[ Relation Graph ]
[ Dependency Graph ]
Relationships |
|
Notes |
|||||||||||||||||||||||||
|
(0009776) Greboid (administrator) 2010-02-07 20:52 |
"SwingWorker-pool-1-thread-10": at com.dmdirc.FrameContainer.windowActivated(FrameContainer.java:299) - waiting to lock <0xae441020> (a com.dmdirc.util.ListenerList) at com.dmdirc.addons.ui_swing.components.frames.TextFrame$19.doInBackground(TextFrame.java:754) at javax.swing.SwingWorker$1.call(SwingWorker.java:278) at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303) at java.util.concurrent.FutureTask.run(FutureTask.java:138) at javax.swing.SwingWorker.run(SwingWorker.java:317) at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) at java.lang.Thread.run(Thread.java:619) "IRC Parser thread": at com.dmdirc.Server.getChannelPrefixes(Server.java:893) - waiting to lock <0x73d339c0> (a java.lang.Object) at com.dmdirc.ui.messages.Styliser.doLinks(Styliser.java:275) at com.dmdirc.ui.messages.Styliser.addStyledString(Styliser.java:184) at com.dmdirc.addons.ui_swing.components.TopicBar.topicChanged(TopicBar.java:214) at com.dmdirc.Channel.addTopic(Channel.java:567) - locked <0xae441020> (a com.dmdirc.util.ListenerList) at com.dmdirc.ChannelEventHandler.onChannelTopic(ChannelEventHandler.java:136) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at com.dmdirc.parser.common.CallbackObjectSpecific.call(CallbackObjectSpecific.java:174) at com.dmdirc.parser.irc.ProcessTopic.callChannelTopic(ProcessTopic.java:82) at com.dmdirc.parser.irc.ProcessTopic.process(ProcessTopic.java:55) at com.dmdirc.parser.irc.ProcessingManager.process(ProcessingManager.java:193) at com.dmdirc.parser.irc.IRCParser.processLine(IRCParser.java:1103) at com.dmdirc.parser.irc.IRCParser.run(IRCParser.java:858) at java.lang.Thread.run(Thread.java:619) "SwingWorker-pool-1-thread-5": at com.dmdirc.FrameContainer.iconUpdated(FrameContainer.java:162) - waiting to lock <0xae441020> (a com.dmdirc.util.ListenerList) at com.dmdirc.FrameContainer.setIcon(FrameContainer.java:151) at com.dmdirc.Channel.resetWindow(Channel.java:331) at com.dmdirc.Server.clearChannels(Server.java:678) at com.dmdirc.Server.onSocketClosed(Server.java:1319) - locked <0x73d33cb0> (a java.lang.Object) at com.dmdirc.ServerEventHandler.onSocketClosed(ServerEventHandler.java:173) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at com.dmdirc.parser.common.CallbackObject.call(CallbackObject.java:151) at com.dmdirc.parser.irc.IRCParser.callSocketClosed(IRCParser.java:583) at com.dmdirc.parser.irc.IRCParser.disconnect(IRCParser.java:1739) at com.dmdirc.Server.disconnect(Server.java:379) - locked <0x73d339c0> (a java.lang.Object) - locked <0x73d33cb0> (a java.lang.Object) at com.dmdirc.ServerManager.closeAll(ServerManager.java:133) - locked <0x7397c750> (a java.util.ArrayList) at com.dmdirc.addons.ui_swing.MainFrame$9.doInBackground(MainFrame.java:535) at javax.swing.SwingWorker$1.call(SwingWorker.java:278) at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303) at java.util.concurrent.FutureTask.run(FutureTask.java:138) at javax.swing.SwingWorker.run(SwingWorker.java:317) at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) at java.lang.Thread.run(Thread.java:619) |
||||||||||||||||||||||||
|
(0009786) MD87 (administrator) 2010-02-08 13:30 |
How reproducible is this? The only decent solution is to start running listeners in separate threads (which would need a ThreadPoolExecutor etc to do things sanely), and that's quite a large change for a feature freeze. | ||||||||||||||||||||||||
|
(0009787) Greboid (administrator) 2010-02-08 13:34 |
Its happened during one of my nimbus test runs (which finds quite a few threading issues it seems), but I wouldn't say its hugely reproduceable. Feel free to drop this to the next release, I will be running nimbus more during the testing phase since it seems to throw up quite a few errors so I'll let you know if its common or not. | ||||||||||||||||||||||||
|
A patchset (1) related to this change has been added to gerrit by Chris Smith Run some listeners in separate threads Fixes issue 3745 Fixes issue 3758 Change-Id: Id611f5bca03f07c87f84c054d73cf1612221c0da |
|||||||||||||||||||||||||
|
A patchset (2) related to this change has been added to gerrit by Chris Smith Run some listeners in separate threads Fixes issue 3745 Fixes issue 3758 Change-Id: Id611f5bca03f07c87f84c054d73cf1612221c0da |
|||||||||||||||||||||||||
|
A patchset (3) related to this change has been added to gerrit by Chris Smith Run some listeners in separate threads Fixes issue 3745 Fixes issue 3758 Change-Id: Id611f5bca03f07c87f84c054d73cf1612221c0da |
|||||||||||||||||||||||||
Run some listeners in separate threads Fixes issue 3745
Fixes issue 3758
Change-Id: Id611f5bca03f07c87f84c054d73cf1612221c0da
Reviewed-on: http://gerrit.dmdirc.com/884
Reviewed-by: Gregory Holmes <greg@dmdirc.com>
Automatic-Compile: Gregory Holmes <greg@dmdirc.com>
2 files changed, 27 insertions, 13 deletions
|
|||||||||||||||||||||||||
Issue History |
|||
| Date Modified | Username | Field | Change |
| 2010-02-07 20:52 | Greboid | New Issue | |
| 2010-02-07 20:52 | Greboid | Status | new => assigned |
| 2010-02-07 20:52 | Greboid | Assigned To | => MD87 |
| 2010-02-07 20:52 | Greboid | Note Added: 0009776 | |
| 2010-02-08 13:30 | MD87 | Note Added: 0009786 | |
| 2010-02-08 13:34 | Greboid | Note Added: 0009787 | |
| 2010-02-16 17:51 | Version Control | Checkin | |
| 2010-02-16 17:51 | Version Control | Note Added: 0009852 | |
| 2010-02-16 17:51 | Version Control | Status | assigned => fix pending |
| 2010-02-17 02:25 | Version Control | Checkin | |
| 2010-02-17 02:25 | Version Control | Note Added: 0009880 | |
| 2010-02-17 02:36 | Version Control | Checkin | |
| 2010-02-17 02:36 | Version Control | Note Added: 0009885 | |
| 2010-02-17 02:38 | MD87 | Checkin | |
| 2010-02-17 02:38 | MD87 | Note Added: 0009888 | |
| 2010-02-17 02:38 | MD87 | Status | fix pending => resolved |
| 2010-02-17 02:38 | MD87 | Resolution | open => fixed |
| 2010-02-18 20:19 | Greboid | Status | resolved => closed |

