broadcastEval blocks all shards
Hello. I have a broadcastEval which calls a function on each shard.
After running on about half of the shards, all shards "freeze" (They don't respond to any interactions or messages).
After about 20-30 seconds, all shards resume normal operation. Then the shards that hadn't completed their function completes it, and the shards respond to all the interactions and messages that they got during the "freeze".
This happened suddenly and to code that has been working well for many months.
It did not happen when I updated, I hadn't updated for a while when it started happening. But I have updated to check if it would help.
Should also be said it doesn't always happen.
I think it does not happen right after shards have been restarted, but it happens say 90% of the time otherwise.
I have not been able to reproduce this on a smaller bot.
djs: 14.11.0
node: 16.13.1
sapphire/framework: 4.4.3
I've tried a lot of different evals and ways to call the function, right now it's:
I hope it's okay that I posted here, you've always been very good at figuring things out!
if it's not ok, please tell me.
1 Reply
It was not related to broadcastEval, it doesn't matter how it's called. The problem is loadall().