In the case which triggered this bug, we had a single task with 7422 results, each of which had a number of log files. Because recipe.files() currently issues one query per recipe, per task, and per result, this means that the response takes too long to generate (going back to the DB so many times) and therefore it hits the 120 second request timeout in beaker-transfer.
Note to self, fix this immediately so nobody ever has to spend their Saturday repeating all of this debugging and recovery again!
(In reply to Dan Callaghan from comment #6) > In the case which triggered this bug, we had a single task with 7422 > results, each of which had a number of log files. Because recipe.files() > currently issues one query per recipe, per task, and per result, this means > that the response takes too long to generate (going back to the DB so many > times) and therefore it hits the 120 second request timeout in > beaker-transfer. With this patch: http://gerrit.beaker-project.org/#/c/4575/ The response only takes 7 seconds instead of 33 seconds on a zero traffic beaker box. And I have also simulated a heavy load beaker box and it does not time out either.
(In reply to Dan Callaghan from comment #4) > We should some better debug logs in beaker-transfer, specifically so that we > can see each recipe as it tries to list and then transfer the files. That > would have made it quite easy to spot which recipe it was getting stuck on > in this case. Add a log message for this comment: http://gerrit.beaker-project.org/#/c/4576/
> With this patch: > > http://gerrit.beaker-project.org/#/c/4575/ > This fix should go to release-22: http://gerrit.beaker-project.org/#/c/4586/
(In reply to matt jia from comment #9) This patch is a more general overhaul of all the log messages in beaker-transfer, to tidy up some messes. This should give us a better idea of exactly what it's doing, plus better messages if rsync fails. http://gerrit.beaker-project.org/4601 It will also help with verifying the beaker-transfer bugs we are working on.
Beaker 22.1 has been released.