Search found 5 matches

by shane
Thu May 14, 2020 1:30 am
Forum: Inetlab.SMPP v2.x (.NET Standard, .NET Core)
Topic: Race condition in MessageComposer causes NullReferenceException
Replies: 6
Views: 9413

Re: Race condition in MessageComposer causes NullReferenceException

Alternate theory why this happens: - two parts received quickly. asynchronous handler. - in MessageComposer.AddMessage, two parts are being processed simultaneously by two threads - both threads execute _itemStore.AddOrUpdate near simultaneously - when both threads land on the next line (checking it...
by shane
Tue May 12, 2020 6:37 am
Forum: Inetlab.SMPP v2.x (.NET Standard, .NET Core)
Topic: Connection recovery can send multiple bind requests
Replies: 6
Views: 48021

Connection recovery can send multiple bind requests

Hi, After a client is disconnected from a server, it attempts to reconnect and rebind. If the server is in a bad state, where it accepts the connection but does not respond to messages, these binding attempts with fail with SMPPCLIENT_RCVTIMEOUT and the socket will be disconnected. The client will t...
by shane
Tue May 12, 2020 6:12 am
Forum: Inetlab.SMPP v2.x (.NET Standard, .NET Core)
Topic: Race condition in MessageComposer causes NullReferenceException
Replies: 6
Views: 9413

Race condition in MessageComposer causes NullReferenceException

Hi, When using MessageComposer in a stress testing project, I sometimes receive a NullReferenceException: Object reference not set to an instance of an object. System.NullReferenceException Inetlab.SMPP.dll!Inetlab.SMPP.Common.ComposerItem.GetFullMessage() Line 392 C# Inetlab.SMPP.dll!Inetlab.SMPP.C...
by shane
Wed Apr 29, 2020 12:27 am
Forum: Inetlab.SMPP v2.x (.NET Standard, .NET Core)
Topic: response for evClientSubmitSm handler
Replies: 8
Views: 10967

Re: response for evClientSubmitSm handler

The library responds after your event handler completes. If your event handler throws an exception, a failure response is automatically sent. To prevent an automatic response, set Response = null in the event args passed to your handler. If you can't figure out what's going on, I recommend getting f...