[
https://issues.apache.org/jira/browse/HADOOP-10830?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14063236#comment-14063236
]
Vinayakumar B commented on HADOOP-10830:
----------------------------------------
Hi [~benoyantony], thanks for the patch.
There is no need of double try-catch-finally blocks. existing itself you can
re-use.
Like following..
{code} @Override
public CredentialEntry createCredentialEntry(String alias, char[] credential)
throws IOException {
writeLock.lock();
try {
if (keyStore.containsAlias(alias) || cache.containsKey(alias)) {
throw new IOException("Credential " + alias + " already exists in "
+ this);
}
return innerSetCredential(alias, credential);
} catch (KeyStoreException e) {
throw new IOException("Problem looking up credential " + alias + " in "
+ this, e);
} finally {
writeLock.unlock();
}
}{code}
anyway {{innerSetCredential(..)}} have its own try-catch block. So its fine to
use one try-catch-finally block itself.
> Missing lock in JavaKeyStoreProvider.createCredentialEntry
> ----------------------------------------------------------
>
> Key: HADOOP-10830
> URL: https://issues.apache.org/jira/browse/HADOOP-10830
> Project: Hadoop Common
> Issue Type: Bug
> Components: security
> Reporter: Benoy Antony
> Assignee: Benoy Antony
> Attachments: HADOOP-10830.patch
>
>
> _JavaKeyStoreProvider_ uses _ReentrantReadWriteLock_ to provide thread
> safety.
> The {{createCredentialEntry}} should hold _writeLock_ before adding the entry.
--
This message was sent by Atlassian JIRA
(v6.2#6252)