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: | IAE from SearchInfoFactory.createSearchInfo after deleting package | ||
---|---|---|---|
Product: | utilities | Reporter: | Jesse Glick <jglick> |
Component: | Search | Assignee: | Marian Petras <mpetras> |
Status: | RESOLVED FIXED | ||
Severity: | blocker | Keywords: | RANDOM, THREAD |
Priority: | P3 | ||
Version: | 6.x | ||
Hardware: | All | ||
OS: | All | ||
Issue Type: | DEFECT | Exception Reporter: | |
Attachments: | Stack trace |
Description
Jesse Glick
2007-10-23 18:42:36 UTC
Created attachment 51520 [details]
Stack trace
Milan is responsible for PackageView I assume it's not reproducible. I was not able to reproduce it just now, probably a race condition. I think it should be handled in SearchInfoFactory by checking if fo.isValid() before creating SimpleSearchInfo. Please evaluate. Thanks. Looks really like a race condition. PackageViewChildren.createNodes checks if the folder is valid, but when PackageNode later calls SearchInfoFactory, the folder is not valid anymore - so it had to be deleted in the meantime. But SearchInfoFactory can't do anything reasonable if given a folder that is not valid - it can't return null, throwing exception does not solve anything... To me it looks like PackageViewChildren should perhaps lock the folder to make sure it is not deleted during creating PackageNode (or at least when calling SearchInfoFactory). I do not think the folder can be locked in order not to be deleted/become invalid. SearchInfoFactory could return no-op SearchInfo for invalid folders. Reassigning back, see jlahoda's comment. Fixed. Modified file: o.openidex.util/src/org/openidex/search/SearchInfoFactory.java Changeset Id: bc10056e03e6 (http://hg.netbeans.org/main/dev/bc10056e03e6) Correction - the link to the changeset is http://hg.netbeans.org/main/dev/bc10056e03e6 Correction - the link to the changeset is http://hg.netbeans.org/main/rev/bc10056e03e6 |