Daryn Sharp reported that the lease monitor goes into a rapid infinite loop if an exception occurs during a lease recovery. The two main issues are:
- lease monitor thread does not sleep if an exception occurs before looping again
- the loop peeks at the first element of a sorted tree set so when an exception occurs, the "bad" lease remains as the first element preventing recovery of other leases.
This jira is not intended to fix the underlying issues causing the exception during recovery but merely to mitigate the cited issues.