Author: cutting
Date: Thu Jul 19 21:25:00 2012
New Revision: 1363552

URL: http://svn.apache.org/viewvc?rev=1363552&view=rev
Log:
AVRO-1128. Java: Fix SpecificRecordBase#equals() to work for records that 
contain maps.

Modified:
    avro/trunk/CHANGES.txt
    
avro/trunk/lang/java/avro/src/main/java/org/apache/avro/specific/SpecificRecordBase.java
    
avro/trunk/lang/java/ipc/src/test/java/org/apache/avro/specific/TestSpecificRecordBuilder.java

Modified: avro/trunk/CHANGES.txt
URL: 
http://svn.apache.org/viewvc/avro/trunk/CHANGES.txt?rev=1363552&r1=1363551&r2=1363552&view=diff
==============================================================================
--- avro/trunk/CHANGES.txt (original)
+++ avro/trunk/CHANGES.txt Thu Jul 19 21:25:00 2012
@@ -8,6 +8,9 @@ Avro 1.7.2 (unreleased)
 
   BUG FIXES
 
+    AVRO-1128. Java: Fix SpecificRecordBase#equals() to work for
+    records that contain maps.  (cutting)
+
 Avro 1.7.1 (16 July 2012)
 
   NEW FEATURES

Modified: 
avro/trunk/lang/java/avro/src/main/java/org/apache/avro/specific/SpecificRecordBase.java
URL: 
http://svn.apache.org/viewvc/avro/trunk/lang/java/avro/src/main/java/org/apache/avro/specific/SpecificRecordBase.java?rev=1363552&r1=1363551&r2=1363552&view=diff
==============================================================================
--- 
avro/trunk/lang/java/avro/src/main/java/org/apache/avro/specific/SpecificRecordBase.java
 (original)
+++ 
avro/trunk/lang/java/avro/src/main/java/org/apache/avro/specific/SpecificRecordBase.java
 Thu Jul 19 21:25:00 2012
@@ -32,7 +32,7 @@ public abstract class SpecificRecordBase
     if (that == this) return true;                        // identical object
     if (!(that instanceof SpecificRecord)) return false;  // not a record
     if (this.getClass() != that.getClass()) return false; // not same schema
-    return this.compareTo((SpecificRecord)that) == 0;
+    return SpecificData.get().compare(this, that, this.getSchema(), true) == 0;
   }
     
   @Override

Modified: 
avro/trunk/lang/java/ipc/src/test/java/org/apache/avro/specific/TestSpecificRecordBuilder.java
URL: 
http://svn.apache.org/viewvc/avro/trunk/lang/java/ipc/src/test/java/org/apache/avro/specific/TestSpecificRecordBuilder.java?rev=1363552&r1=1363551&r2=1363552&view=diff
==============================================================================
--- 
avro/trunk/lang/java/ipc/src/test/java/org/apache/avro/specific/TestSpecificRecordBuilder.java
 (original)
+++ 
avro/trunk/lang/java/ipc/src/test/java/org/apache/avro/specific/TestSpecificRecordBuilder.java
 Thu Jul 19 21:25:00 2012
@@ -152,6 +152,7 @@ public class TestSpecificRecordBuilder {
     Assert.assertEquals(interop.getRecordField(), copy.getRecordField());
     Assert.assertEquals(interop.getStringField(), copy.getStringField());
     Assert.assertEquals(interop.getUnionField(), copy.getUnionField());
+    Assert.assertEquals(interop, copy);
   }
   
   @Test(expected=org.apache.avro.AvroRuntimeException.class)


Reply via email to