Bug 1310826

Summary: [rabbitmq-server] Stops running when memory is low
Product: Red Hat OpenStack Reporter: Joe Talerico <jtaleric>
Component: rabbitmq-serverAssignee: Peter Lemenkov <plemenko>
Status: CLOSED NOTABUG QA Contact: Udi Shkalim <ushkalim>
Severity: medium Docs Contact:
Priority: unspecified    
Version: 7.0 (Kilo)CC: apevec, jeckersb, lhh, srevivo
Target Milestone: ---Keywords: ZStream
Target Release: 8.0 (Liberty)   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2017-01-06 12:15:43 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Joe Talerico 2016-02-22 17:38:58 UTC
Description of problem:
When the director node runs out of physical memory, RabbitMQ shuts itself down due to running out of memory. eck has traced it to here :

ERTS_ALC_INLINE
void *erts_alloc_fnf(ErtsAlcType_t type, Uint size)
{
    return (*erts_allctrs[ERTS_ALC_T2A(type)].alloc)(
        ERTS_ALC_T2N(type),
        erts_allctrs[ERTS_ALC_T2A(type)].extra,
        size);
}

Version-Release number of selected component (if applicable):
ospd72 (RHN) 

How reproducible:
100%

Steps to Reproduce:
1. OSPd w/ 8GB of RAM should cause this to happen with a small POC deployment

Actual results:
RabbitMQ-server stops

Expected results:
RabbitMQ-Server keep thumping

Comment 3 Peter Lemenkov 2017-01-06 12:15:43 UTC
OOM will kill it anyway if the memory is low, and it's hard to handle it properly (both from technical, and from business logic PoVs).

The proper way to "fix" that is to either adjust number of messages pushed into / read from RabbitMQ (it's not up to the bus to decide what message to store and what to discard to prevent OOM), or increase total size of physical memory available.

I'm going to close this as NOTABUG.