Attention is currently required from: keith. pespin has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-msc/+/28340 )
Change subject: Avoid UPDATE immediately followed by DELETE ......................................................................
Patch Set 1:
(5 comments)
File src/libmsc/db.c:
https://gerrit.osmocom.org/c/osmo-msc/+/28340/comment/5d3c17ad_215e7893 PS1, Line 314: [DB_STMT_SMS_DEL_SENT_BY_ID] = what's the point in having the 2 of them?
File src/libmsc/gsm_04_11.c:
https://gerrit.osmocom.org/c/osmo-msc/+/28340/comment/f72118ab_2728313a PS1, Line 871: /* msc_vlr tests will not pass any sms_queue, hence need to check smq != NULL */ Rather better fix the tests to pass a valid smq pointer.
https://gerrit.osmocom.org/c/osmo-msc/+/28340/comment/aa4a01d4_460e3574 PS1, Line 873: db_sms_mark_delivered(sms); Sounds like all this should be placed wherever S_SMS_DELIVERED signal is handled imho.
File src/libmsc/sms_queue.c:
https://gerrit.osmocom.org/c/osmo-msc/+/28340/comment/64058604_497df46f PS1, Line 123: struct gsm_sms_queue { If you move the code block to be handled in signal callback, this probably can stay here.
https://gerrit.osmocom.org/c/osmo-msc/+/28340/comment/09c1478b_1a1ee10e PS1, Line 607: /* Remember the subscriber and clear the pending entry */ The cod eblock should be mover over here?