fixed distributed locking issue in case of exception while transaction processing
@@ -38,11 +38,14 @@ public class OWaitPartitionsReadyTask extends OAbstractRemoteTask {
public Object execute(ODistributedRequestId requestId, OServer iServer, ODistributedServerManager iManager,
ODatabaseDocumentInternal database) throws Exception {
Object result = null;
+ try {
if (started.await() == 0) {
result = toRun.execute(requestId, iServer, iManager, database);
hasResponse = toRun.hasResponse();
}
+ } finally {
finished.await();
+ }
return result;
}
