diff --git a/jOOQ/src/main/java/org/jooq/impl/UpdatableRecordImpl.java b/jOOQ/src/main/java/org/jooq/impl/UpdatableRecordImpl.java index 2fbcf2fd13..a3b236049e 100644 --- a/jOOQ/src/main/java/org/jooq/impl/UpdatableRecordImpl.java +++ b/jOOQ/src/main/java/org/jooq/impl/UpdatableRecordImpl.java @@ -349,11 +349,13 @@ public class UpdatableRecordImpl> extends TableReco Utils.addConditions(select, this, getPrimaryKey().getFieldsArray()); if (select.execute() == 1) { - delegate(configuration(), select.getResult().get(0), REFRESH) + final AbstractRecord source = (AbstractRecord) select.getResult().get(0); + + delegate(configuration(), (Record) this, REFRESH) .operate(new RecordOperation() { @Override public Record operate(Record record) throws RuntimeException { - setValues(f, (AbstractRecord) record); + setValues(f, source); return record; } });