Red Hat Bugzilla – Bug 816055
Document 3GB Memory Allocation limit on 32-bit systems
Last modified: 2014-11-09 17:38:38 EST
Description of problem:
Apparently, 32-bit broker is unable to allocate more than ~3GB of memory, which is not a bug but an obvious restriction (see bug 756790). Nevertheless, this restriction is not mentioned in the user documentation.
Memory allocation restriction for 32-bit broker is not described in the MRG documentation.
Memory allocation restriction for 32-bit broker is described properly in the documentation.
I think the user process memory limit depends on what kind of kernel you are running: a regular 32 bit kernel will only allow a user process to allocate 3Gb (because 1Gb of memory space is reserved for the kernel itself). However I think a PAE kernel will allow a user process to allocate the full 4Gb of memory space. Because in that case the kernel run in its own memory space (but there is a heavier penalty paid for switching from user to kernel mode).
Also note that the 3Gb limit includes all queues and internal data for the qpid broker as well as all of the program code and libraries used so that substantially less than 3Gb would be available for a single queue.
Released for MRG 2.2