[ 
https://issues.apache.org/jira/browse/ATLAS-3204?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Na Li updated ATLAS-3204:
-------------------------
    Attachment: ATLAS-3204.001.patch

> 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)

Reply via email to