Opened 10 years ago

Closed 10 years ago

Last modified 10 years ago

#877 closed defect (fixed)

Memory consumption of the invite session grows indefinitely if call is running for long period of time and with many re-INVITES

Reported by: bennylp Owned by: bennylp
Priority: critical Milestone: release-1.4
Component: pjsip Version: trunk
Keywords: Cc: c4i
Backport to 1.x milestone: Backported:

Description

The invite session uses single memory pool to allocate memory pool for its session data (such as negotiated SDPs, remote target, etc.), and by design, memory blocks are not freed until the pool is released, and for the invite session, this only happens when the session is terminated (call is hung up). Unfortunately, if the call is running for long period of time and with many re-INVITES, this will grow the memory consumption almost indefinitely.

Change History (3)

comment:1 Changed 10 years ago by bennylp

  • Milestone changed from release-1.3 to release-1.4

comment:2 Changed 10 years ago by bennylp

  • Resolution set to fixed
  • Status changed from new to closed

Fixed in r2869:

  • introducing flip-flop pools in the pjsip_inv_session. There are two additional pools created, and one of them will be reset everytime SDP negotiation is done to release memory back to the OS

comment:3 Changed 10 years ago by nanang

In r2879:

  • Fixed bug flip-flop pools shouldn't be swapped when SDP negotiation fails.
Note: See TracTickets for help on using tickets.