After upgrading Umbraco, uSync Publisher pushes to our servers are failing.
The push reaches the target server and invokes the following endpoint:
POST /umbraco/uSyncReceive/uSyncReceiveApi/CreateRestorePoint
However, during the failing push, the CreateRestorePoint request continuously performs SQL Server distributed lock operations on the same lock ID:
Lock type: ReadLock
Lock ID: -335
The logs show the following pattern repeating continuously within milliseconds:
Requesting ReadLock for id -335
Acquired ReadLock for id -335
Dropped ReadLock for id -335
Requesting ReadLock for id -335
Acquired ReadLock for id -335
Dropped ReadLock for id -335
Requesting ReadLock for id -335
Acquired ReadLock for id -335
Dropped ReadLock for id -335
For example:
10:36:14.3916883 Requesting ReadLock for id -335
10:36:14.3920615 Acquired ReadLock for id -335
10:36:14.3924509 Dropped ReadLock for id -335
10:36:14.3985947 Requesting ReadLock for id -335
10:36:14.3989308 Acquired ReadLock for id -335
10:36:14.3993217 Dropped ReadLock for id -335
10:36:14.4048274 Requesting ReadLock for id -335
10:36:14.4051250 Acquired ReadLock for id -335
10:36:14.4054805 Dropped ReadLock for id -335
This continues for the duration of the request.
All of these operations are part of:
uSync.Publisher.Controllers.uSyncReceiveApiController.CreateRestorePoint
with the following request ID:
800009f0-0000-b000-b63f-84710c7967bb
The lock implementation involved is:
Umbraco.Cms.Persistence.SqlServer.Services.SqlServerDistributedLockingMechanism
Eventually, the Publisher-side request times out after approximately 100 seconds:
The request was canceled due to the configured HttpClient.Timeout of 100 seconds elapsing.
This behaviour started after the Umbraco upgrade. The same uSync push was working before the upgrade.
