We are running a self-hosted Discourse forum (tff-forum.de) with more than 4 million posts and a lot of large threads.
Since the last update to version 3.4.0.beta3 we are experiencing long runtimes of 15 to 20 seconds when moving posts from one thread to another.
In some cases the function terminates with an error and the log shows the following message:
Unicorn worker received USR2 signal indicating it is about to timeout, dumping backtrace for main thread
Before the update we had only problems moving posts between very large threads. Now the function terminates sometimes when the threads only contain a few posts.
Do you have any advice what we can check to find the cause for this problem? Is it possible that we have an issue with the database (missing index/statistics)?
Thank you for the advice to update to 3.4.0.beta4. Because of the PostgreSQL change to version 15 we need a longer maintenance timeslot. But it makes sense to do the update in the next days to see if this solves our problem.
We were a little bit surprised about the PostgreSQL update. We did the update of our test system to 3.4.0.beta3 a few days earlier and had no problems. When we did the update of the production system the database update was suddenly part of the process. We were not prepared for that and skipped the database update. So we have to do it either together with version 3.4.0.beta4 or as a separate step before.
Is it possible that the skipped database update causes our performance issues? Is there an easy way to check if the database indexes and statistics are correct?