Michael Kublin has posted comments on this change.
Change subject: engine: Compare and set instead of updateVdsDynamic in VM
scenarios
......................................................................
Patch Set 2: (3 inline comments)
....................................................
File
backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dao/VdsDynamicDAODbFacadeImpl.java
Line 42: entity.setId(Guid.createGuidFromString(rs
Line 43: .getString("vds_id")));
Line 44: entity.setvm_active((Integer) rs.getObject("vm_active"));
Line 45: entity.setvm_count(rs.getInt("vm_count"));
Line 46: entity.setvms_cores_count(rs.getInt("vms_cores_count"));
Actually nor.
>From Javadoc for rs.getInt :
* @return the column value; if the value is SQL <code>NULL</code>, the
* value returned is <code>0</code>
Line 47: entity.setvm_migrating((Integer)
rs.getObject("vm_migrating"));
Line 48: entity.setreserved_mem((Integer)
rs.getObject("reserved_mem"));
Line 49: entity.setguest_overhead(rs.getInt("guest_overhead"));
Line 50:
entity.setsoftware_version(rs.getString("software_version"));
Line 45: entity.setvm_count(rs.getInt("vm_count"));
Line 46: entity.setvms_cores_count(rs.getInt("vms_cores_count"));
Line 47: entity.setvm_migrating((Integer)
rs.getObject("vm_migrating"));
Line 48: entity.setreserved_mem((Integer)
rs.getObject("reserved_mem"));
Line 49: entity.setguest_overhead(rs.getInt("guest_overhead"));
same
Line 50:
entity.setsoftware_version(rs.getString("software_version"));
Line 51: entity.setversion_name(rs.getString("version_name"));
Line 52: entity.setVersion(new
RpmVersion(rs.getString("rpm_version")));
Line 53: entity.setbuild_name(rs.getString("build_name"));
....................................................
File
backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/MigrateVDSCommand.java
Line 61: }
Line 62: }
Line 63:
Line 64: private void updateDestinationVds(final Guid dstVdsId, final VM
vm) {
Line 65: TransactionSupport.executeInNewTransaction(new
TransactionMethod<Void>() {
Yep, before using a new thread, update was done in new transaction, and here I
am also updating record inside vds_dynamic.
I am updating only one record so, no see reason for deadlock
Line 66: @Override
Line 67: public Void runInTransaction() {
Line 68: DbFacade.getInstance()
Line 69: .getVdsDynamicDao()
--
To view, visit http://gerrit.ovirt.org/13682
To unsubscribe, visit http://gerrit.ovirt.org/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: I363afc5c3411b0c13e6d6c9ed5b16004738b6ca7
Gerrit-PatchSet: 2
Gerrit-Project: ovirt-engine
Gerrit-Branch: master
Gerrit-Owner: Michael Kublin <[email protected]>
Gerrit-Reviewer: Arik Hadas <[email protected]>
Gerrit-Reviewer: Barak Azulay <[email protected]>
Gerrit-Reviewer: Eli Mesika <[email protected]>
Gerrit-Reviewer: Gilad Chaplik <[email protected]>
Gerrit-Reviewer: Michael Kublin <[email protected]>
Gerrit-Reviewer: Omer Frenkel <[email protected]>
Gerrit-Reviewer: Roy Golan <[email protected]>
Gerrit-Reviewer: Yair Zaslavsky <[email protected]>
_______________________________________________
Engine-patches mailing list
[email protected]
http://lists.ovirt.org/mailman/listinfo/engine-patches