liujiayi771 commented on a change in pull request #630: HBASE-23030 Update
completebulkload hadoop jar usage in related doc
URL: https://github.com/apache/hbase/pull/630#discussion_r325075142
##########
File path: src/main/asciidoc/_chapters/architecture.adoc
##########
@@ -2462,7 +2462,7 @@ This process is not optimally efficient, so users should
take care to minimize t
[[arch.bulk.load.complete.help]]
[source,bash]
----
-$ hadoop jar hbase-server-VERSION.jar completebulkload [-c
/path/to/hbase/config/hbase-site.xml] /user/todd/myoutput mytable
+$ hadoop jar hbase-mapreduce-VERSION.jar completebulkload [-c
/path/to/hbase/config/hbase-site.xml] /user/todd/myoutput mytable
Review comment:
HBASE-18698 moves Driver to be the main-class in hbase-mapreduce jar rather
than hbase-server jar. hbase-server jar has no Main-Class in MANIFEST.MF, so
when I use hadoop jar hbase-server-VERSION.jar completebulkload, hadoop cannot
find the main class in hbase-server jar, and throws exception like this:
```
Exception in thread "main" java.lang.ClassNotFoundException: completebulkload
at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:348)
at org.apache.hadoop.util.RunJar.run(RunJar.java:311)
at org.apache.hadoop.util.RunJar.main(RunJar.java:232)
```
According to HBASE-18698, it adds `Main-Class:
org/apache/hadoop/hbase/mapreduce/Driver` in hbase-mapreduce jar, so the
correct way to use completebulkload is hadoop jar hbase-mapreduce-VERSION.jar
completebulkload.
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
[email protected]
With regards,
Apache Git Services