[
https://issues.apache.org/jira/browse/CURATOR-375?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15815231#comment-15815231
]
ASF GitHub Bot commented on CURATOR-375:
----------------------------------------
Github user thecoop commented on a diff in the pull request:
https://github.com/apache/curator/pull/186#discussion_r95382951
--- Diff:
curator-framework/src/main/java/org/apache/curator/framework/imps/CreateBuilderImpl.java
---
@@ -485,7 +485,6 @@ private String protectedPathInForeground(String
adjustedPath, byte[] data) throw
}
catch ( Exception e)
{
- ThreadUtils.checkInterrupted(e);
--- End diff --
No, because the `InterruptedException` is rethrown in every case. Thread
interruption status is represented by _either_ the thread interrupt status _or_
an `InterruptedException`, not both. This is mentioned in the Java tutorials at
http://docs.oracle.com/javase/tutorial/essential/concurrency/interrupt.html:
> By convention, any method that exits by throwing an InterruptedException
clears interrupt status when it does so.
> Fix thread interruption being reported twice
> --------------------------------------------
>
> Key: CURATOR-375
> URL: https://issues.apache.org/jira/browse/CURATOR-375
> Project: Apache Curator
> Issue Type: Bug
> Affects Versions: 2.11.1
> Reporter: Simon Cooper
> Assignee: Jordan Zimmerman
>
> When a curator operation thread is interrupted, some classes
> ({{PersistentNode}} {{ConnectionState}} primarily) report the interruption in
> two ways at the same time - by re-marking the thread interruption status
> *and* throwing {{InterruptedException}} - this makes it look like the thread
> has been interrupted twice, rather than once.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)