Dates overlap check should lock the table
I think the checks of those modules should lock the table for concurrency issue.
If overlapping records are created in parallel, the check of each one will not fail (just like the assignation is locking the move table).