Na Li created ATLAS-3204:
----------------------------

             Summary: 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


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