I have created a simulator based on nphysics and I've noticed that after 6 days the mechanical world stops ticking correctly. This seems to be a floating point precision issue regarding the parameters t and dt. Using the default dt = 1.0/60.0 then the simulator stops at exactly 524,288 seconds.
let t = 524288.0f32;
assert_eq!(t + 1.0/60.0, t);
While it would be possible to change the simulator to run on f64 values, nothing apart from the time requires that precision.