tree d2036ef849c182dc47650ed227c693222e9327db
parent b12e0257f8d819ec3e7759c516f3173c729ab22f
author Jiajun Wang <jjwang@linkedin.com> 1622053761 -0700
committer GitHub <noreply@github.com> 1622053761 -0700
gpgsig -----BEGIN PGP SIGNATURE-----
 
 wsBcBAABCAAQBQJgrpOCCRBK7hj4Ov3rIwAAJNgIAKn4m4emOQc8rjqY4KFJHw3H
 Db2qhYb3sS5UNQQJ7nmj+mPpYOTdzMZ3OJ194/8aaW/qljqD5SmZUinlcg1BprHv
 J56NcuwIQciFiSLBQTNquXEt4B4aTsTXpCkkWXxMtZkDugenpjYbKqUoIt+hXLRD
 hQnzhedmgDH0qUIt1GKZJjXmcLn3mplZEFA0B0TpBpcNnbU0ZlRn1e6yXyiDbTIB
 XgQhlgsj65jwtfCVbRyAazDknpAjcFFB+EjUSm+Akq+ZWwc/FmfwBCi28hUn7xUn
 JJs6HvsfAwENECGsWAvr/t09q4BpgrdWxt07EXR+oJ9LwL4MAadl8Qmil9zwhDM=
 =ote5
 -----END PGP SIGNATURE-----
 

Remove a potential deadlock when shutting down a RoutingTableProvider. (#1751)

This PR aims to avoid a potential deadlock that happens in a race condition when shutting down RoutingTableProvider.

The race condition happens when the RoutingTableProvider is shut down and the corresponding HelixManager is processing an onLiveInstanceChange event. Both threads require 2 locks, HelixManager lock and RoutingTableProvider._lastSeenSessions, in different orders.
To resolve this problem, this PR changes 2 logics.
1. Remove the _lastSeenSessions lock usage. So no more deadlock. The logic correctness is now ensured by the AtomicReference.getAndSet method.
2. Remove LiveInstanceChangeListener in the shutdown call before processing the other logics. This is a missing logic and should be done regardless of the deadlock problem.Moreover, this change also avoids a more complicated race condition introduced by the previous change that may lead to CurrentStates callback handler leakage.

Test cases in TestZkCallbackHandlerLeak has been updated to validate the logic changes.