Return-Path: Delivered-To: apmail-hadoop-avro-commits-archive@minotaur.apache.org Received: (qmail 48033 invoked from network); 24 Sep 2009 21:34:35 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.3) by minotaur.apache.org with SMTP; 24 Sep 2009 21:34:35 -0000 Received: (qmail 79816 invoked by uid 500); 24 Sep 2009 21:34:35 -0000 Delivered-To: apmail-hadoop-avro-commits-archive@hadoop.apache.org Received: (qmail 79791 invoked by uid 500); 24 Sep 2009 21:34:35 -0000 Mailing-List: contact avro-commits-help@hadoop.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: avro-dev@hadoop.apache.org Delivered-To: mailing list avro-commits@hadoop.apache.org Received: (qmail 79781 invoked by uid 99); 24 Sep 2009 21:34:34 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 24 Sep 2009 21:34:34 +0000 X-ASF-Spam-Status: No, hits=-2000.0 required=10.0 tests=ALL_TRUSTED X-Spam-Check-By: apache.org Received: from [140.211.11.4] (HELO eris.apache.org) (140.211.11.4) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 24 Sep 2009 21:34:33 +0000 Received: by eris.apache.org (Postfix, from userid 65534) id 783AE2388893; Thu, 24 Sep 2009 21:34:12 +0000 (UTC) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r818632 - in /hadoop/avro/trunk: CHANGES.txt src/java/org/apache/avro/generic/GenericDatumReader.java Date: Thu, 24 Sep 2009 21:34:07 -0000 To: avro-commits@hadoop.apache.org From: cutting@apache.org X-Mailer: svnmailer-1.0.8 Message-Id: <20090924213412.783AE2388893@eris.apache.org> X-Virus-Checked: Checked by ClamAV on apache.org Author: cutting Date: Thu Sep 24 21:34:06 2009 New Revision: 818632 URL: http://svn.apache.org/viewvc?rev=818632&view=rev Log: AVRO-121. Permit reflect and specific datum readers to read data written with a different version of the schema than is current. Modified: hadoop/avro/trunk/CHANGES.txt hadoop/avro/trunk/src/java/org/apache/avro/generic/GenericDatumReader.java Modified: hadoop/avro/trunk/CHANGES.txt URL: http://svn.apache.org/viewvc/hadoop/avro/trunk/CHANGES.txt?rev=818632&r1=818631&r2=818632&view=diff ============================================================================== --- hadoop/avro/trunk/CHANGES.txt (original) +++ hadoop/avro/trunk/CHANGES.txt Thu Sep 24 21:34:06 2009 @@ -10,6 +10,10 @@ NEW FEATURES + AVRO-121. Permit reflect and specific datum readers to read data + written with a different version of the schema than is current. + (cutting) + IMPROVEMENTS AVRO-99. Use Boost framework for C++ unit tests. Modified: hadoop/avro/trunk/src/java/org/apache/avro/generic/GenericDatumReader.java URL: http://svn.apache.org/viewvc/hadoop/avro/trunk/src/java/org/apache/avro/generic/GenericDatumReader.java?rev=818632&r1=818631&r2=818632&view=diff ============================================================================== --- hadoop/avro/trunk/src/java/org/apache/avro/generic/GenericDatumReader.java (original) +++ hadoop/avro/trunk/src/java/org/apache/avro/generic/GenericDatumReader.java Thu Sep 24 21:34:06 2009 @@ -44,15 +44,18 @@ public GenericDatumReader(Schema actual) { setSchema(actual); + setExpected(actual); } public GenericDatumReader(Schema actual, Schema expected) { - this(actual); - this.expected = expected; + setSchema(actual); + setExpected(expected); } public void setSchema(Schema actual) { this.actual = actual; } + public void setExpected(Schema expected) { this.expected = expected; } + @SuppressWarnings("unchecked") public D read(D reuse, Decoder in) throws IOException { return (D) read(reuse, actual, expected != null ? expected : actual, in);