| Summary: | broker std::bad_alloc error | ||||||||
|---|---|---|---|---|---|---|---|---|---|
| Product: | Red Hat Enterprise MRG | Reporter: | Leonid Zhaldybin <lzhaldyb> | ||||||
| Component: | qpid-cpp | Assignee: | Andrew Stitcher <astitcher> | ||||||
| Status: | CLOSED WONTFIX | QA Contact: | Leonid Zhaldybin <lzhaldyb> | ||||||
| Severity: | high | Docs Contact: | |||||||
| Priority: | medium | ||||||||
| Version: | 2.1 | CC: | esammons, jross | ||||||
| Target Milestone: | --- | ||||||||
| Target Release: | --- | ||||||||
| Hardware: | i686 | ||||||||
| OS: | Unspecified | ||||||||
| Whiteboard: | |||||||||
| Fixed In Version: | Doc Type: | Bug Fix | |||||||
| Doc Text: | Story Points: | --- | |||||||
| Clone Of: | Environment: | ||||||||
| Last Closed: | 2012-11-06 18:53:24 UTC | Type: | --- | ||||||
| Regression: | --- | Mount Type: | --- | ||||||
| Documentation: | --- | CRM: | |||||||
| Verified Versions: | Category: | --- | |||||||
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |||||||
| Cloudforms Team: | --- | Target Upstream Version: | |||||||
| Attachments: |
|
||||||||
|
Description
Leonid Zhaldybin
2011-11-24 14:53:23 UTC
Created attachment 535946 [details]
Script to reproduce the bug.
Just untar it, change to bug_bad_alloc directory and type "make run".
Created attachment 535947 [details]
qpid broker log with std::bad_alloc error.
This is in part fundamental; it's exhausting process virtual memory. Is there a better way to handle it? I'm inclined to seek a better log message (if possible) and a documentation fix. I concur with Justin - I don't think we can do much in the case that std::bad_alloc is thrown - it does mean that we can allocate no more memory. And in this case it almost certainly that we've run out of virtual address space. We might be able to produce a log message before exiting, but we might not. The log subsystem itself needs to allocate memory. I think that this can only be solved with documentation. We may need to figure out safe maxima for the memory size that can be used. I don't think this is an actual bug, I propose closing it "won't fix." |