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

Raghav Aggarwal updated HIVE-29264:
-----------------------------------
    Description: 
In *alter_table_column_stats.q,* the _hive.metastore.try.direct.sql=false_ for 
partitioned table and following command is running:
{code:java}
analyze table testpart0 compute statistics for columns; {code}
but the JDO implementation for _get_aggr_stats_for_ is to throw MetaException 
but the exception is not thrown. As soon I replace it with set 
metaconf:metastore.try.direct.sql=false then exception is observed in 
{code:java}
itests/qtest/target/surefire-reports/org.apache.hadoop.hive.cli.TestMiniLlapLocalCliDriver-output.txt
 {code}
but q file is not failing.

In short,
 # replace hivename with varname for metaconfs
 # investigate whether error be thrown if JDO fails.

Attaching TestMiniLlapLocalCliDriver-output.txt showing 
{code:java}
metastore.RetryingHMSHandler: MetaException(message:Jdo path is not implemented 
for stats aggr.) {code}
 

*Stacktrace:*
{code:java}
2025-10-10T00:04:54,397 ERROR [dc1b1868-d07a-4dcc-9cbd-6a0b7eca7e46 main] 
metastore.RetryingHMSHandler: MetaException(message:Jdo path is not implemented 
for stats aggr.)      at 
org.apache.hadoop.hive.metastore.ObjectStore$28.getJdoResult(ObjectStore.java:10076)
 at 
org.apache.hadoop.hive.metastore.ObjectStore$28.getJdoResult(ObjectStore.java:10063)
 at 
org.apache.hadoop.hive.metastore.ObjectStore$GetHelper.run(ObjectStore.java:4415)
    at 
org.apache.hadoop.hive.metastore.ObjectStore.get_aggr_stats_for(ObjectStore.java:10082)
      at 
org.apache.hadoop.hive.metastore.ObjectStore.get_aggr_stats_for(ObjectStore.java:10050)
      at 
java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
        at java.base/java.lang.reflect.Method.invoke(Method.java:580)   at 
org.apache.hadoop.hive.metastore.RawStoreProxy.invoke(RawStoreProxy.java:97) at 
jdk.proxy2/jdk.proxy2.$Proxy55.get_aggr_stats_for(Unknown Source)    at 
org.apache.hadoop.hive.metastore.HMSHandler.get_aggr_stats_for(HMSHandler.java:9409)
 at 
java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
        at java.base/java.lang.reflect.Method.invoke(Method.java:580)   at 
org.apache.hadoop.hive.metastore.RetryingHMSHandler.invokeInternal(RetryingHMSHandler.java:91)
       at 
org.apache.hadoop.hive.metastore.AbstractHMSHandlerProxy.invoke(AbstractHMSHandlerProxy.java:82)
     at jdk.proxy2/jdk.proxy2.$Proxy56.get_aggr_stats_for(Unknown Source)    at 
org.apache.hadoop.hive.metastore.client.ThriftHiveMetaStoreClient.getAggrColStatsFor(ThriftHiveMetaStoreClient.java:1167)
    at 
org.apache.hadoop.hive.ql.metadata.HiveMetaStoreClientWithLocalCache.getAggrColStatsFor(HiveMetaStoreClientWithLocalCache.java:400)
  at 
org.apache.hadoop.hive.ql.metadata.SessionHiveMetaStoreClient.getAggrColStatsFor(SessionHiveMetaStoreClient.java:2383)
       at 
org.apache.hadoop.hive.metastore.client.MetaStoreClientWrapper.getAggrColStatsFor(MetaStoreClientWrapper.java:1032)
  at 
java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
        at java.base/java.lang.reflect.Method.invoke(Method.java:580)   at 
org.apache.hadoop.hive.metastore.client.SynchronizedMetaStoreClient$SynchronizedHandler.invoke(SynchronizedMetaStoreClient.java:69)
  at jdk.proxy2/jdk.proxy2.$Proxy57.getAggrColStatsFor(Unknown Source)    at 
org.apache.hadoop.hive.metastore.client.MetaStoreClientWrapper.getAggrColStatsFor(MetaStoreClientWrapper.java:1032)
  at 
org.apache.hadoop.hive.metastore.client.BaseMetaStoreClient.getAggrColStatsFor(BaseMetaStoreClient.java:769)
 at 
java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
        at java.base/java.lang.reflect.Method.invoke(Method.java:580)   at 
org.apache.hadoop.hive.metastore.RetryingMetaStoreClient.invoke(RetryingMetaStoreClient.java:232)
    at jdk.proxy2/jdk.proxy2.$Proxy57.getAggrColStatsFor(Unknown Source)    at 
org.apache.hadoop.hive.ql.metadata.Hive.getAggrColStatsFor(Hive.java:6244)   at 
org.apache.hadoop.hive.ql.stats.StatsUtils.collectStatistics(StatsUtils.java:379)
    at 
org.apache.hadoop.hive.ql.stats.StatsUtils.collectStatistics(StatsUtils.java:194)
    at 
org.apache.hadoop.hive.ql.stats.StatsUtils.collectStatistics(StatsUtils.java:182)
    at 
org.apache.hadoop.hive.ql.optimizer.stats.annotation.StatsRulesProcFactory$TableScanStatsRule.process(StatsRulesProcFactory.java:177)
        at 
org.apache.hadoop.hive.ql.lib.DefaultRuleDispatcher.dispatch(DefaultRuleDispatcher.java:90)
  at 
org.apache.hadoop.hive.ql.lib.DefaultGraphWalker.dispatchAndReturn(DefaultGraphWalker.java:105)
      at 
org.apache.hadoop.hive.ql.lib.DefaultGraphWalker.dispatch(DefaultGraphWalker.java:89)
        at 
org.apache.hadoop.hive.ql.lib.LevelOrderWalker.walk(LevelOrderWalker.java:148)  
     at 
org.apache.hadoop.hive.ql.lib.LevelOrderWalker.startWalking(LevelOrderWalker.java:125)
       at 
org.apache.hadoop.hive.ql.optimizer.stats.annotation.AnnotateWithStatistics.transform(AnnotateWithStatistics.java:84)
        at 
org.apache.hadoop.hive.ql.parse.TezCompiler.runStatsAnnotation(TezCompiler.java:472)
 at 
org.apache.hadoop.hive.ql.parse.TezCompiler.optimizeOperatorPlan(TezCompiler.java:202)
       at 
org.apache.hadoop.hive.ql.parse.TaskCompiler.compile(TaskCompiler.java:182)  at 
org.apache.hadoop.hive.ql.parse.SemanticAnalyzer.compilePlan(SemanticAnalyzer.java:13150)
    at 
org.apache.hadoop.hive.ql.parse.SemanticAnalyzer.analyzeInternal(SemanticAnalyzer.java:13378)
        at 
org.apache.hadoop.hive.ql.parse.SemanticAnalyzer.analyzeInternal(SemanticAnalyzer.java:12725)
        at 
org.apache.hadoop.hive.ql.parse.ColumnStatsSemanticAnalyzer.analyze(ColumnStatsSemanticAnalyzer.java:671)
    at org.apache.hadoop.hive.ql.Compiler.analyze(Compiler.java:224)        at 
org.apache.hadoop.hive.ql.Compiler.compile(Compiler.java:109)        at 
org.apache.hadoop.hive.ql.Driver.compile(Driver.java:498)    at 
org.apache.hadoop.hive.ql.Driver.compileInternal(Driver.java:450)    at 
org.apache.hadoop.hive.ql.Driver.compileAndRespond(Driver.java:414)  at 
org.apache.hadoop.hive.ql.Driver.compileAndRespond(Driver.java:408)  at 
org.apache.hadoop.hive.ql.reexec.ReExecDriver.compileAndRespond(ReExecDriver.java:126)
       at 
org.apache.hadoop.hive.ql.reexec.ReExecDriver.run(ReExecDriver.java:234)     at 
org.apache.hadoop.hive.cli.CliDriver.processLocalCmd(CliDriver.java:259)     at 
org.apache.hadoop.hive.cli.CliDriver.processCmd1(CliDriver.java:203) at 
org.apache.hadoop.hive.cli.CliDriver.processCmd(CliDriver.java:129)  at 
org.apache.hadoop.hive.cli.CliDriver.processLine(CliDriver.java:430) at 
org.apache.hadoop.hive.cli.CliDriver.processLine(CliDriver.java:358) at 
org.apache.hadoop.hive.ql.QTestUtil.executeClientInternal(QTestUtil.java:760)   
     at org.apache.hadoop.hive.ql.QTestUtil.executeClient(QTestUtil.java:730)   
     at 
org.apache.hadoop.hive.cli.control.CoreCliDriver.runTest(CoreCliDriver.java:115)
     at 
org.apache.hadoop.hive.cli.control.CliAdapter.runTest(CliAdapter.java:139)   at 
org.apache.hadoop.hive.cli.TestMiniLlapLocalCliDriver.testCliDriver(TestMiniLlapLocalCliDriver.java:62)
      at 
java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
        at java.base/java.lang.reflect.Method.invoke(Method.java:580)   at 
org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:59)
 at 
org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
  at 
org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:56)
   at 
org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
    at 
org.apache.hadoop.hive.cli.control.CliAdapter$2$1.evaluate(CliAdapter.java:118) 
     at org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:306)     at 
org.junit.runners.BlockJUnit4ClassRunner$1.evaluate(BlockJUnit4ClassRunner.java:100)
 at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:366)        at 
org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:103)
   at 
org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:63)
    at org.junit.runners.ParentRunner$4.run(ParentRunner.java:331)  at 
org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:79)      at 
org.junit.runners.ParentRunner.runChildren(ParentRunner.java:329)    at 
org.junit.runners.ParentRunner.access$100(ParentRunner.java:66)      at 
org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:293)     at 
org.junit.runners.ParentRunner.run(ParentRunner.java:413)    at 
org.junit.runners.Suite.runChild(Suite.java:128)     at 
org.junit.runners.Suite.runChild(Suite.java:27)      at 
org.junit.runners.ParentRunner$4.run(ParentRunner.java:331)  at 
org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:79)      at 
org.junit.runners.ParentRunner.runChildren(ParentRunner.java:329)    at 
org.junit.runners.ParentRunner.access$100(ParentRunner.java:66)      at 
org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:293)     at 
org.apache.hadoop.hive.cli.control.CliAdapter$1$1.evaluate(CliAdapter.java:89)  
     at org.junit.rules.RunRules.evaluate(RunRules.java:20)  at 
org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:306)     at 
org.junit.runners.ParentRunner.run(ParentRunner.java:413)    at 
org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:316)
     at 
org.apache.maven.surefire.junit4.JUnit4Provider.executeWithRerun(JUnit4Provider.java:240)
    at 
org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:214)
      at 
org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:155) 
     at 
org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:385)
      at 
org.apache.maven.surefire.booter.ForkedBooter.execute(ForkedBooter.java:162) at 
org.apache.maven.surefire.booter.ForkedBooter.run(ForkedBooter.java:507)     at 
org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:495)
 {code}

  was:
In alter_table_column_stats.q, the hive.metastore.try.direct.sql=false for 
partitioned table and following command is running:
{code:java}
analyze table testpart0 compute statistics for columns; {code}
but the JDO implementation for _get_aggr_stats_for_ is to throw MetaException 
but the exception is not thrown. As soon I replace it with set 
metaconf:metastore.try.direct.sql=false then exception is observed in 
{code:java}
itests/qtest/target/surefire-reports/org.apache.hadoop.hive.cli.TestMiniLlapLocalCliDriver-output.txt
 {code}
 

but q file is not failing.

In short,
 # replace hivename with varname for metaconfs
 # investigate whether error be thrown if JDO fails.

 

Attaching TestMiniLlapLocalCliDriver-output.txt showing 
{code:java}
metastore.RetryingHMSHandler: MetaException(message:Jdo path is not implemented 
for stats aggr.) {code}
 

Stacktrace:
{code:java}
2025-10-10T00:04:54,397 ERROR [dc1b1868-d07a-4dcc-9cbd-6a0b7eca7e46 main] 
metastore.RetryingHMSHandler: MetaException(message:Jdo path is not implemented 
for stats aggr.)      at 
org.apache.hadoop.hive.metastore.ObjectStore$28.getJdoResult(ObjectStore.java:10076)
 at 
org.apache.hadoop.hive.metastore.ObjectStore$28.getJdoResult(ObjectStore.java:10063)
 at 
org.apache.hadoop.hive.metastore.ObjectStore$GetHelper.run(ObjectStore.java:4415)
    at 
org.apache.hadoop.hive.metastore.ObjectStore.get_aggr_stats_for(ObjectStore.java:10082)
      at 
org.apache.hadoop.hive.metastore.ObjectStore.get_aggr_stats_for(ObjectStore.java:10050)
      at 
java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
        at java.base/java.lang.reflect.Method.invoke(Method.java:580)   at 
org.apache.hadoop.hive.metastore.RawStoreProxy.invoke(RawStoreProxy.java:97) at 
jdk.proxy2/jdk.proxy2.$Proxy55.get_aggr_stats_for(Unknown Source)    at 
org.apache.hadoop.hive.metastore.HMSHandler.get_aggr_stats_for(HMSHandler.java:9409)
 at 
java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
        at java.base/java.lang.reflect.Method.invoke(Method.java:580)   at 
org.apache.hadoop.hive.metastore.RetryingHMSHandler.invokeInternal(RetryingHMSHandler.java:91)
       at 
org.apache.hadoop.hive.metastore.AbstractHMSHandlerProxy.invoke(AbstractHMSHandlerProxy.java:82)
     at jdk.proxy2/jdk.proxy2.$Proxy56.get_aggr_stats_for(Unknown Source)    at 
org.apache.hadoop.hive.metastore.client.ThriftHiveMetaStoreClient.getAggrColStatsFor(ThriftHiveMetaStoreClient.java:1167)
    at 
org.apache.hadoop.hive.ql.metadata.HiveMetaStoreClientWithLocalCache.getAggrColStatsFor(HiveMetaStoreClientWithLocalCache.java:400)
  at 
org.apache.hadoop.hive.ql.metadata.SessionHiveMetaStoreClient.getAggrColStatsFor(SessionHiveMetaStoreClient.java:2383)
       at 
org.apache.hadoop.hive.metastore.client.MetaStoreClientWrapper.getAggrColStatsFor(MetaStoreClientWrapper.java:1032)
  at 
java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
        at java.base/java.lang.reflect.Method.invoke(Method.java:580)   at 
org.apache.hadoop.hive.metastore.client.SynchronizedMetaStoreClient$SynchronizedHandler.invoke(SynchronizedMetaStoreClient.java:69)
  at jdk.proxy2/jdk.proxy2.$Proxy57.getAggrColStatsFor(Unknown Source)    at 
org.apache.hadoop.hive.metastore.client.MetaStoreClientWrapper.getAggrColStatsFor(MetaStoreClientWrapper.java:1032)
  at 
org.apache.hadoop.hive.metastore.client.BaseMetaStoreClient.getAggrColStatsFor(BaseMetaStoreClient.java:769)
 at 
java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
        at java.base/java.lang.reflect.Method.invoke(Method.java:580)   at 
org.apache.hadoop.hive.metastore.RetryingMetaStoreClient.invoke(RetryingMetaStoreClient.java:232)
    at jdk.proxy2/jdk.proxy2.$Proxy57.getAggrColStatsFor(Unknown Source)    at 
org.apache.hadoop.hive.ql.metadata.Hive.getAggrColStatsFor(Hive.java:6244)   at 
org.apache.hadoop.hive.ql.stats.StatsUtils.collectStatistics(StatsUtils.java:379)
    at 
org.apache.hadoop.hive.ql.stats.StatsUtils.collectStatistics(StatsUtils.java:194)
    at 
org.apache.hadoop.hive.ql.stats.StatsUtils.collectStatistics(StatsUtils.java:182)
    at 
org.apache.hadoop.hive.ql.optimizer.stats.annotation.StatsRulesProcFactory$TableScanStatsRule.process(StatsRulesProcFactory.java:177)
        at 
org.apache.hadoop.hive.ql.lib.DefaultRuleDispatcher.dispatch(DefaultRuleDispatcher.java:90)
  at 
org.apache.hadoop.hive.ql.lib.DefaultGraphWalker.dispatchAndReturn(DefaultGraphWalker.java:105)
      at 
org.apache.hadoop.hive.ql.lib.DefaultGraphWalker.dispatch(DefaultGraphWalker.java:89)
        at 
org.apache.hadoop.hive.ql.lib.LevelOrderWalker.walk(LevelOrderWalker.java:148)  
     at 
org.apache.hadoop.hive.ql.lib.LevelOrderWalker.startWalking(LevelOrderWalker.java:125)
       at 
org.apache.hadoop.hive.ql.optimizer.stats.annotation.AnnotateWithStatistics.transform(AnnotateWithStatistics.java:84)
        at 
org.apache.hadoop.hive.ql.parse.TezCompiler.runStatsAnnotation(TezCompiler.java:472)
 at 
org.apache.hadoop.hive.ql.parse.TezCompiler.optimizeOperatorPlan(TezCompiler.java:202)
       at 
org.apache.hadoop.hive.ql.parse.TaskCompiler.compile(TaskCompiler.java:182)  at 
org.apache.hadoop.hive.ql.parse.SemanticAnalyzer.compilePlan(SemanticAnalyzer.java:13150)
    at 
org.apache.hadoop.hive.ql.parse.SemanticAnalyzer.analyzeInternal(SemanticAnalyzer.java:13378)
        at 
org.apache.hadoop.hive.ql.parse.SemanticAnalyzer.analyzeInternal(SemanticAnalyzer.java:12725)
        at 
org.apache.hadoop.hive.ql.parse.ColumnStatsSemanticAnalyzer.analyze(ColumnStatsSemanticAnalyzer.java:671)
    at org.apache.hadoop.hive.ql.Compiler.analyze(Compiler.java:224)        at 
org.apache.hadoop.hive.ql.Compiler.compile(Compiler.java:109)        at 
org.apache.hadoop.hive.ql.Driver.compile(Driver.java:498)    at 
org.apache.hadoop.hive.ql.Driver.compileInternal(Driver.java:450)    at 
org.apache.hadoop.hive.ql.Driver.compileAndRespond(Driver.java:414)  at 
org.apache.hadoop.hive.ql.Driver.compileAndRespond(Driver.java:408)  at 
org.apache.hadoop.hive.ql.reexec.ReExecDriver.compileAndRespond(ReExecDriver.java:126)
       at 
org.apache.hadoop.hive.ql.reexec.ReExecDriver.run(ReExecDriver.java:234)     at 
org.apache.hadoop.hive.cli.CliDriver.processLocalCmd(CliDriver.java:259)     at 
org.apache.hadoop.hive.cli.CliDriver.processCmd1(CliDriver.java:203) at 
org.apache.hadoop.hive.cli.CliDriver.processCmd(CliDriver.java:129)  at 
org.apache.hadoop.hive.cli.CliDriver.processLine(CliDriver.java:430) at 
org.apache.hadoop.hive.cli.CliDriver.processLine(CliDriver.java:358) at 
org.apache.hadoop.hive.ql.QTestUtil.executeClientInternal(QTestUtil.java:760)   
     at org.apache.hadoop.hive.ql.QTestUtil.executeClient(QTestUtil.java:730)   
     at 
org.apache.hadoop.hive.cli.control.CoreCliDriver.runTest(CoreCliDriver.java:115)
     at 
org.apache.hadoop.hive.cli.control.CliAdapter.runTest(CliAdapter.java:139)   at 
org.apache.hadoop.hive.cli.TestMiniLlapLocalCliDriver.testCliDriver(TestMiniLlapLocalCliDriver.java:62)
      at 
java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
        at java.base/java.lang.reflect.Method.invoke(Method.java:580)   at 
org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:59)
 at 
org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
  at 
org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:56)
   at 
org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
    at 
org.apache.hadoop.hive.cli.control.CliAdapter$2$1.evaluate(CliAdapter.java:118) 
     at org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:306)     at 
org.junit.runners.BlockJUnit4ClassRunner$1.evaluate(BlockJUnit4ClassRunner.java:100)
 at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:366)        at 
org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:103)
   at 
org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:63)
    at org.junit.runners.ParentRunner$4.run(ParentRunner.java:331)  at 
org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:79)      at 
org.junit.runners.ParentRunner.runChildren(ParentRunner.java:329)    at 
org.junit.runners.ParentRunner.access$100(ParentRunner.java:66)      at 
org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:293)     at 
org.junit.runners.ParentRunner.run(ParentRunner.java:413)    at 
org.junit.runners.Suite.runChild(Suite.java:128)     at 
org.junit.runners.Suite.runChild(Suite.java:27)      at 
org.junit.runners.ParentRunner$4.run(ParentRunner.java:331)  at 
org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:79)      at 
org.junit.runners.ParentRunner.runChildren(ParentRunner.java:329)    at 
org.junit.runners.ParentRunner.access$100(ParentRunner.java:66)      at 
org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:293)     at 
org.apache.hadoop.hive.cli.control.CliAdapter$1$1.evaluate(CliAdapter.java:89)  
     at org.junit.rules.RunRules.evaluate(RunRules.java:20)  at 
org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:306)     at 
org.junit.runners.ParentRunner.run(ParentRunner.java:413)    at 
org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:316)
     at 
org.apache.maven.surefire.junit4.JUnit4Provider.executeWithRerun(JUnit4Provider.java:240)
    at 
org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:214)
      at 
org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:155) 
     at 
org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:385)
      at 
org.apache.maven.surefire.booter.ForkedBooter.execute(ForkedBooter.java:162) at 
org.apache.maven.surefire.booter.ForkedBooter.run(ForkedBooter.java:507)     at 
org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:495)
 {code}


> Use metaconf prefix to honor metastore configurations in q-files
> ----------------------------------------------------------------
>
>                 Key: HIVE-29264
>                 URL: https://issues.apache.org/jira/browse/HIVE-29264
>             Project: Hive
>          Issue Type: Bug
>            Reporter: Raghav Aggarwal
>            Assignee: Raghav Aggarwal
>            Priority: Major
>         Attachments: 
> org.apache.hadoop.hive.cli.TestMiniLlapLocalCliDriver-output.txt
>
>
> In *alter_table_column_stats.q,* the _hive.metastore.try.direct.sql=false_ 
> for partitioned table and following command is running:
> {code:java}
> analyze table testpart0 compute statistics for columns; {code}
> but the JDO implementation for _get_aggr_stats_for_ is to throw MetaException 
> but the exception is not thrown. As soon I replace it with set 
> metaconf:metastore.try.direct.sql=false then exception is observed in 
> {code:java}
> itests/qtest/target/surefire-reports/org.apache.hadoop.hive.cli.TestMiniLlapLocalCliDriver-output.txt
>  {code}
> but q file is not failing.
> In short,
>  # replace hivename with varname for metaconfs
>  # investigate whether error be thrown if JDO fails.
> Attaching TestMiniLlapLocalCliDriver-output.txt showing 
> {code:java}
> metastore.RetryingHMSHandler: MetaException(message:Jdo path is not 
> implemented for stats aggr.) {code}
>  
> *Stacktrace:*
> {code:java}
> 2025-10-10T00:04:54,397 ERROR [dc1b1868-d07a-4dcc-9cbd-6a0b7eca7e46 main] 
> metastore.RetryingHMSHandler: MetaException(message:Jdo path is not 
> implemented for stats aggr.)    at 
> org.apache.hadoop.hive.metastore.ObjectStore$28.getJdoResult(ObjectStore.java:10076)
>  at 
> org.apache.hadoop.hive.metastore.ObjectStore$28.getJdoResult(ObjectStore.java:10063)
>  at 
> org.apache.hadoop.hive.metastore.ObjectStore$GetHelper.run(ObjectStore.java:4415)
>     at 
> org.apache.hadoop.hive.metastore.ObjectStore.get_aggr_stats_for(ObjectStore.java:10082)
>       at 
> org.apache.hadoop.hive.metastore.ObjectStore.get_aggr_stats_for(ObjectStore.java:10050)
>       at 
> java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
>         at java.base/java.lang.reflect.Method.invoke(Method.java:580)   at 
> org.apache.hadoop.hive.metastore.RawStoreProxy.invoke(RawStoreProxy.java:97) 
> at jdk.proxy2/jdk.proxy2.$Proxy55.get_aggr_stats_for(Unknown Source)    at 
> org.apache.hadoop.hive.metastore.HMSHandler.get_aggr_stats_for(HMSHandler.java:9409)
>  at 
> java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
>         at java.base/java.lang.reflect.Method.invoke(Method.java:580)   at 
> org.apache.hadoop.hive.metastore.RetryingHMSHandler.invokeInternal(RetryingHMSHandler.java:91)
>        at 
> org.apache.hadoop.hive.metastore.AbstractHMSHandlerProxy.invoke(AbstractHMSHandlerProxy.java:82)
>      at jdk.proxy2/jdk.proxy2.$Proxy56.get_aggr_stats_for(Unknown Source)    
> at 
> org.apache.hadoop.hive.metastore.client.ThriftHiveMetaStoreClient.getAggrColStatsFor(ThriftHiveMetaStoreClient.java:1167)
>     at 
> org.apache.hadoop.hive.ql.metadata.HiveMetaStoreClientWithLocalCache.getAggrColStatsFor(HiveMetaStoreClientWithLocalCache.java:400)
>   at 
> org.apache.hadoop.hive.ql.metadata.SessionHiveMetaStoreClient.getAggrColStatsFor(SessionHiveMetaStoreClient.java:2383)
>        at 
> org.apache.hadoop.hive.metastore.client.MetaStoreClientWrapper.getAggrColStatsFor(MetaStoreClientWrapper.java:1032)
>   at 
> java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
>         at java.base/java.lang.reflect.Method.invoke(Method.java:580)   at 
> org.apache.hadoop.hive.metastore.client.SynchronizedMetaStoreClient$SynchronizedHandler.invoke(SynchronizedMetaStoreClient.java:69)
>   at jdk.proxy2/jdk.proxy2.$Proxy57.getAggrColStatsFor(Unknown Source)    at 
> org.apache.hadoop.hive.metastore.client.MetaStoreClientWrapper.getAggrColStatsFor(MetaStoreClientWrapper.java:1032)
>   at 
> org.apache.hadoop.hive.metastore.client.BaseMetaStoreClient.getAggrColStatsFor(BaseMetaStoreClient.java:769)
>  at 
> java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
>         at java.base/java.lang.reflect.Method.invoke(Method.java:580)   at 
> org.apache.hadoop.hive.metastore.RetryingMetaStoreClient.invoke(RetryingMetaStoreClient.java:232)
>     at jdk.proxy2/jdk.proxy2.$Proxy57.getAggrColStatsFor(Unknown Source)    
> at org.apache.hadoop.hive.ql.metadata.Hive.getAggrColStatsFor(Hive.java:6244) 
>   at 
> org.apache.hadoop.hive.ql.stats.StatsUtils.collectStatistics(StatsUtils.java:379)
>     at 
> org.apache.hadoop.hive.ql.stats.StatsUtils.collectStatistics(StatsUtils.java:194)
>     at 
> org.apache.hadoop.hive.ql.stats.StatsUtils.collectStatistics(StatsUtils.java:182)
>     at 
> org.apache.hadoop.hive.ql.optimizer.stats.annotation.StatsRulesProcFactory$TableScanStatsRule.process(StatsRulesProcFactory.java:177)
>         at 
> org.apache.hadoop.hive.ql.lib.DefaultRuleDispatcher.dispatch(DefaultRuleDispatcher.java:90)
>   at 
> org.apache.hadoop.hive.ql.lib.DefaultGraphWalker.dispatchAndReturn(DefaultGraphWalker.java:105)
>       at 
> org.apache.hadoop.hive.ql.lib.DefaultGraphWalker.dispatch(DefaultGraphWalker.java:89)
>         at 
> org.apache.hadoop.hive.ql.lib.LevelOrderWalker.walk(LevelOrderWalker.java:148)
>        at 
> org.apache.hadoop.hive.ql.lib.LevelOrderWalker.startWalking(LevelOrderWalker.java:125)
>        at 
> org.apache.hadoop.hive.ql.optimizer.stats.annotation.AnnotateWithStatistics.transform(AnnotateWithStatistics.java:84)
>         at 
> org.apache.hadoop.hive.ql.parse.TezCompiler.runStatsAnnotation(TezCompiler.java:472)
>  at 
> org.apache.hadoop.hive.ql.parse.TezCompiler.optimizeOperatorPlan(TezCompiler.java:202)
>        at 
> org.apache.hadoop.hive.ql.parse.TaskCompiler.compile(TaskCompiler.java:182)  
> at 
> org.apache.hadoop.hive.ql.parse.SemanticAnalyzer.compilePlan(SemanticAnalyzer.java:13150)
>     at 
> org.apache.hadoop.hive.ql.parse.SemanticAnalyzer.analyzeInternal(SemanticAnalyzer.java:13378)
>         at 
> org.apache.hadoop.hive.ql.parse.SemanticAnalyzer.analyzeInternal(SemanticAnalyzer.java:12725)
>         at 
> org.apache.hadoop.hive.ql.parse.ColumnStatsSemanticAnalyzer.analyze(ColumnStatsSemanticAnalyzer.java:671)
>     at org.apache.hadoop.hive.ql.Compiler.analyze(Compiler.java:224)        
> at org.apache.hadoop.hive.ql.Compiler.compile(Compiler.java:109)        at 
> org.apache.hadoop.hive.ql.Driver.compile(Driver.java:498)    at 
> org.apache.hadoop.hive.ql.Driver.compileInternal(Driver.java:450)    at 
> org.apache.hadoop.hive.ql.Driver.compileAndRespond(Driver.java:414)  at 
> org.apache.hadoop.hive.ql.Driver.compileAndRespond(Driver.java:408)  at 
> org.apache.hadoop.hive.ql.reexec.ReExecDriver.compileAndRespond(ReExecDriver.java:126)
>        at 
> org.apache.hadoop.hive.ql.reexec.ReExecDriver.run(ReExecDriver.java:234)     
> at org.apache.hadoop.hive.cli.CliDriver.processLocalCmd(CliDriver.java:259)   
>   at org.apache.hadoop.hive.cli.CliDriver.processCmd1(CliDriver.java:203) at 
> org.apache.hadoop.hive.cli.CliDriver.processCmd(CliDriver.java:129)  at 
> org.apache.hadoop.hive.cli.CliDriver.processLine(CliDriver.java:430) at 
> org.apache.hadoop.hive.cli.CliDriver.processLine(CliDriver.java:358) at 
> org.apache.hadoop.hive.ql.QTestUtil.executeClientInternal(QTestUtil.java:760) 
>        at 
> org.apache.hadoop.hive.ql.QTestUtil.executeClient(QTestUtil.java:730)        
> at 
> org.apache.hadoop.hive.cli.control.CoreCliDriver.runTest(CoreCliDriver.java:115)
>      at 
> org.apache.hadoop.hive.cli.control.CliAdapter.runTest(CliAdapter.java:139)   
> at 
> org.apache.hadoop.hive.cli.TestMiniLlapLocalCliDriver.testCliDriver(TestMiniLlapLocalCliDriver.java:62)
>       at 
> java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
>         at java.base/java.lang.reflect.Method.invoke(Method.java:580)   at 
> org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:59)
>  at 
> org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
>   at 
> org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:56)
>    at 
> org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
>     at 
> org.apache.hadoop.hive.cli.control.CliAdapter$2$1.evaluate(CliAdapter.java:118)
>       at org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:306)     
> at 
> org.junit.runners.BlockJUnit4ClassRunner$1.evaluate(BlockJUnit4ClassRunner.java:100)
>  at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:366)        at 
> org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:103)
>    at 
> org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:63)
>     at org.junit.runners.ParentRunner$4.run(ParentRunner.java:331)  at 
> org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:79)      at 
> org.junit.runners.ParentRunner.runChildren(ParentRunner.java:329)    at 
> org.junit.runners.ParentRunner.access$100(ParentRunner.java:66)      at 
> org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:293)     at 
> org.junit.runners.ParentRunner.run(ParentRunner.java:413)    at 
> org.junit.runners.Suite.runChild(Suite.java:128)     at 
> org.junit.runners.Suite.runChild(Suite.java:27)      at 
> org.junit.runners.ParentRunner$4.run(ParentRunner.java:331)  at 
> org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:79)      at 
> org.junit.runners.ParentRunner.runChildren(ParentRunner.java:329)    at 
> org.junit.runners.ParentRunner.access$100(ParentRunner.java:66)      at 
> org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:293)     at 
> org.apache.hadoop.hive.cli.control.CliAdapter$1$1.evaluate(CliAdapter.java:89)
>        at org.junit.rules.RunRules.evaluate(RunRules.java:20)  at 
> org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:306)     at 
> org.junit.runners.ParentRunner.run(ParentRunner.java:413)    at 
> org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:316)
>      at 
> org.apache.maven.surefire.junit4.JUnit4Provider.executeWithRerun(JUnit4Provider.java:240)
>     at 
> org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:214)
>       at 
> org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:155)
>       at 
> org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:385)
>       at 
> org.apache.maven.surefire.booter.ForkedBooter.execute(ForkedBooter.java:162) 
> at org.apache.maven.surefire.booter.ForkedBooter.run(ForkedBooter.java:507)   
>   at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:495)
>  {code}



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to