Problem with "Distance between pull groups" and PBC

GROMACS version: 2020.2
GROMACS modification: No


While doing some AWH scans of the ligand complexes with proteins and DNA, I sometimes get the errors at some unpredictable points in the simulation

Fatal error:
Distance between pull groups 3 and 10 (5.204208 nm) is larger than 0.49 times the box size (5.203962).

In previous cases I was able to work around it by including an additional restraining potential that supposedly prevented the ligand from going too far. However, with the recent system (DNA 28-mer + organic ligand in water box) I was not so lucky.
Moreover, I cannot understand why the error occurs when it does. I also wonder what the correct options should be and/or if the logic in pull code might actually be incorrect.
So, the box is actually quite large (10.6 nm including 1 nm margin on all sides) and the flat-bottom restraint is set at 5 nm. However, the system never reaches that distance. In the last run, it started at 1.9 nm and crashed soon after 3.35 nm. I guess that, due to some random drift of molecules, the pull code suddenly finds another periodic image of one or both molecules more “attractive”, leading to this discontinuity.
I tried playing with pull-pbc-ref-prev-step-com, pull-groupN-pbcatom, and COM motion removal options (even tried setting the ligand pbcatom to another molecule’s reference) but to no avail. Increasing the box size obviously would not help either, as the desired distance is not reached anyway (but the simulation would take longer to crash)))).

Hello Genie,
You can only pull two groups to an extent of 0.49 time the box size, as you also mentioned, the pulled group would see the reference position through pbc after a certain of time.
What you want to do is to have a box large enough in the pulling direction, so that you can reach the desired distance, without reaching 0.49 of the box length. That is the only way that comes to my mind. Of course, bigger box, larger system, longer calculations.

As I wrote, it does not actually reach that distance. That is why I think something might be wrong with logic.
Just tried a larger box just in case. This time it crashed even earlier (happens randomly anyway)

Pull group natoms pbc atom distance at start reference at t=0

3 12 453
10 6 453 1.951 nm 5.000 nm

step 600: timed with pme grid 108 108 108, coulomb cutoff 1.200: 1508.0 M-cycles

Program: gmx mdrun, version 2020.2
Source file: src/gromacs/pulling/pull.cpp (line 497)

Fatal error:
Distance between pull groups 3 and 10 (6.186362 nm) is larger than 0.49 times the box size (6.186125).

How could it be that they reached 6.186362 nm sooner that the previous (5.204208 nm)?
what reaction coordinates are you using? can you upload your .mdp file? or only the pull code section.
Nothing is random…

Obviously it could not have actually moved by more than 40 angstroms in just a few femtoseconds, that is the whole point.
I have created an issue on gitlab: