[
https://issues.apache.org/jira/browse/HBASE-10516?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Feng Honghua updated HBASE-10516:
---------------------------------
Attachment: HBASE-10516-trunk_v3.patch
v3 patch attached per [~nkeywal]'s latest feedback on the v2 patch:
# DeleteTableHandler : IOE thrown directly
# AssignmentManager : IE thrown directly (add throws clause for its containing
assign() method, change another RuntimeException to IE in the same method. The
next upper containing method of its direct containing method does throw IE, so
this change should match the exception design better)
# LruBlockCache : exit at first IE and interrupt()
# ZooKeeperWatcher : RuntimeException thrown as timeout handling nearby
Ping [~nkeywal] and thanks!
> Refactor code where Threads.sleep is called within a while/for loop
> -------------------------------------------------------------------
>
> Key: HBASE-10516
> URL: https://issues.apache.org/jira/browse/HBASE-10516
> Project: HBase
> Issue Type: Bug
> Components: Client, master, regionserver
> Reporter: Feng Honghua
> Assignee: Feng Honghua
> Attachments: HBASE-10516-trunk_v1.patch, HBASE-10516-trunk_v2.patch,
> HBASE-10516-trunk_v3.patch
>
>
> Threads.sleep implementation:
> {code}
> public static void sleep(long millis) {
> try {
> Thread.sleep(millis);
> } catch (InterruptedException e) {
> e.printStackTrace();
> Thread.currentThread().interrupt();
> }
> }
> {code}
> From above implementation, the current thread's interrupt status is
> restored/reset when InterruptedException is caught and handled. If this
> method is called within a while/for loop, if a first InterruptedException is
> thrown during sleep, it will make the Threads.sleep in next loop immediately
> throw InterruptedException without expected sleep. This behavior breaks the
> intention for independent sleep in each loop
> I mentioned above in HBASE-10497 and this jira is created to handle it
> separately per [~nkeywal]'s suggestion
--
This message was sent by Atlassian JIRA
(v6.1.5#6160)