[ https://issues.apache.org/jira/browse/ATLAS-3204?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16836906#comment-16836906 ]
Na Li commented on ATLAS-3204: ------------------------------ [~sarath.ku...@gmail.com] Can you take a look at this issue? With the patch ATLAS-3204.001.patch, Integration test in HiveMetastoreHookIT, ImpalaLineageHookIT and ImpalaLineageToolIT all pass. But two tests in HiveHookIT failed. We need to fix this issue as soon as possible. > HMS hook fails to process create_table event due to ATLAS-3197 > -------------------------------------------------------------- > > Key: ATLAS-3204 > URL: https://issues.apache.org/jira/browse/ATLAS-3204 > Project: Atlas > Issue Type: New Feature > Components: atlas-core > Affects Versions: 2.0.0 > Reporter: Na Li > Priority: Major > Attachments: ATLAS-3204.001.patch > > > ATLAS-3197 creates Hive DDL entity even in HMS hook when processing > create_table event, where the HiveContext is null. That causes > NullPointerException. > The fix should generate AtlasEntity based on its in HiveHook or HMS hook. > {code} > 2019-05-09 23:15:37,936 ERROR - [main:] ~ > HiveMetastoreHook.handleEvent(org.apache.hadoop.hive.metastore.events.CreateTableEvent@1850f2da): > failed to process operation {} (HiveMetastoreHookImpl$HiveMetastoreHook:169) > java.lang.NullPointerException > at > org.apache.atlas.hive.hook.events.BaseHiveEvent.createHiveDDLEntity(BaseHiveEvent.java:692) > at > org.apache.atlas.hive.hook.events.BaseHiveEvent.createHiveDDLEntity(BaseHiveEvent.java:671) > at > org.apache.atlas.hive.hook.events.CreateTable.processTable(CreateTable.java:153) > at > org.apache.atlas.hive.hook.events.CreateTable.getHiveMetastoreEntities(CreateTable.java:77) > at > org.apache.atlas.hive.hook.events.CreateTable.getNotificationMessages(CreateTable.java:52) > at > org.apache.atlas.hive.hook.HiveMetastoreHookImpl$HiveMetastoreHook.handleEvent(HiveMetastoreHookImpl.java:166) > at > org.apache.atlas.hive.hook.HiveMetastoreHookImpl.onCreateTable(HiveMetastoreHookImpl.java:77) > at > org.apache.hadoop.hive.metastore.MetaStoreListenerNotifier$20.notify(MetaStoreListenerNotifier.java:92) > at > org.apache.hadoop.hive.metastore.MetaStoreListenerNotifier.notifyEvent(MetaStoreListenerNotifier.java:267) > at > org.apache.hadoop.hive.metastore.MetaStoreListenerNotifier.notifyEvent(MetaStoreListenerNotifier.java:329) > at > org.apache.hadoop.hive.metastore.MetaStoreListenerNotifier.notifyEvent(MetaStoreListenerNotifier.java:367) > at > org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.create_table_core(HiveMetaStore.java:1999) > at > org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.create_table_core(HiveMetaStore.java:1786) > at > org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.create_table_with_environment_context(HiveMetaStore.java:2035) > 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:147) > at > org.apache.hadoop.hive.metastore.RetryingHMSHandler.invoke(RetryingHMSHandler.java:108) > at com.sun.proxy.$Proxy28.create_table_with_environment_context(Unknown > Source) > at > org.apache.hadoop.hive.metastore.HiveMetaStoreClient.create_table_with_environment_context(HiveMetaStoreClient.java:2867) > at > org.apache.hadoop.hive.ql.metadata.SessionHiveMetaStoreClient.create_table_with_environment_context(SessionHiveMetaStoreClient.java:121) > at > org.apache.hadoop.hive.metastore.HiveMetaStoreClient.createTable(HiveMetaStoreClient.java:837) > at > org.apache.hadoop.hive.metastore.HiveMetaStoreClient.createTable(HiveMetaStoreClient.java:822) > 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.RetryingMetaStoreClient.invoke(RetryingMetaStoreClient.java:212) > at com.sun.proxy.$Proxy29.createTable(Unknown Source) > at org.apache.hadoop.hive.ql.metadata.Hive.createTable(Hive.java:921) > at org.apache.hadoop.hive.ql.metadata.Hive.createTable(Hive.java:937) > at org.apache.hadoop.hive.ql.exec.DDLTask.createTable(DDLTask.java:4954) > at org.apache.hadoop.hive.ql.exec.DDLTask.execute(DDLTask.java:428) > at org.apache.hadoop.hive.ql.exec.Task.executeTask(Task.java:205) > at > org.apache.hadoop.hive.ql.exec.TaskRunner.runSequential(TaskRunner.java:97) > at org.apache.hadoop.hive.ql.Driver.launchTask(Driver.java:2664) > at org.apache.hadoop.hive.ql.Driver.execute(Driver.java:2335) > at org.apache.hadoop.hive.ql.Driver.runInternal(Driver.java:2011) > at org.apache.hadoop.hive.ql.Driver.run(Driver.java:1709) > at org.apache.hadoop.hive.ql.Driver.run(Driver.java:1698) > at > org.apache.atlas.impala.ImpalaLineageITBase.runCommandWithDelay(ImpalaLineageITBase.java:234) > at > org.apache.atlas.impala.ImpalaLineageITBase.runCommandWithDelay(ImpalaLineageITBase.java:229) > at > org.apache.atlas.impala.ImpalaLineageITBase.runCommand(ImpalaLineageITBase.java:225) > at > org.apache.atlas.impala.ImpalaLineageITBase.createTable(ImpalaLineageITBase.java:174) > at > org.apache.atlas.impala.ImpalaLineageITBase.createTable(ImpalaLineageITBase.java:170) > at > org.apache.atlas.impala.ImpalaLineageITBase.createTable(ImpalaLineageITBase.java:165) > at > org.apache.atlas.impala.hook.ImpalaLineageHookIT.testCreateView(ImpalaLineageHookIT.java:61) > 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.testng.internal.MethodInvocationHelper.invokeMethod(MethodInvocationHelper.java:85) > at org.testng.internal.Invoker.invokeMethod(Invoker.java:659) > at org.testng.internal.Invoker.invokeTestMethod(Invoker.java:845) > at org.testng.internal.Invoker.invokeTestMethods(Invoker.java:1153) > at > org.testng.internal.TestMethodWorker.invokeTestMethods(TestMethodWorker.java:125) > at org.testng.internal.TestMethodWorker.run(TestMethodWorker.java:108) > at org.testng.TestRunner.privateRun(TestRunner.java:771) > at org.testng.TestRunner.run(TestRunner.java:621) > at org.testng.SuiteRunner.runTest(SuiteRunner.java:357) > at org.testng.SuiteRunner.runSequentially(SuiteRunner.java:352) > at org.testng.SuiteRunner.privateRun(SuiteRunner.java:310) > at org.testng.SuiteRunner.run(SuiteRunner.java:259) > at org.testng.SuiteRunnerWorker.runSuite(SuiteRunnerWorker.java:52) > at org.testng.SuiteRunnerWorker.run(SuiteRunnerWorker.java:86) > at org.testng.TestNG.runSuitesSequentially(TestNG.java:1199) > at org.testng.TestNG.runSuitesLocally(TestNG.java:1124) > at org.testng.TestNG.run(TestNG.java:1032) > at org.testng.IDEARemoteTestNG.run(IDEARemoteTestNG.java:72) > {code} -- This message was sent by Atlassian JIRA (v7.6.3#76005)