[ https://issues.apache.org/jira/browse/HIVE-9436?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14296104#comment-14296104 ]
Sushanth Sowmyan commented on HIVE-9436: ---------------------------------------- [~vikram.dixit] - if you do respin an rc for 1.0, it would be useful to have this fix in as well - it's a simple fix which fixes retries from the client, and is a robustness fix. It isn't, however a breaking bug as I see it, since it is used only in the case of connection issues, where we give it a chance to retry instead of failing directly. > RetryingMetaStoreClient does not retry JDOExceptions > ---------------------------------------------------- > > Key: HIVE-9436 > URL: https://issues.apache.org/jira/browse/HIVE-9436 > Project: Hive > Issue Type: Bug > Affects Versions: 0.14.0, 0.13.1 > Reporter: Sushanth Sowmyan > Assignee: Sushanth Sowmyan > Fix For: 1.2.0 > > Attachments: HIVE-9436.2.patch, HIVE-9436.3.patch, HIVE-9436.patch > > > RetryingMetaStoreClient has a bug in the following bit of code: > {code} > } else if ((e.getCause() instanceof MetaException) && > e.getCause().getMessage().matches("JDO[a-zA-Z]*Exception")) { > caughtException = (MetaException) e.getCause(); > } else { > throw e.getCause(); > } > {code} > The bug here is that java String.matches matches the entire string to the > regex, and thus, that match will fail if the message contains anything before > or after JDO[a-zA-Z]\*Exception. The solution, however, is very simple, we > should match (?s).\*JDO[a-zA-Z]\*Exception.\* -- This message was sent by Atlassian JIRA (v6.3.4#6332)