I have tried the patch.
The result looks bad. An ArrayIndexOutOfBoundsException is thrown in
v5.HColumnDescriptor.readFields at the following line:
this.compressionType = CompressionType.values()[ordinal];
Here is the log of the upgrade procedure:
08/07/24 20:18:16 FATAL util.Migrate: Upgrade failed
java.lang.ArrayIndexOutOfBoundsException: 926169139
at
org.apache.hadoop.hbase.util.migration.v5.HColumnDescriptor.readFields(HColumnDescriptor.java:355)
at
org.apache.hadoop.hbase.util.migration.v5.HTableDescriptor.readFields(HTableDescriptor.java:263)
at
org.apache.hadoop.hbase.util.migration.v5.HRegionInfo.readFields(HRegionInfo.java:419)
at org.apache.hadoop.hbase.util.Writables.getWritable(Writables.java:84)
at
org.apache.hadoop.hbase.util.migration.v5.MetaUtils.scanRootRegion(MetaUtils.java:203)
at
org.apache.hadoop.hbase.util.Migrate.rewriteMetaHRegionInfo(Migrate.java:228)
at org.apache.hadoop.hbase.util.Migrate.migrateToV5(Migrate.java:209)
at org.apache.hadoop.hbase.util.Migrate.run(Migrate.java:187)
at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:65)
at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:79)
at org.apache.hadoop.hbase.util.Migrate.main(Migrate.java:446)
--
Renaud Delbru
stack wrote:
The messages 'java.io.IOException: Stream closed' should go away when
you complete your migration (HBASE-761).
Regards the table name, looks like names that were legal in 0.1 are
not so in 0.2. We need to fix. Mind trying this patch?
Index: src/java/org/apache/hadoop/hbase/HTableDescriptor.java
===================================================================
--- src/java/org/apache/hadoop/hbase/HTableDescriptor.java
(revision 679235)
+++ src/java/org/apache/hadoop/hbase/HTableDescriptor.java
(working copy)
@@ -214,7 +214,7 @@
throw new IllegalArgumentException("Name is null or empty");
}
for (int i = 0; i < b.length; i++) {
- if (Character.isLetterOrDigit(b[i]) || b[i] == '_') {
+ if (Character.isLetterOrDigit(b[i]) || b[i] == '_' || (i > 0 &&
b[i] == '-')) {
continue;
}
throw new IllegalArgumentException("Illegal character <" + b[i]
+ ">. " +
If it doesn't work for you, maybe you can come up w/ a patch that does
(smile).
Thanks,
St.Ack
Renaud Delbru wrote:
I have replaced the hbase.version by the one in HBase 0.13.
Then, I started the upgrade. The upgrade failed because the table
name contains invalid characters (see the attached log). Any advices ?
There is also a IOException: stream closed (but I am not sure that it
is a big issue).