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: | optimize/rewrite MarkupAbstractIndenter.calculateAllVirtualCloseTagsForOpenTag and calculateAllVirtualCloseTagsForCloseTag | ||
---|---|---|---|
Product: | web | Reporter: | David Konecny <dkonecny> |
Component: | HTML Editor | Assignee: | David Konecny <dkonecny> |
Status: | RESOLVED FIXED | ||
Severity: | normal | CC: | mfukala, pjiricka |
Priority: | P3 | ||
Version: | 6.x | ||
Hardware: | All | ||
OS: | All | ||
Issue Type: | DEFECT | Exception Reporter: | |
Bug Depends on: | |||
Bug Blocks: | 197458 |
Description
David Konecny
2011-04-12 03:12:09 UTC
I suppose this issue covers the fact that after fixing the exception triggered by each enter now one CPU core is fully occupied by the EDT task execution for about a second after pressing enter somewhere inside the document... I've realized that at HtmlIndenter:76 the fresh parser result creation is invoked synchronously in EDT, which is apparently wrong and consumes about 40% of the time mentioned above - Bug 197659 - do not parse file in EDT during each enter key press (In reply to comment #1) > I suppose this issue covers the fact that after fixing the exception triggered > by each enter now one CPU core is fully occupied by the EDT task execution for > about a second after pressing enter somewhere inside the document... Yes and no. This issue contributes to the slowdown a lot but I cannot say that resolving it will make everything fast. In the end this was not that hard. There was a method stub in AbstractIndenter which I never implemented and so implementing that method solved this issue. :-) The method is removing processed items from internal stack on which indenter operates. And in case of very large file which in addition has lots of close tags optional the stack got enormous (>10000 items). 5e88d61b5224 Integrated into 'main-golden', will be available in build *201104140401* on http://bits.netbeans.org/dev/nightly/ (upload may still be in progress) Changeset: http://hg.netbeans.org/main/rev/5e88d61b5224 User: David Konecny <dkonecny@netbeans.org> Log: #197640 - optimize/rewrite MarkupAbstractIndenter.calculateAllVirtualCloseTagsForOpenTag and calculateAllVirtualCloseTagsForCloseTag |