Constraints are allocated during the collision detection phase and retained between ticks. An attempt to create a constraint for the same shape pair as seen on the previous tick will return the existing collision constraint with all of its data intact.