Today, when restarting the bot, I found that the IssueBot was down for a long time(about 30 minutes), and then I realized that in PullRequestBotFactory, we will create all pullRequestBot first, then CSRIssueBot, and IssueBots last.
After the bot is restarted, the botRunner would run all pullRequestBots first and we have a lot of pullRequestBots, so it will take a lot of time. And if users make changes to issues in JBS during this interval, the IssueBot may not be able to get all updated issues. It's really bad.
To solve this problem, we could to reverse the order of bots in PullRequestBotFactory, therefore we could make sure IssueBot will be run firstly.
After the bot is restarted, the botRunner would run all pullRequestBots first and we have a lot of pullRequestBots, so it will take a lot of time. And if users make changes to issues in JBS during this interval, the IssueBot may not be able to get all updated issues. It's really bad.
To solve this problem, we could to reverse the order of bots in PullRequestBotFactory, therefore we could make sure IssueBot will be run firstly.