Hi,

Before I go re-inventing the wheel, I would like to ask the group if anyone
has come across the situation I find myself with.

Under high load situations, say I'm sending 1500 messages out on an SMPP
bind, I find that there is a delay in receiving the submit_sm_resp from the
SMSC, which contains the msgid.  This delay can be considerable (15 seconds
not uncommon). Meanwhile on my rx bind, I can receive the deliver_sm
indicating successful delivery (or failure).

Throughput is set to 20 on 2 identical binds, so I should be getting through
40 msgs per second. (i'm not getting close to 40/sec, but that will be the
subject of a later email)

As the submit_sm_resp has not yet arrived, no entry has been made in the dlr
database (I'm using mysql, but I don't think that's relevant to this
problem), poor old bb_store has no record of having sent the message, and,
therefore, has no interest in the dlr, and dumps it. In the log, it says:
2008-03-12 10:21:02 [2264] [14] ERROR: SMPP[smppbind4]: got DLR but could
not find message or was not interested in it id<1-1576xxxxxx>
dst<447xxxxxxx>, type<1>

Unless I'm missing something obvious, it looks like I will need to patch my
code (using CVS-20080301), and setup a second table in my dlr database to
hold any orphaned DLRs, then, and I dread adding this overhead, I will have
to check this orphan table everytime I get a submit_sm_resp.  Or I may opt
for an external process to marry the orphans with the correct parents, and
process the rogue dlr's in this manner.

Any thoughts would be much appreciated.

Dave

Reply via email to