RestComm / Restcomm-Connect

The Open Source Cloud Communications Platform
http://www.restcomm.com/
GNU Affero General Public License v3.0
242 stars 215 forks source link

SMPP related class instance not cleaned form memory #2343

Open maria-farooq opened 7 years ago

maria-farooq commented 7 years ago

its observed over a period of time that RC is not cleaning up smpp related actors associated with lifecycle of a single SMS. They are expected to be gone by the end of SMS life cycle (which is very short and not live). Here is a sample histogram collected from a test system.

#:               instances   size    class name
 208:           194          32592  org.restcomm.connect.sms.smpp.SmppInterpreter
 282:           197          18912  org.restcomm.connect.sms.SmsSession
 286:           192          18432  org.restcomm.connect.http.SmsMessagesXmlEndpoint
 305:           398          15920  org.restcomm.connect.sms.api.SmsSessionRequest
 322:           197          14184  org.restcomm.connect.dao.entities.SmsMessage
 340:           386          12352  org.restcomm.connect.http.converter.SmsMessageListConverter 
 355:           194          10864  org.restcomm.connect.sms.smpp.SmppInterpreterBuilder
 556:           194           4656  org.restcomm.connect.sms.smpp.SmppInterpreter$AcquiringLastSmsEvent
 557:           194           4656  org.restcomm.connect.sms.smpp.SmppInterpreter$DownloadingRcml
 558:           194           4656  org.restcomm.connect.sms.smpp.SmppInterpreter$DownloadingFallbackRcml
 559:           194           4656  org.restcomm.connect.sms.SmsService$1

We need to see why these many instances are in memory and why they have not been cleaned up. We need to analyse it on a new batch after we reproduce it on latest release

maria-farooq commented 7 years ago

we have one instance as expected for SmsService you can check completed histogram at https://telestax.zendesk.com/agent/tickets/34464 which is ok so problematic area is actors like SmppInterpreter and SmsSession