Bug 82181 - Excessive adapter notications sent if long list of peer of (child) nodes modified.
Summary: Excessive adapter notications sent if long list of peer of (child) nodes modi...
Status: NEW
Alias: None
Product: WTP Source Editing
Classification: WebTools
Component: wst.xml (show other bugs)
Version: unspecified   Edit
Hardware: PC Windows XP
: P3 normal (vote)
Target Milestone: ---   Edit
Assignee: wst.xml CLA
QA Contact: Nick Sandonato CLA
URL:
Whiteboard:
Keywords: performance
Depends on:
Blocks:
 
Reported: 2005-01-04 15:45 EST by David Williams CLA
Modified: 2013-06-19 11:14 EDT (History)
3 users (show)

See Also:


Attachments
sample file that has large number of peer nodes (356.68 KB, text/plain)
2005-01-04 15:55 EST, David Williams CLA
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description David Williams CLA 2005-01-04 15:45:05 EST
An example has been brought to my attention that performs very poorly, due to
the fact that there is a very long list of peer children (e.g. 2000). They are
each reparented (several times) when pasting in some new element(s). [Even for
one element, they are reparented once for start tag, then again when end tag is
inserted.]

We should add some optimization for this case (e.g. re-partent all peer children
as one operation), or, if that's not possible, add a new notification type of
"HUGE_CHANGE" which would be detected automatically when notification grew to,
say, over 10,000. In this case, individual notifcations would be abandoned, and
a "HUGE_CHANGE" be sent common parent node (as STRUCTURE_CHANGED already is). 

We should use the "HUGE_CHANGE" event as a fall back, even if optimatations are
found.
Comment 1 David Williams CLA 2005-01-04 15:55:10 EST
Created attachment 16922 [details]
sample file that has large number of peer nodes

To demonstrate the problem, paste a tag such as one below early in the list, or
late in the list, and see the (huge) difference in performance. 
		<security-role>
			<description>description 1</description>
			<role-name>role1</role-name>
		</security-role>
Comment 2 Tod Creasey CLA 2005-03-07 11:57:15 EST
Adding my name to the cc list as we are now tracking performance issues more
closely. Please remove the performance keyword if this is not a performance bug.