- **status**: review --> fixed


---

** [tickets:#2798] mds: mdstest 5 1,5 9, 4 10, 4 12, 10 1, 10 2, 14 5, 14 6 
failed**

**Status:** fixed
**Milestone:** future
**Created:** Wed Mar 07, 2018 04:19 AM UTC by Hoa Le
**Last Updated:** Mon Dec 19, 2022 01:46 AM UTC
**Owner:** Hieu Hong Hoang
**Attachments:**

- 
[mdstest_5_1.tar.gz](https://sourceforge.net/p/opensaf/tickets/2798/attachment/mdstest_5_1.tar.gz)
 (8.4 MB; application/gzip)


Opensaf commit 5629f554686a498f328e0c79fc946379cbcf6967

mdstest 5 1

~~~
LOG_NO("\nAction: Retrieve only ONE event\n");
if (mds_service_subscribe(gl_tet_adest.mds_pwe1_hdl, 500,
              NCSMDS_SCOPE_INTRACHASSIS, 2,
              svcids) != NCSCC_RC_SUCCESS) {
    LOG_NO("\nFail\n");
    FAIL = 1;
} else {
    LOG_NO("\nAction: Retrieve only ONE event\n");
    if (mds_service_retrieve(gl_tet_adest.mds_pwe1_hdl, 500,
                 SA_DISPATCH_ONE) != NCSCC_RC_SUCCESS) {
        LOG_NO("Fail, retrieve ONE\n");
        FAIL = 1;
    } else
        LOG_NO("\nSuccess\n");
~~~


After the subscription request being successful, mdstest would expectedly 
receive two 2 MDS_UP events of services 600 and 700. These info will be 
retrieved in the next step of the test case (mds_service_retrieve).

The problem here is, these MDS_UP events are processed in a separate (parallel) 
thread (mds core thread) from the test case's main thread. In a bad scenario, 
if the mds core thread cannot be processed before the RETRIEVE operations in 
the main thread, the RETRIEVE request with "SA_DISPATCH_ONE" flag will return 
"error", and the test case will fail.

<143>1 2018-03-07T01:10:29.936907+07:00 SC-1 mdstest 473 mds.log [meta 
sequenceId="155"] << mds_mcm_svc_subscribe*** // MDS SUBSCRIBE request***
...
<142>1 2018-03-07T01:10:29.937631+07:00 SC-1 mdstest 473 mds.log [meta 
sequenceId="162"] MDS_SND_RCV: info->info.retrieve_msg.i_dispatchFlags == 
SA_DISPATCH_ONE*** // MDS RETRIEVE request with SA DISPATCH ONE flag came 
before MDS UP events being processed***
<139>1 2018-03-07T01:10:29.937729+07:00 SC-1 mdstest 473 mds.log [meta 
sequenceId="163"] MDS_SND_RCV: msgelem == NULL
<142>1 2018-03-07T01:10:29.937953+07:00 SC-1 mdstest 473 mds.log [meta 
sequenceId="164"] MDTM: Processing pollin events
<142>1 2018-03-07T01:10:29.938333+07:00 SC-1 mdstest 473 mds.log [meta 
sequenceId="165"] MDTM: Received SVC event
<143>1 2018-03-07T01:10:29.93838+07:00 SC-1 mdstest 473 mds.log [meta 
sequenceId="166"] >> mds_mcm_svc_up
<143>1 2018-03-07T01:10:29.938418+07:00 SC-1 mdstest 473 mds.log [meta 
sequenceId="167"] MCM:API: LOCAL SVC INFO  : svc_id = INTERNAL(500) | PWE id = 
1 | VDEST id = 65535 |
<143>1 2018-03-07T01:10:29.938439+07:00 SC-1 mdstest 473 mds.log [meta 
sequenceId="168"] MCM:API: REMOTE SVC INFO : svc_id = EXTERNAL(600) | PWE id = 
1 | VDEST id = 65535 | POLICY = 1 | SCOPE = 3 | ROLE = 1 | MY_PCON = 0 |

2018-03-07 01:10:29.941 SC-1 mdstest: NO #012Action: Retrieve only ONE event
2018-03-07 01:10:29.941 SC-1 mdstest: NO #012Request to ncsmds_api: MDS 
RETRIEVE has FAILED
2018-03-07 01:10:29.942 SC-1 mdstest: NO Fail, retrieve ONE

The same issue was observed in mdstest 5 9, 4 10, 4 12, 10 1, 10 2, 14 5, 14 6.



---

Sent from sourceforge.net because opensaf-tickets@lists.sourceforge.net is 
subscribed to https://sourceforge.net/p/opensaf/tickets/

To unsubscribe from further messages, a project admin can change settings at 
https://sourceforge.net/p/opensaf/admin/tickets/options.  Or, if this is a 
mailing list, you can unsubscribe from the mailing list.
_______________________________________________
Opensaf-tickets mailing list
Opensaf-tickets@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/opensaf-tickets

Reply via email to