Opened 11 years ago
Closed 11 years ago
#10829 closed bug (duplicate)
package daemon full cpu on new package addition
Reported by: | kallisti5 | Owned by: | bonefish |
---|---|---|---|
Priority: | normal | Milestone: | R1 |
Component: | Servers/package_daemon | Version: | R1/Development |
Keywords: | Cc: | ||
Blocked By: | #10817 | Blocking: | |
Platform: | x86 |
Description
The package_daemon has been having several serious issues in recent builds.
Build a package (any package) via haikuports, and copy it to /boot/system/packages to activate it. After a few packages package_daemon will begin consuming 100% cpu of one core with "job runner" and the new package won't get added.
Screenshot attached. No relevant info or errors in syslog. I've reproduced this on two different systems running gcc4h.
~> uname -a Haiku shredder 1 hrev47213 May 9 2014 01:34:18 BePC x86 Haiku
Attachments (3)
Change History (9)
by , 11 years ago
Attachment: | screenshot1.png added |
---|
comment:1 by , 11 years ago
comment:2 by , 11 years ago
Priority: | critical → high |
---|
Ah. Could be. Will test post-hrev47215 and report back.
comment:3 by , 11 years ago
upgraded to hrev47215. package_daemon still doing strange things. see attached crash log.
by , 11 years ago
Attachment: | package_daemon-610-debug-12-05-2014-03-01-26.report added |
---|
by , 11 years ago
Attachment: | package_daemon-854-debug-12-05-2014-03-38-39.report added |
---|
comment:4 by , 11 years ago
Managed to reproduce it with a debug build of package_daemon + libroot_debug, seems it's trying to remove an entry from a hash table that's already been destroyed. Attached corresponding crash report with full variable dump. Unfortunately don't have more time to dig into it further at the moment, but perhaps it might help shed some light on what's going on.
comment:5 by , 11 years ago
On second thought, might have found it: in Volume's destructor, the package file manager is destroyed before calling SetLatestState(). Thus, when SetLatestState() destroys the previous latest state, any packages attached to it get freed, which in turn try to remove themselves from the (already deleted) package file manager. I'd guess that reordering things so that the state setting call happens prior to deleting the file manager should fix this, but that might have other side effects I'm not aware of. Ingo, thoughts?
comment:6 by , 11 years ago
Blocked By: | 10817 added |
---|---|
Priority: | high → normal |
Resolution: | → duplicate |
Status: | new → closed |
Likely a duplicate of #10817, which was fixed in hrev47215.