Status: New
Owner: ----
Labels: Type-Defect Priority-Medium

New issue 38 by [email protected]: smscgateway fails to process smses to the same target address in parallel
https://code.google.com/p/smscgateway/issues/detail?id=38

What steps will reproduce the problem?

1. Send multiple sms (or chunked sms) to a user to make these chunks to be processed in parallel by TxSmmServerSbb.processSms(...).


What is the expected output? What do you see instead?

According to the code in TxSmmServerSbb.processSms(...) it looks like these sms'es has to be passed for further processing serially, by using the same ActivityContextInterface stored in ActivityContextNamingFacility. However it doesn't happen or better say it doesn't happen all the time. Sometimes I see that 2+ threads lookup in the ActivityContextNamingFacility for the address, receive null and then bind new ActivityContextInterface and all of them succeed!!! no NameAlreadyBoundException is thrown.
When this happens I often see this exception in the log:
23:36:02,345 WARN [ActivityContext] (pool-25-thread-1) failed to unbind name: <address> from ac:ACH=NULL>-4ca4a7a9:14dadd37660:-7ff4
javax.slee.facilities.NameNotBoundException: name not bound
at org.mobicents.slee.runtime.facilities.ActivityContextNamingFacilityCacheData.unbindName(ActivityContextNamingFacilityCacheData.java:88) at org.mobicents.slee.runtime.facilities.ActivityContextNamingFacilityImpl.removeName(ActivityContextNamingFacilityImpl.java:154) at org.mobicents.slee.runtime.activity.ActivityContextImpl.removeNamingBindings(ActivityContextImpl.java:244) at org.mobicents.slee.runtime.activity.ActivityContextImpl.activityEnded(ActivityContextImpl.java:574) at org.mobicents.slee.runtime.event.ActivityEndEventUnreferencedCallback.eventUnreferenced(ActivityEndEventUnreferencedCallback.java:58) at org.mobicents.slee.container.event.EventContextImpl.eventUnreferenced(EventContextImpl.java:225) at org.mobicents.slee.container.event.EventReferencesHandlerImpl.remove(EventReferencesHandlerImpl.java:63) at org.mobicents.slee.container.event.EventContextImpl.routed(EventContextImpl.java:260) at org.mobicents.slee.runtime.eventrouter.routingtask.EventRoutingTaskImpl.routeQueuedEvent(EventRoutingTaskImpl.java:566) at org.mobicents.slee.runtime.eventrouter.routingtask.EventRoutingTaskImpl.run(EventRoutingTaskImpl.java:126) at org.mobicents.slee.runtime.eventrouter.EventRouterExecutorImpl$EventRoutingTaskStatsCollector.run(EventRouterExecutorImpl.java:73) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
        at java.lang.Thread.run(Thread.java:745)

Probably this exception is caused by the fact that one of the "bound" ActivityContextInterface unbind the name registration successfully, and the other ones, which supposed to fail on binding due to NameAlreadyBoundException, fail to unbind themselves.


What version of the product are you using? On what operating system?
1.0.0-ALPHA, Linux (Ubuntu), JDK 1.7


Please provide any additional information below.


--
You received this message because this project is configured to send all issue notifications to this address.
You may adjust your notification preferences at:
https://code.google.com/hosting/settings

--

--- You received this message because you are subscribed to the Google Groups "mobicents-all-issues-changes" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to