Two types of transactions work on a set of records. First type selects records that don't have a flag set and sets it. The second transaction selects those records that have a flag set and removes the flag.
It would appear that those transaction types are mutually exclusive. However, field history reports that a record had the flag set and then removed at exactly the same timestamp.
My question is when exactly are history records created? Are they created when a transaction finally commits or with each DML call of the transaction?