[Mono-bugs] [Bug 70211][Wis] New - DTMXPathNavigator should use class instead of struct

bugzilla-daemon@bugzilla.ximian.com bugzilla-daemon@bugzilla.ximian.com
Sat, 4 Dec 2004 12:50:34 -0500 (EST)

Please do not reply to this email- if you want to comment on the bug, go to the
URL shown below and enter your comments there.

Changed by atsushi@ximian.com.


--- shadow/70211	2004-12-04 12:50:34.000000000 -0500
+++ shadow/70211.tmp.32681	2004-12-04 12:50:34.000000000 -0500
@@ -0,0 +1,33 @@
+Bug#: 70211
+Product: Mono: Class Libraries
+Version: 1.1
+OS Details: 
+Status: NEW   
+Priority: Wishlist
+Component: Sys.XML
+AssignedTo: bmaurer@users.sf.net                            
+ReportedBy: atsushi@ximian.com               
+QAContact: mono-bugs@ximian.com
+TargetMilestone: ---
+Summary: DTMXPathNavigator should use class instead of struct
+Currently DTMXPathNavigator is based on struct nodes. However, when we
+switch to class nodes, it save 20% of memory consumption. So we need to
+reduce struct memory usage, or switch to class.
+(Switching to classes means that GC.Collect() will need much more time than
+when it is implemented with struct.)
+Steps to reproduce the problem:
+1. Edit mcs/class/System.XML/Makefile to add /d:DTM_CLASS to LIB_MCS_CLASS
+2. Edit mcs/class/System.XML/System.Xml.XPath/XPathDocument.cs to switch
+InternalDocument (and InternalDocumentBuilder) to DTMXPathNavigator
+3. optionally edit mcs/class/Mono.Xml.Xsl.Operations/XslVariable.cs to use
+DTMXPathDocumentWriter instead of DTMXPathDocumentWriter2.
+Ben is going to look into this problem.