Hi Ted,
Regarding TestHBaseStorage, does it hang in hadoop 20 or 23? I assume that you're not setting "-Dhadoopversion" so using hadoop 20 by default. In hadoop 20, TestHBaseStorage passes for me with your patch. I.e. "ant clean test -Dtestcase=TestHBaseStorage -Dhadoopversion=20" passes.
[junit] Running org.apache.pig.test.TestHBaseStorage
[junit] Tests run: 23, Failures: 0, Errors: 0, Time elapsed: 131.728 sec
If it doesn't pass for you, it should be some environment issue. (e.g. did you set umask 0022?)
However, it does time out in hadoop 23, and I believe that it's expected since hbase jar from the maven repository is not binary compatible with hadoop 23. I.e. "ant clean test -Dtestcase=TestHBaseStorage -Dhadoopversion=23" fails with time out error, and the following error can be found in the test log (build/test/logs/TEST-org.apache.pig.test.TestHBaseStorage.txt):
Caused by: java.lang.ClassNotFoundException: org.apache.hadoop.hdfs.protocol.FSConstants$SafeModeAction
at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
... 7 more
I ran into the same issue while bumping hbase to 0.94, but it seem applied to 0.90 (current version in trunk) as well. Please see HBASE-5680 for more details.
Please anyone corrects me if I am wrong about TestHBaseStorage in hadoop 23.
Thanks!
Submitted fix with pull request from tmalaska/pig github. Let me know what I need to get this into PIG. My client would like to use HBaseStorage from PIG instead of a fixed version I gave them in a jar.