[ https://issues.apache.org/jira/browse/HIVE-10384?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Eric Liang updated HIVE-10384: ------------------------------ Description: This bug is very similar to HIVE-9436, in that a TTransportException wrapped in a MetaException will not be retried. RetryingMetaStoreClient has a block of code above the MetaException handler that retries thrift exceptions, but this doesn't work when the exception is wrapped. {code} if ((e.getCause() instanceof TApplicationException) || (e.getCause() instanceof TProtocolException) || (e.getCause() instanceof TTransportException)) { caughtException = (TException) e.getCause(); } else if ((e.getCause() instanceof MetaException) && e.getCause().getMessage().matches("(?s).*JDO[a-zA-Z]*Exception.*")) { caughtException = (MetaException) e.getCause(); {code} was:This bug is very similar to HIVE-9436, in that a TTransportException wrapped in a MetaException will not be retried. > RetryingMetaStoreClient does not retry wrapped TTransportExceptions > ------------------------------------------------------------------- > > Key: HIVE-10384 > URL: https://issues.apache.org/jira/browse/HIVE-10384 > Project: Hive > Issue Type: Bug > Components: Clients > Reporter: Eric Liang > > This bug is very similar to HIVE-9436, in that a TTransportException wrapped > in a MetaException will not be retried. RetryingMetaStoreClient has a block > of code above the MetaException handler that retries thrift exceptions, but > this doesn't work when the exception is wrapped. > {code} > if ((e.getCause() instanceof TApplicationException) || > (e.getCause() instanceof TProtocolException) || > (e.getCause() instanceof TTransportException)) { > caughtException = (TException) e.getCause(); > } else if ((e.getCause() instanceof MetaException) && > > e.getCause().getMessage().matches("(?s).*JDO[a-zA-Z]*Exception.*")) { > caughtException = (MetaException) e.getCause(); > {code} -- This message was sent by Atlassian JIRA (v6.3.4#6332)