I'm working on an extension to share keys which makes use of the import mechanism. For me, the synchronize strategy is sufficient, but while reasoning about the code I found, that it is possible to use any strategy except "synchronize" and "generate new uuids" to introduce Uuids into DeletedObjects while an Entry or Group is still part of the tree (i.e.: create a database with some keys, save a copy, remove some entries from the database and than import the copy using one of the problematic strategies). "Synchronize" is the only strategy which does some housekeeping and "generate new uuids" does not allow this problem to happen, but is this behavior intended?
Synchronizing with a database which suffered such an import would lead to missing imports as long the deletion date is newer than the last modification time, since newly imported entries (which are still in the source database) will be deleted immediately in the target database because of the applying the deleted objects downstream in the process.
This is the intended behavior.
Best regards,
Dominik