The Find an object action looks into your table, but finds nothing, because your data is not committed (still in memory, not in database). That’s why you can have duplicates after commit.
This issue is also possible if you have already data in your tables: if id 1 is more times in your data to import, but this id is not in the mapped field of your table.
————————
A solution could be to handle the find action by a microflow. In that case you also can find both in the non-committed list and in database.