This has to be most annoying assert in Falcon, next to the 'active'
asserts in the Record class.
Historically, this asserted because hasRecord() failed to thaw the
record, leaving the record state as 'recChilled'. In this case, however,
dup->state is 'recRollback'.
Do you think we should we check for 'recRollback', too?
for (Record *dup = rec; dup; dup = dup->getPriorVersion())
if (dup == record)
continue; // Check next record version
// Get the record's transaction state. Don't wait yet.
state = transaction->getRelativeState(dup, DO_NOT_WAIT);
// Check for a deleted record or a record lock
// If the record is a lock record, keep looking for a dup.
if (dup->state == recLock)
continue; // Next record version.
// The record has been deleted.
>>> ASSERT(dup->state == recDeleted); <<<