On Thu, May 28, 2020 at 10:31 AM Adam Williamson
<adamwill(a)fedoraproject.org> wrote:
Why, though?
I quite like the design of small consumer components to do specific
jobs in response to messages. Lots of the bits I maintain work that
way. Why is it necessarily better for Koji to grow the ability to
change stuff in dist-git than to have a little go-between to do the
job?
One nice property of doing these things as separate services is that
they are more resilient to cascading failures.
Tomas found some problems recently with Koji failing to retry sending
messages when a messagebus connection gets into a certain (rare) state
where it is unavailable but proton is confused. Koji ends up dropping
those messages on the floor, but in the meantime there is more
pressure on the koji-hub application. I could envision a worse
scenario where Koji has to send even more "events" reliably to a bunch
of other services that could be responding very slowly, etc.
The same thing happens with Pagure Git hooks - unfortunately the more
we pile in there, the slower everything becomes.
- Ken