Liron Aravot has posted comments on this change.

Change subject: core: updateAllInBatch - sorting/transaction issues
......................................................................


Patch Set 2:

(1 comment)

http://gerrit.ovirt.org/#/c/28909/2/backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dao/MassOperationsGenericDaoDbFacade.java
File 
backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dao/MassOperationsGenericDaoDbFacade.java:

Line 55:             Collection<T> paramValues,
Line 56:             MapSqlParameterMapper<T> mapper) {
Line 57: 
Line 58:         // To overcome possible deadlocks, we need to sort the 
collection if the code is executed in transaction
Line 59:         if (TransactionSupport.current() != null) {
> Please note that the following code does not enter a single row into the da
I took further look at it and found this email thread at the postgres mailing 
list which tackle this issue exactly - 

http://www.postgresql.org/message-id/654041.58993...@web33207.mail.mud.yahoo.com

so in postgres regardless of the value of AutoCommit, it'll be executed within 
the same transaction.


For now i'll abandon this patch and will send another one that passes the 
sorted list to the execution - I'll look into making the code here protected 
against postgres changes in this area, and regardless we need to be aware to 
postgres changes across versions.
Line 60:             List<T> sortedParamValues = new ArrayList<>(paramValues);
Line 61:             Collections.sort(sortedParamValues, 
BusinessEntityComparator.<T, ID> newInstance());
Line 62:             paramValues = sortedParamValues;
Line 63:         }


-- 
To view, visit http://gerrit.ovirt.org/28909
To unsubscribe, visit http://gerrit.ovirt.org/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: I935555bae208786e64f109e267749eafea57fb60
Gerrit-PatchSet: 2
Gerrit-Project: ovirt-engine
Gerrit-Branch: master
Gerrit-Owner: Liron Aravot <lara...@redhat.com>
Gerrit-Reviewer: Allon Mureinik <amure...@redhat.com>
Gerrit-Reviewer: Daniel Erez <de...@redhat.com>
Gerrit-Reviewer: Eli Mesika <emes...@redhat.com>
Gerrit-Reviewer: Liran Zelkha <lzel...@redhat.com>
Gerrit-Reviewer: Liron Aravot <lara...@redhat.com>
Gerrit-Reviewer: Maor Lipchuk <mlipc...@redhat.com>
Gerrit-Reviewer: Yair Zaslavsky <yzasl...@redhat.com>
Gerrit-Reviewer: automat...@ovirt.org
Gerrit-Reviewer: oVirt Jenkins CI Server
Gerrit-HasComments: Yes
_______________________________________________
Engine-patches mailing list
Engine-patches@ovirt.org
http://lists.ovirt.org/mailman/listinfo/engine-patches

Reply via email to