cdmikechen opened a new issue #736: hoodie-hive-hundle don't have hive jars URL: https://github.com/apache/incubator-hudi/issues/736 when using `run_sync_tool.sh` to sync a table like that: ```shell ./run_sync_tool.sh --user hdfs --database xxx --jdbc-url "jdbc:hive2://ip:10000/" --base-path /hive/warehouse/xxx/xx/ --table xx --pass "" ``` hoodie return this error: ```log 2019-06-14 04:33:25,746 ERROR [main] metastore.RetryingHMSHandler (RetryingHMSHandler.java:invokeInternal(204)) - java.lang.NoClassDefFoundError: org/datanucleus/NucleusContext at java.lang.Class.forName0(Native Method) at java.lang.Class.forName(Class.java:348) at org.apache.hadoop.hive.metastore.MetaStoreUtils.getClass(MetaStoreUtils.java:1674) at org.apache.hadoop.hive.metastore.RawStoreProxy.getProxy(RawStoreProxy.java:64) at org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.newRawStoreForConf(HiveMetaStore.java:628) at org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.getMSForConf(HiveMetaStore.java:594) at org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.getMS(HiveMetaStore.java:588) at org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.createDefaultDB(HiveMetaStore.java:655) at org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.init(HiveMetaStore.java:431) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at org.apache.hadoop.hive.metastore.RetryingHMSHandler.invokeInternal(RetryingHMSHandler.java:148) at org.apache.hadoop.hive.metastore.RetryingHMSHandler.invoke(RetryingHMSHandler.java:107) at org.apache.hadoop.hive.metastore.RetryingHMSHandler.<init>(RetryingHMSHandler.java:79) at org.apache.hadoop.hive.metastore.RetryingHMSHandler.getProxy(RetryingHMSHandler.java:92) at org.apache.hadoop.hive.metastore.HiveMetaStore.newRetryingHMSHandler(HiveMetaStore.java:6891) at org.apache.hadoop.hive.metastore.HiveMetaStoreClient.<init>(HiveMetaStoreClient.java:164) at org.apache.hadoop.hive.metastore.HiveMetaStoreClient.<init>(HiveMetaStoreClient.java:129) at com.uber.hoodie.hive.HoodieHiveClient.<init>(HoodieHiveClient.java:102) at com.uber.hoodie.hive.HiveSyncTool.<init>(HiveSyncTool.java:61) at com.uber.hoodie.hive.HiveSyncTool.main(HiveSyncTool.java:189) Caused by: java.lang.ClassNotFoundException: org.datanucleus.NucleusContext at java.net.URLClassLoader.findClass(URLClassLoader.java:382) at java.lang.ClassLoader.loadClass(ClassLoader.java:424) at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:349) at java.lang.ClassLoader.loadClass(ClassLoader.java:357) ... 23 more ``` I found this class is in in `hoodie-hive-bundle` pom (`hive-metastore`), but when packaged a `hoodie-hive-bundle-0.4.8-SNAPSHOT.jar`, this class is missing. And in `run_sync_tool.sh`, it doesn't include hive lib about `hive-metastore` and its dependencies lib. I think maybe we can include hive jars in `hoodie-hive-bundle` pom.
---------------------------------------------------------------- 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
