Skip to main content
Summary Details on how Orbix 6 manages memory for incoming messages.
Article Number 26913
Environment Orbix 6 All Supported Operating Systems
Question/Problem Description How does Orbix 6 manage memory for incoming messages?
Clarifying Information The following stack trace below indicates that Orbix allocates memory to read incoming network traffic into. This memory holds incoming GIOP messages.

IT_Buffer::HeapStorageImpl::HeapStorageImpl(IT_Buffer::BufferManagerImpl*,unsigned,IT_Buffer::HeapStorageImpl*) [/opt/iona/6.3.3/shlib/amd64/libit_art_sc57.so.5]
IT_Buffer::Buffer*IT_Buffer::BufferManagerImpl::get_heap_buffer(unsigned) [/opt/iona/6.3.3/shlib/amd64/libit_art_sc57.so.5]
void IT_ATLI2_IP::TCPConnectionImpl::readable(IT_WorkQueue::WorkItem*&) [/opt/iona/6.3.3/shlib/amd64/libit_atli2_ip_sc57.so.5]
void IT_ATLI2_IP::TCPConnectionImpl::event_occurred(short,IT_WorkQueue::WorkItem*&) [/opt/iona/6.3.3/shlib/amd64/libit_atli2_ip_sc57.so.5]
void IT_ATLI2_IP::PollPoller::process_events(IT_WorkQueue::WorkItem*&) [/opt/iona/6.3.3/shlib/amd64/libit_atli2_ip_sc57.so.5]
IT_WorkQueue::WorkItemStatus IT_ATLI2_IP::IPPoolImpl::execute() [/opt/iona/6.3.3/shlib/amd64/libit_atli2_ip_sc57.so.5]
void*IT_Work_WorkerThread::run() [/opt/iona/6.3.3/shlib/amd64/libit_art_sc57.so.5]
IT_ThreadFactory_call_thread_body [/opt/iona/6.3.3/shlib/default/amd64/libit_ifc_sc57.so.5]
Error Message
Defect/Enhancement Number
Cause
Resolution The Orbix 6 ORB uses a buffer manager that allocates memory from the heap in 16K chunks and holds onto them for the lifetime of the ORB. As incoming GIOP messages are processed, these buffers are released back to the buffer manager and reused. If the pattern of the incoming traffic is such that the volume and/or size of the incoming messages is increasing, the cumulative size of the buffers under the control of the buffer manager will increase, but will stabilize as soon as the peak of the traffic volume has passed.
Workaround
Notes
Attachment
Created date: 01 December 2011
Last Modified: 13 February 2013
Last Published: 12 May 2012
First Published date: 01 December 2011

#Orbix
#KnowledgeDocs