AOUpgradeTask with ClusterLockServcie

We are writing an ActiveObjectsUpgradeTask in our plugin to upgrade the database.

It’s working fine on server but when we run it on data centre instance with 2 nodes, upgrade task runs on both nodes making duplicate entries in db.

We want to run it only one node from where the plugin is being updated. We don’t want this to run on other nodes.
We tried with obtaining lock with ClusterLockService but it doesn’t seem to work.

We tried to use DataBaseClusterLockService but the database lock timed out.

Would be great if any of you have done it prior and help us.

1 Like