[
https://issues.apache.org/jira/browse/HIVE-29012?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
ASF GitHub Bot updated HIVE-29012:
----------------------------------
Labels: pull-request-available (was: )
> NPE in ExplainTask when protologging posthook is enabled
> --------------------------------------------------------
>
> Key: HIVE-29012
> URL: https://issues.apache.org/jira/browse/HIVE-29012
> Project: Hive
> Issue Type: Bug
> Reporter: Raghav Aggarwal
> Assignee: Raghav Aggarwal
> Priority: Major
> Labels: pull-request-available
>
> The conf object is null when post hook is ran in the below line
> *[https://github.com/apache/hive/blob/b240eb3266d4736424678d6c71c3c6f6a6fdbf38/ql/src/java/org/apache/hadoop/hive/ql/exec/ExplainTask.java#L1006*]
> *NOTE: This issue is observed when hive.hook.proto.base-directory is set and
> can be seen while running schematool ({_}schematool -dbType hive -initSchema
> -metaDbType mysql{_}) as well.*
>
> *Stacktrace:*
> {code:java}
> 025-06-13 13:26:43,348 ERROR hooks.HiveHookEventProtoPartialBuilder:
> Unexpected exception while serializing json.
> java.lang.NullPointerException: Cannot invoke
> "org.apache.hadoop.hive.conf.HiveConf.getIntVar(org.apache.hadoop.hive.conf.HiveConf$ConfVars)"
> because "this.conf" is null
> at
> org.apache.hadoop.hive.ql.exec.ExplainTask.outputPlan(ExplainTask.java:1006)
> at
> org.apache.hadoop.hive.ql.exec.ExplainTask.outputPlan(ExplainTask.java:1172)
> at
> org.apache.hadoop.hive.ql.exec.ExplainTask.outputPlan(ExplainTask.java:952)
> at
> org.apache.hadoop.hive.ql.exec.ExplainTask.outputPlan(ExplainTask.java:875)
> at
> org.apache.hadoop.hive.ql.exec.ExplainTask.outputPlan(ExplainTask.java:1233)
> at
> org.apache.hadoop.hive.ql.exec.ExplainTask.outputStagePlans(ExplainTask.java:1378)
> at
> org.apache.hadoop.hive.ql.exec.ExplainTask.getJSONPlan(ExplainTask.java:367)
> at
> org.apache.hadoop.hive.ql.exec.ExplainTask.getJSONPlan(ExplainTask.java:268)
> at
> org.apache.hadoop.hive.ql.hooks.HiveHookEventProtoPartialBuilder.getExplainJSON(HiveHookEventProtoPartialBuilder.java:84)
> at
> org.apache.hadoop.hive.ql.hooks.HiveHookEventProtoPartialBuilder.addQueryObj(HiveHookEventProtoPartialBuilder.java:75)
> at
> org.apache.hadoop.hive.ql.hooks.HiveHookEventProtoPartialBuilder.build(HiveHookEventProtoPartialBuilder.java:55)
> at
> org.apache.hadoop.hive.ql.hooks.HiveProtoLoggingHook$EventLogger.writeEvent(HiveProtoLoggingHook.java:315)
> at
> org.apache.hadoop.hive.ql.hooks.HiveProtoLoggingHook$EventLogger.lambda$handle$1(HiveProtoLoggingHook.java:277)
> at
> java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539)
> at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
> at
> java.base/java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:304)
> at
> java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
> at
> java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
> at java.base/java.lang.Thread.run(Thread.java:840) {code}
--
This message was sent by Atlassian Jira
(v8.20.10#820010)