Summary: | emerge exceeds maximum recursion depth limit | ||
---|---|---|---|
Product: | Portage Development | Reporter: | Richard Yao (RETIRED) <ryao> |
Component: | Core | Assignee: | Portage team <dev-portage> |
Status: | RESOLVED FIXED | ||
Severity: | major | Keywords: | InVCS |
Priority: | Normal | ||
Version: | unspecified | ||
Hardware: | All | ||
OS: | Linux | ||
See Also: |
https://bugs.gentoo.org/show_bug.cgi?id=320859 https://bugs.gentoo.org/show_bug.cgi?id=613990 |
||
Whiteboard: | |||
Package list: | Runtime testing required: | --- | |
Bug Depends on: | |||
Bug Blocks: | 402213 | ||
Attachments: | Output generated |
Description
Richard Yao (RETIRED)
![]() Your system got overloaded, which is no surprise since it really doesn't make sense to use --jobs without --load-average. (In reply to comment #1) > Your system got overloaded, which is no surprise since it really doesn't make > sense to use --jobs without --load-average. The odd thing is that I have reached load averages of over 100 when emerging KDE in the past without any loss of function. Is there any particular reason why emerge should not function under these circumstances? We may be able to re-organize the stack handling, or simply use sys.setrecursionlimit() to increase the limit. The default limit is 1000. Still, I suspect that your system was loaded to an unreasonable level. You had a sustained load average of 11.8, and 103 concurrent builds executing when it exceeded the limit. (In reply to comment #3) > We may be able to re-organize the stack handling We can add a timeout method to the scheduler, like the glib.timeout_add() function from pygobject, and use that instead of recursion inside AbstractEbuildProcess._exit_command_callback(). I've got a set of patches for this that I'll push as soon as git.overlays.gentoo.org comes back online: http://dev.gentoo.org/~zmedico/tmp/bug_402335/ (In reply to comment #5) > I've got a set of patches for this that I'll push as soon as > git.overlays.gentoo.org comes back online: > > http://dev.gentoo.org/~zmedico/tmp/bug_402335/ These resolve my issue. Thanks. :) Thanks for testing. The patches are in git now: http://git.overlays.gentoo.org/gitweb/?p=proj/portage.git;a=commit;h=e9d1125f6730c85c4b384a580da55da68338acf1 http://git.overlays.gentoo.org/gitweb/?p=proj/portage.git;a=commit;h=839f369f259a7c019c1f544bf4c153058355f6d4 http://git.overlays.gentoo.org/gitweb/?p=proj/portage.git;a=commit;h=445a6ea22c132f4c06c2cc7c48ec6e7af7116962 This is fixed in 2.1.10.46 and 2.2.0_alpha86. This is fixed in 2.1.10.46 and 2.2.0_alpha86. Here's a fix for a similar recursion problem that can be triggered by Ctrl-C: http://git.overlays.gentoo.org/gitweb/?p=proj/portage.git;a=commit;h=07823ba56f63309da9547e02e96b043005932be0 |