Can you create a ticket for this over in trac for this please: https://bbpress.trac.wordpress.org/
(Adding some ‘numbers’ would also help eg #subscribers & #posts so we can test this ourselves.)
Could this also be anything to do with the way I have my DB set up by any chance? Is there any kind of optimisation that can be done to speed up MySQL queries here?
Thanks!
Just updated Trac.
Here’s my latest findings/ questions on this matter:
Hey JJ, just wanted to drop back in here.
I’ve duplicated my live site on a brand new dedicated server and the behaviour I was seeing on my shared server is still there.
I’ve been doing some tests with a server analyst from my host and his initial thoughts are that WP or BBPress, BP is waiting for a ‘true’ return on mail confirmation before it’s actually allowing any php to continue/ refresh the page to let the user see his post.
If I open up a new browser window and refresh the activity stream for example – AS THE OTHER WINDOW IS STILL PROCESSING THE POST – I can see that it has actually ALREADY been posted.
This means the post is being written to the DB pretty quickly and mail is starting to be sent with the topic reply subscription notifications, but it seems that the page can’t refresh for the poster until the mail has been sent and some kind of confirmation of that has been received.
It makes no difference whether I send the email locally or through SMTP (Google Apps), so it’s not the mail server being slow.
The topic that this is worst on still only has about 30 subscribers though, so it’s hardly hundreds or thousands.
I’m guessing that not many users even on BIG sites will get loads more than 30 or so for each topic, so this is why this may have gone unnoticed in the past.
Could you guys explain to me the process of what BBPress is actually going through BEFORE it is allowed to refresh the page the user who is posting is on.
Their post is being posted way before they get to see it – does the page wait for confirmation of the emails being sent.
There isn’t a problem posting new topics with no replies or very few voices.
I think it has to be something along these lines. Thanks! 🙂
Quick update on this folks.
I’ve now moved onto a new dedicated server.
I’m still having the huge waiting times when I have more than a few subscribers to a topic.
The post that is most affected has around 30 subscribers now.
Once I hit reply, the forum post is actually posted pretty much instantly – I can open the activity stream in a second browser and see it there.
The screen where I’m posting from however hangs until ALL emails have been sent.
If I look into my Google Apps ‘sent’ items, I see the emails going out at a rate of one or 2 a second.
For 30 subscribers, this means the page won’t actually continue to load for the original poster for around 20 seconds.
At that point, it finally carries on loading and they see their reply posted.
This doesn’t look like a server error as it’s happened when using both the server’s own mail system and Google Apps on 2 different servers.
Is there any way at all to allow the script to load continuously, whilst queuing the emails by cron or something?
I’m more than happy to try ANY suggestions. I SO want to get this fixed as it really cuts down on interaction in my forums as people just don’t want to wait 30 seconds to see their post.