The PullRequestBotFactory tries to create a single IssueBot@<project> bot instance per IssueProject found. Unfortunately, due to how it's using maps, and that configuration::issueProject always returns a new instance, it ends up creating lots of duplicates.
These duplicates haven't affected anything functionally as far as I can tell, but are quite detrimental to performance, especially if large bulk updates are done in JBS.
I think the best fix here is to avoid relying on IssueProject implementing a good hashcode method and start explicitly caching instances of IssueProject in a separate `Map<String, IssueProject>` map in the factory to avoid having multiple equivalent instances around.
These duplicates haven't affected anything functionally as far as I can tell, but are quite detrimental to performance, especially if large bulk updates are done in JBS.
I think the best fix here is to avoid relying on IssueProject implementing a good hashcode method and start explicitly caching instances of IssueProject in a separate `Map<String, IssueProject>` map in the factory to avoid having multiple equivalent instances around.
- relates to
-
SKARA-2387 Revert SKARA-2386 and cache issueProject in JiraHost
- Resolved
- links to
-
Commit(master) openjdk/skara/cf23f68f
-
Review(master) openjdk/skara/1689