Details
-
Bug
-
Resolution: Fixed
-
Major
-
7.0.3
-
Untriaged
-
1
-
Unknown
Description
When rebalance is done (either success or failed), rebalance_service_manager calls OnRebalanceDoneLocked method. This method acquires service manager mutex, does the cleanup operations and sets m.rebalancer to nil.
While this operation is in progress, if CancelTask() is called from ns_server, then it would wait for the service manager mutex. Once the service manager mutex is available, it would try to cancel the rebalance by calling m.rebalancer.Cancel().
However, m.rebalancer is set to nil by OnRebalanceDoneLocked() and indexer panics in this case