This Bugzilla instance is a read-only archive of historic NetBeans bug reports. To report a bug in NetBeans please follow the project's instructions for reporting issues.
Summary: | deleting a file that you have selected text in causes gui to hang | ||
---|---|---|---|
Product: | utilities | Reporter: | andy <andy> |
Component: | Properties | Assignee: | issues@editor <issues> |
Status: | CLOSED FIXED | ||
Severity: | blocker | ||
Priority: | P1 | ||
Version: | 3.x | ||
Hardware: | PC | ||
OS: | Linux | ||
Issue Type: | DEFECT | Exception Reporter: | |
Attachments: | Full thread dumps of the deadlock. |
Description
andy
2001-12-03 14:18:30 UTC
Hi, I reproduced the deadlock. I have build 200112022330, JDK1.4b88. I tryied it on properties file and on java file and the deadlock wass reproducible only on properties file. Steps used by me: 1. Created new (properties) file 2. Pasted some text into it 3. Saved it 4. Selected, copied some text from it (part of above pasted text). 5. Pasted into external editor 6. Tryied to delete the properties file. 7. Deadlock occured, two full thread dumps are attached. Reassigning to properties, as I did reproduce it only on properties (and from thread dump it looks like some properties problem). Making P1 - it is deadlock and the circumstaces are quite common. Created attachment 3670 [details]
Full thread dumps of the deadlock.
It is even more simple: 1. Create new properties file 2. Open it in editing mode (close the table) - this ought to be between steps 1 and 2 in above steps, sorry. 3. Delete the properties file. fixed in [maintrunk] /cvs/properties/src/org/netbeans/modules/properties/PropertiesDataObje ct.java,v <-- PropertiesDataObject.java new revision: 1.43; previous revision: 1.42 fixed in [release33] /cvs/properties/src/org/netbeans/modules/properties/PropertiesDataObje ct.java,v <-- PropertiesDataObject.java new revision: 1.42.2.1; previous revision: 1.42 DIFF: ===== Index: PropertiesDataObject.java =================================================================== RCS file: /cvs/properties/src/org/netbeans/modules/properties/PropertiesDataObje ct.java,v retrieving revision 1.42.2.1 retrieving revision 1.42 diff -r1.42.2.1 -r1.42 60,62d59 < /** Lock used for synchronization of <code>openSupport</code> instance creation */ < private final transient Object OPEN_SUPPORT_LOCK = new Object(); < 178,184c175,177 < public PropertiesOpen getOpenSupport() { < synchronized(OPEN_SUPPORT_LOCK) { < if(openSupport == null) { < openSupport = new PropertiesOpen(this); < } < < return openSupport; --- > public synchronized PropertiesOpen getOpenSupport() { > if(openSupport == null) { > openSupport = new PropertiesOpen(this); 185a179,180 > > return openSupport; oooops, I have provided wrong diff. The right one: Index: PropertiesDataObject.java =================================================================== RCS file: /cvs/properties/src/org/netbeans/modules/properties/PropertiesDataObje ct.java,v retrieving revision 1.42 retrieving revision 1.42.2.1 diff -r1.42 -r1.42.2.1 59a60,62 > /** Lock used for synchronization of <code>openSupport</code> instance creation */ > private final transient Object OPEN_SUPPORT_LOCK = new Object(); > 175,177c178,184 < public synchronized PropertiesOpen getOpenSupport() { < if(openSupport == null) { < openSupport = new PropertiesOpen(this); --- > public PropertiesOpen getOpenSupport() { > synchronized(OPEN_SUPPORT_LOCK) { > if(openSupport == null) { > openSupport = new PropertiesOpen(this); > } > > return openSupport; 179,180d185 < < return openSupport; 20011204-1123 verified, this deadlock shouldn't appear anymore. The same steps caused another deadlock(new) see issue #18335 fix has been integrated to [release330] /cvs/properties/src/org/netbeans/modules/properties/PropertiesDataObje ct.java,v <-- PropertiesDataObject.java new revision: 1.42.4.1; previous revision: 1.42 *** Issue 18236 has been marked as a duplicate of this issue. *** Resolved for 3.4.x or earlier, no new info since then -> closing. |