Thanks Jonathan Hung for updating the patch. Let's look at how the tests go for v4.
We do not need fencing in ZookeeperFederationStateStore as we rely on RM for that. That's why after looking at the code I wanted to skip this. So you'll have to revert the changes to ZookeeperFederationStateStore (sorry).
In TestZKCuratorManager::testTransaction, this should be false after deletion right?