Telerik Data Access groups the operations by type. First inserts, then updates and third are deletes. This is necessary to have all new data present before we update the foreign key references. Same with deletes, first reset the FKs, then delete the referenced rows.
In some circumstances this order does not work but it is very complicated and time consuming to detect such dependency graphs like yours.
You can always do a FlushChanges() after you have changed the name. We push everything to the server but let the server transaction running. Later (should not be too long because of the server transaction) your insert will succeed. The transactional boundary is still intact.
OpenAccess ORM is now Telerik Data Access
. For more information on the new names, please, check out the Telerik Product Map