We are still experiencing the problem on my server, so I went full on debugging.
Background: I am rebooting my server every 2h using a bot that calls "restart" from the REST API.
I collect all the RPT logs over time, and monitored the periodicity at which the DayZ server reloads the whitelist.
This is when the "Reloading Userlist whitelist.txt" appears in the RPT log (for instance, look at my previous post).
I assume DayZ server performs the reloading every 5m, but often this number grow to 5m 20s-30s, since the server must be busy running other things.
Long story short, every about 5m 20s (that is, 320s), a Reloading Userlist whitelist.txt appears in the logs.
I am plotting this period using the blue line in figure.
Each row is one 2h period of server running. The blue line is in the middle when the periodicity of whitelist reloading is about 320s.
The line is zero at the start of every 2h period (since it is the first time the reloading happens), then it goes to zero (the small downward triagle shapes) when the whitelist kick happens.
If fact, in that case the whitelist is reloaded twice in short sequence, like if the first case failed.
Note: in this day showed below, we did not perform any update to the whitelist.
Note2: the red line shows the number of players connected in a given time window. If the players re-login quickly, the red line does not drop in correspondence of a whitelist kick
I observed that whitelist kicks happen especially when the whitelist reloading periodicity changes often, which I believe is the byproduct of my DayZ server running on some shared CPU infrastructure. For instance, in the row second from last, you can see the blue line growing at some point, while it is expected to be stable.
While I cannot be certain about why this is happening, my guess would be that Nitrado whitelist update script (which I assume updates the content of whitelist.txt) is locking the whitelist file at the time in which DayZ server tries to access it, causing this short failure.
Any help is really appreciated, since this is often breaking the game momentum for my players (and upsetting me everyday more).
(Note: any whitelist name is checked to be a compliant PSN id, and my bot ensures that also the name case is matching)