[Mono-bugs] [Bug 80008][Nor] Changed - SoapFormatter consumes all memory

bugzilla-daemon at bugzilla.ximian.com bugzilla-daemon at bugzilla.ximian.com
Fri Nov 24 12:21:50 EST 2006

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 lluis at ximian.com.


--- shadow/80008	2006-11-24 12:12:45.000000000 -0500
+++ shadow/80008.tmp.23680	2006-11-24 12:21:50.000000000 -0500
@@ -1,14 +1,14 @@
 Bug#: 80008
 Product: Mono: Class Libraries
 Version: 1.2
+OS: unknown
 OS Details: 
 Status: NEW   
+Severity: Unknown
 Priority: Normal
 Component: CORLIB
 AssignedTo: mono-bugs at ximian.com                            
 ReportedBy: Csaba.Halasz at gmail.com               
 QAContact: mono-bugs at ximian.com
 TargetMilestone: ---
@@ -55,6 +55,17 @@
 ------- Additional Comments From lluis at ximian.com  2006-11-24 12:12 -------
 Created an attachment (id=18150)
 Proposed fix
+------- Additional Comments From lluis at ximian.com  2006-11-24 12:21 -------
+I attached a possible fix for this issue. The problem is in
+InternalRemotingServices.GetCachedSoapAttribute. This method maintains
+a cache of SOAP information bound to fields. The cache is a hashtable
+indexed by field objects. Fields are obtained by the formatter by
+calling FormatterServices.GetSerializableMembers, which in some cases
+may create clones of FieldInfo objects (as a result of fixing bug
+74760). Every clone will have a different identity, so
+GetCachedSoapAttribute will cache every such clone, growing the
+hashtable forever.

More information about the mono-bugs mailing list