[Mono-bugs] [Bug 75137][Nor] New - DataSet.Merge() behaviour different from MS .NET

bugzilla-daemon at bugzilla.ximian.com bugzilla-daemon at bugzilla.ximian.com
Fri Jun 3 07:52:45 EDT 2005


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 george.barbarosie at gmail.com.

http://bugzilla.ximian.com/show_bug.cgi?id=75137

--- shadow/75137	2005-06-03 07:52:45.000000000 -0400
+++ shadow/75137.tmp.22781	2005-06-03 07:52:45.000000000 -0400
@@ -0,0 +1,43 @@
+Bug#: 75137
+Product: Mono: Class Libraries
+Version: 1.1
+OS: 
+OS Details: 
+Status: NEW   
+Resolution: 
+Severity: 
+Priority: Normal
+Component: Sys.Data
+AssignedTo: mono-bugs at ximian.com                            
+ReportedBy: george.barbarosie at gmail.com               
+QAContact: mono-bugs at ximian.com
+TargetMilestone: ---
+URL: 
+Cc: 
+Summary: DataSet.Merge() behaviour different from MS .NET
+
+Merge() on MS .NET differs from Mono Class Library SVN Trunk implemntation
+in a number of ways:
+ * When destination row has DataRowState.Unchanged and source row has
+DataRowState.Modified, destination Original index gets overwritten by Merge
+(actually CopyValuesToRow...), in effect destination DataRowState remains
+unaffected;
+ * When destination row has DataRowState.Original or DataRowState.Modified
+and source row has DataRowState.Added, destination Original index gets
+deleted which is not ok; destination DataRowState gets set to Added.
+ * When destination row has DataRowState.Unchanged and source row has
+DataRowState.Deleted, the Original index gets Disposed alongside the
+Current record, because the code does not check if Original and Current
+point to the same index.
+
+Testcase attachment will follow (zipfile)
+ - test.cs - sample application to hilight all 3 of the above;
+ - expected_results_merge.txt - output of test.cs on MS .NET;
+ - actual_results_merge.txt - output of test.cs on mono with latest svn
+class libraries;
+ - actual_results_merge_patched.txt - output of test.cs on mono with latest
+svn clas libraries after proposed patch has been applied;
+
+Testcase will not run at all without patch from bug#75123 applied first.
+
+Proposed patch will follow too.


More information about the mono-bugs mailing list