Wechar created HIVE-26386:
-----------------------------

             Summary: Exceptions thrown in ObjectStore should contain all causes
                 Key: HIVE-26386
                 URL: https://issues.apache.org/jira/browse/HIVE-26386
             Project: Hive
          Issue Type: Bug
          Components: Hive
    Affects Versions: 4.0.0-alpha-1
            Reporter: Wechar
            Assignee: Wechar
             Fix For: 4.0.0-alpha-2


{{*RetryingHMSHandler*}} will retry the failed operations if the exception is 
caused by {{*JDOException*}} or {{{}*NucleusException*{}}}, the logic is in 
[RetryingHMSHandler.java#L185:|https://github.com/apache/hive/blob/723d52270488b8dbc108db1a9925d1c569415039/standalone-metastore/metastore-server/src/main/java/org/apache/hadoop/hive/metastore/RetryingHMSHandler.java#L185]
{code:java}
 } else if (e.getCause() instanceof MetaException && e.getCause().getCause() != 
null) {
          if (e.getCause().getCause() instanceof javax.jdo.JDOException ||
              e.getCause().getCause() instanceof NucleusException) {
            // The JDOException or the Nucleus Exception may be wrapped further 
in a MetaException
            caughtException = e.getCause().getCause();
{code}
But in {{{}*ObjectStore.java*{}}}, we found some exceptions thrown as 
{{{}*MetaException*{}}}}} are not wrapped by the causes, which cause some 
operations failed by {{JDOException}} can not do retry.



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

Reply via email to