diff --git a/org.compiere.db.oracle.provider/src/org/compiere/db/DB_Oracle.java b/org.compiere.db.oracle.provider/src/org/compiere/db/DB_Oracle.java index 61addf67a7..e82eee8deb 100644 --- a/org.compiere.db.oracle.provider/src/org/compiere/db/DB_Oracle.java +++ b/org.compiere.db.oracle.provider/src/org/compiere/db/DB_Oracle.java @@ -1362,6 +1362,8 @@ public class DB_Oracle implements AdempiereDatabase } rs = stmt.executeQuery(); if (rs.next()) { + // reload the record being locked - it could have changed in a different thread - IDEMPIERE-2629 + po.load(po.get_TrxName()); return true; } else { return false; diff --git a/org.compiere.db.postgresql.provider/src/org/compiere/db/DB_PostgreSQL.java b/org.compiere.db.postgresql.provider/src/org/compiere/db/DB_PostgreSQL.java index 05c7113916..80002cbba8 100755 --- a/org.compiere.db.postgresql.provider/src/org/compiere/db/DB_PostgreSQL.java +++ b/org.compiere.db.postgresql.provider/src/org/compiere/db/DB_PostgreSQL.java @@ -1089,6 +1089,8 @@ public class DB_PostgreSQL implements AdempiereDatabase rs = stmt.executeQuery(); if (rs.next()) { + // reload the record being locked - it could have changed in a different thread - IDEMPIERE-2629 + po.load(po.get_TrxName()); return true; } else { return false;