You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hbase.apache.org by ns...@apache.org on 2011/10/11 04:01:50 UTC

svn commit: r1181360 - in /hbase/branches/0.89/src/main/java/org/apache/hadoop/hbase: io/HbaseObjectWritable.java ipc/HBaseRPCProtocolVersion.java

Author: nspiegelberg
Date: Tue Oct 11 02:01:50 2011
New Revision: 1181360

URL: http://svn.apache.org/viewvc?rev=1181360&view=rev
Log:
Make HBase client backwards compatible

Summary:
HBase client RPC version was bumped up, fixed this to the old RPC. Added
exception logging.

Test Plan:
Tested with cluster test tool

DiffCamp Revision: 148658
Reviewed By: pkhaitan
CC: pkhaitan, hbase@lists
Revert Plan:
OK

Modified:
    hbase/branches/0.89/src/main/java/org/apache/hadoop/hbase/io/HbaseObjectWritable.java
    hbase/branches/0.89/src/main/java/org/apache/hadoop/hbase/ipc/HBaseRPCProtocolVersion.java

Modified: hbase/branches/0.89/src/main/java/org/apache/hadoop/hbase/io/HbaseObjectWritable.java
URL: http://svn.apache.org/viewvc/hbase/branches/0.89/src/main/java/org/apache/hadoop/hbase/io/HbaseObjectWritable.java?rev=1181360&r1=1181359&r2=1181360&view=diff
==============================================================================
--- hbase/branches/0.89/src/main/java/org/apache/hadoop/hbase/io/HbaseObjectWritable.java (original)
+++ hbase/branches/0.89/src/main/java/org/apache/hadoop/hbase/io/HbaseObjectWritable.java Tue Oct 11 02:01:50 2011
@@ -159,7 +159,6 @@ public class HbaseObjectWritable impleme
     addToMap(WritableByteArrayComparable.class, code++);
     addToMap(FirstKeyOnlyFilter.class, code++);
     addToMap(DependentColumnFilter.class, code++);
-    addToMap(ColumnPrefixFilter.class, code++);
 
     addToMap(Delete [].class, code++);
 
@@ -172,6 +171,7 @@ public class HbaseObjectWritable impleme
 
     // List
     addToMap(List.class, code++);
+    addToMap(ColumnPrefixFilter.class, code++);
   }
 
   private Class<?> declaredClass;
@@ -450,13 +450,19 @@ public class HbaseObjectWritable impleme
         try {
           instanceClass = getClassByName(conf, className);
         } catch (ClassNotFoundException e) {
-          throw new RuntimeException("Can't find class " + className);
+          LOG.error("Can't find class " + className, e);
+          throw new IOException("Can't find class " + className, e);
         }
       } else {
         instanceClass = CODE_TO_CLASS.get(b);
       }
       Writable writable = WritableFactories.newInstance(instanceClass, conf);
-      writable.readFields(in);
+      try {
+        writable.readFields(in);
+      } catch (Exception e) {
+        LOG.error("Error in readFields", e);
+        throw new IOException("Error in readFields" , e);
+      }
       instance = writable;
       if (instanceClass == NullInstance.class) {  // null
         declaredClass = ((NullInstance)instance).declaredClass;

Modified: hbase/branches/0.89/src/main/java/org/apache/hadoop/hbase/ipc/HBaseRPCProtocolVersion.java
URL: http://svn.apache.org/viewvc/hbase/branches/0.89/src/main/java/org/apache/hadoop/hbase/ipc/HBaseRPCProtocolVersion.java?rev=1181360&r1=1181359&r2=1181360&view=diff
==============================================================================
--- hbase/branches/0.89/src/main/java/org/apache/hadoop/hbase/ipc/HBaseRPCProtocolVersion.java (original)
+++ hbase/branches/0.89/src/main/java/org/apache/hadoop/hbase/ipc/HBaseRPCProtocolVersion.java Tue Oct 11 02:01:50 2011
@@ -76,8 +76,8 @@ public interface HBaseRPCProtocolVersion
    * <li>Version 22: HBASE-2209. Added List support to RPC</li>
    * <li>Version 23: HBASE-2066, multi-put.</li>
    * <li>Version 24: HBASE-2473, create table with regions.</li>
-   * <li>Version 25: HBCK changes to master and RS
+   * <li>Version 24: HBCK changes to master and RS
    * </ul>
    */
-  public static final long versionID = 25L;
+  public static final long versionID = 24L;
 }