[
https://issues.apache.org/jira/browse/HBASE-13885?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14584130#comment-14584130
]
Lars Hofhansl commented on HBASE-13885:
---------------------------------------
To summarize:
For ZKProcedure we set watchers for the Aborted, Acquired, and Completed
znodes. When a procedure completes successfully it never triggers the Abort
watcher, and if the procedure aborts it never triggers the Acquired watcher. So
for each snapshot we'll leave a watcher hanging around per involved region
server.
A solution is to make sure we trigger the watches, passing some data along that
indicates to the watchers to ignore the trigger.
> ZK watches leaks during snapshots
> ---------------------------------
>
> Key: HBASE-13885
> URL: https://issues.apache.org/jira/browse/HBASE-13885
> Project: HBase
> Issue Type: Bug
> Components: snapshots
> Affects Versions: 0.98.12
> Reporter: Abhishek Singh Chouhan
> Priority: Critical
>
> When taking snapshot of a table a watcher over
> /hbase/online-snapshot/abort/snapshot-name is created which is never cleared
> when the snapshot is successful. If we use snapshots to take backups daily we
> accumulate a lot of watches.
> Steps to reproduce -
> 1) Take snapshot of a table - snapshot 'table_1', 'abc'
> 2) Run the following on zk node or alternatively observe zk watches metric
> echo "wchc" | nc localhost 2181
> /hbase/online-snapshot/abort/abc can be found.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)