Better questing causing server stalls due to disk io on large questprogress.json
Electrofried opened this issue ยท 0 comments
I assist managing a public FTB Continuum server that includes BQ (3.5.257), we are seeing small stalls in the server that happen every time BQ has to read the questprogress.json. This file is currently sitting at 6.5mb in size, the more it grows, the worse the stalls get. We have encountered this issue before with project ozone and I am dreading what project ozone 3 will be like with its well over 1000 quests, as a server ages and more players cycle through the pack it becomes unmanageable. We currently have an entire m.2 SSD dedicated to this server alone to mitigate the issue but throwing more IO at the issue can only go so far.
Is it possible to change the way the quest data is stored, such as storing per player like playerdata on a per player basis? This would at least allow us to prune the database manually if a file has not been altered after x weeks, or better yet, if its stored separately per player, then the mod can only read/update the currently online players database instead of the entire history of every single player on the server.
Let me know if you need more information, I can provide a snapshot download of our server instance if you would like to diagnose the disk io or gather any more data you would like myself.