| Summary: | Duplicate tld entries in taglib index | ||||||
|---|---|---|---|---|---|---|---|
| Product: | [WebTools] WTP Source Editing | Reporter: | Nick Sandonato <nsand.dev> | ||||
| Component: | jst.jsp | Assignee: | Nick Sandonato <nsand.dev> | ||||
| Status: | RESOLVED FIXED | QA Contact: | Nick Sandonato <nsand.dev> | ||||
| Severity: | major | ||||||
| Priority: | P3 | CC: | david.balazic, melickm, raghunathan.srinivasan, thatnitind | ||||
| Version: | 3.3 | Flags: | nsand.dev:
pmc_approved?
(david_williams) raghunathan.srinivasan: pmc_approved+ nsand.dev: pmc_approved? (naci.dai) nsand.dev: pmc_approved? (deboer) nsand.dev: pmc_approved? (neil.hauge) nsand.dev: pmc_approved? (kaloyan) nsand.dev: pmc_approved? (cbridgha) |
||||
| Target Milestone: | 3.3 RC1 | ||||||
| Hardware: | All | ||||||
| OS: | All | ||||||
| Whiteboard: | PMC_approved | ||||||
| Attachments: |
|
||||||
|
Description
Nick Sandonato
Created attachment 195771 [details]
patch
* Explain why you believe this is a stop-ship defect. Or, if it is a "hotbug" (requested by an adopter) please document it as such. Over time, the tld entries in the taglib index grows. Each time the workbench is shutdown and brought back up, a restoration of the tld entries increases (with the potential for exponential growth dependent on the number of projects referencing a JAR). More entires means more memory used by the collection holding the duplicate URLRecords, more time spent assembling the JARRecord since more lines need to be read from the file, and more time spent updating redundant records if the classpath changes. * Is there a work-around? If so, why do you believe the work-around is insufficient? Yes. Clear out the .metadata/.plugins/org.eclipse.jst.jsp.core/taglibindex directory. It's insufficient because most people will not realize that this is here, nor is it evident that this is the cause of the performance problem. * How has the fix been tested? Is there a test case attached to the bugzilla record? Has a JUnit Test been added? Ad hoc testing and inspection of the taglibindex files to make sure there are no more duplicates. * Give a brief technical overview. Who has reviewed this fix? The solution is to use a set instead of an arraylist of URLRecords to prevent duplicates in the JARRecord. Using a set will correct users that already have this redundant listing of TLDs in their metadata taglibindex without any further actions as well as prevent future duplicates. The size of the set per JARRecord should be relatively small. Nitin has reviewed the fix. * What is the risk associated with this fix? Minor. Thanks for the approval. Code checked in. |