Multiple Commands Transaction Rolled Back

This example issues several requests within one transaction which is rolled back.
Multiple Commands Transaction Rolled Back Message Flow Example (XML)
Message Description
CPS—>SDS
<startTransaction timeout="10">
</startTransaction>

Request to start a transaction within 10 seconds.

Response to start transaction - success.

CPS<—SDS
<startTransactionResp>
<res error="0" affected="0"/>
</startTransactionResp>
CPS—>SDS
<updateSubscriber ent="subscriberRouting" ns="dsr">
<imsi>310910421000777</imsi>
<msisdn>15634210777</msisdn>
<ltehss>LTE_HSS_7</ltehss>
</updateSubscriber>

Request to update existing stand-alone IMSI and MSISDN - success.

CPS<—SDS
<updateSubscriberResp>
<res error="0" affected="2”/>
</updateSubscriberResp>
CPS—>SDS
<updateSubscriberNai ent="subscriberRouting" ns="dsr">
<host>operator.com</host>
<user>david.leno</user>
<ltehss>LTE_HSS_1</ltehss>
</updateSubscriberNai>

Request to create an NAI - success.

CPS<—SDS
<updateSubscriberNaiResp>
<res error="0" affected="1"/>
</updateSubscriberNaiResp>
CPS—>SDS
<rollback/>

Transaction is rolled back by the client. None of the previous IMSI, MSISDN or NAI entities will be created.

Rollback is successful; no creations/updates are made. At this point the client could still have sent commit if they wanted, which would have resulted in the 2 IMSIs, 2 MSISDNs, and 1 NAI being created.

CPS<—SDS
<rollbackResp>
<res error="0" affected="0"/>
</rollbackResp>