[jira] [Updated] (HIVE-10384) RetryingMetaStoreClient does not retry wrapped TTransportExceptions

2015-04-30 Thread Sushanth Sowmyan (JIRA)

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

Sushanth Sowmyan updated HIVE-10384:

Fix Version/s: (was: 1.3.0)
   1.2.0

 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
Assignee: Chaoyu Tang
 Fix For: 1.2.0

 Attachments: HIVE-10384.1.patch, HIVE-10384.patch


 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)


[jira] [Updated] (HIVE-10384) RetryingMetaStoreClient does not retry wrapped TTransportExceptions

2015-04-21 Thread Chaoyu Tang (JIRA)

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

Chaoyu Tang updated HIVE-10384:
---
Attachment: HIVE-10384.patch

Looking through RetryMetaStoreClient/IMetaStoreClient/MetaStoreClient, I think 
two exceptions wrapped in MetaException should be caught and retry is needed in 
RetryMetaStoreClient.invoke. One is IOException from reloginExpiringKeytabUser, 
other other is TTransportException from base.reconnect(). I did not see that an 
TTransportException could be wrapped in the InvocationTargetException.
[~ekhliang] I wonder if it is the TTransportException that you meant which 
should be but has not been retried, or is there any other. Thanks

 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
Assignee: Chaoyu Tang
 Attachments: HIVE-10384.patch


 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)


[jira] [Updated] (HIVE-10384) RetryingMetaStoreClient does not retry wrapped TTransportExceptions

2015-04-21 Thread Chaoyu Tang (JIRA)

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

Chaoyu Tang updated HIVE-10384:
---
Attachment: HIVE-10384.1.patch

Thanks [~szehon] for reviewing the code and Eric Liang providing the case where 
the TTransportException is wrapped in MetaException which is further wrapped in 
InvocationTargetException. Updated the patch to include that case as well. 
Thanks.

 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
Assignee: Chaoyu Tang
 Attachments: HIVE-10384.1.patch, HIVE-10384.patch


 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)


[jira] [Updated] (HIVE-10384) RetryingMetaStoreClient does not retry wrapped TTransportExceptions

2015-04-17 Thread Eric Liang (JIRA)

 [ 
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)