selector.require(dfg);
Set extraRows = new HashSet();
rows = ((TransactionImpl) currentTransaction()).getDriver()
.select(selector, extraRows);
if (!rows.isEmpty()) {
Row newFields = (Row) rows.iterator().next();
// Determine which fields to copy
Iterator i = dfg.getColumns().iterator();
while (i.hasNext()) {
Column c = (Column) i.next();
row.setValue(c, newFields.getValue(c));
}
} else {
throw new JDODataStoreException(I18N.msg("E_row_deleted"));
}
} catch (DriverException e) {