question

Upvotes
Accepted
3 0 1 2

rmdstestclient invalid request

Hi,

We are developing a RSSL provider in RFA 8.
When we subscribe to a valid instrument with the rmdstestclient an connect to this provider we receive all related fields.
When I subscribe to an invalid instrument with the same rmdstestclient we do NOT receive any (status) info in the application itself.

Server: 1.2.3.4
Source: SOURCE1
Prot: rssl
Port: 20406
Number of Connection Count = 1
Creating RSSL connection Host: 1.2.3.4 Port: 20406
UPA server component version: rfa8.1.0.linux.eload 64-bit
Setting rmds connection 0x28e7ec0
Connection list count is 1
SupportBatchRequests Initial Open: Yes
SupportBatchRequests Reissue: Yes
SupportBatchClose: Yes

In the log (I use rmdstestclient with the -l parameter) however I do see the "error" message:
NOT_ENTITLED: Request not allowed. Account is not entitled for namespace 'test', which is good.

Received source directory response. <!-- rwfMajorVer="14" rwfMinorVer="0" --> <requestMsg domainType="RSSL_DMT_MARKET_PRICE" streamId="5" containerType="RSSL_DT_NO_DATA" flags="0x4C (RSSL_RQMF_STREAMING|RSSL_RQMF_MSG_KEY_IN_UPDATES|RSSL_RQMF_HAS_QOS)" qosDynamic="0" qosRate="1" qosTimeliness="1" dataSize="0"> <key flags="0x3 (RSSL_MKF_HAS_SERVICE_ID|RSSL_MKF_HAS_NAME)" serviceId="1" name="INVALIDRIC"/> <dataBody> </dataBody> </requestMsg> sendOpenRequest():

Writing open of size 33.
<!-- rwfMajorVer="14" rwfMinorVer="0" -->
<statusMsg domainType="RSSL_DMT_MARKET_PRICE" streamId="5" containerType="RSSL_DT_NO_DATA" flags="0x28 (RSSL_STMF_HAS_MSG_KEY|RSSL_STMF_HAS_STATE)" dataState="RSSL_DATA_SUSPECT" streamState="RSSL_STREAM_CLOSED" code="RSSL_SC_NONE" text="<NOT_ENTITLED: Request not allowed. Account is not entitled for namespace 'test'.>" dataSize="0"> <key flags="0x7 (RSSL_MKF_HAS_SERVICE_ID|RSSL_MKF_HAS_NAME|RSSL_MKF_HAS_NAME_TYPE)" serviceId="1" name="INVALIDRIC" nameType="1"/> <dataBody> </dataBody> </statusMsg>

So the "error" message is sent by the profider but will not show up in rmdstestclient.
I wonder if we do send the correct containerType, dataState, streamState, flag etc.. or am I missing something, or is this a normal behavior of the rmdstestclient.

Thanks in advance.

Bas

treprfarfa-apiricsrmds-test-client
icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 5.0 MiB each and 10.0 MiB total.

Upvotes
Accepted
20.3k 73 10 20

Hi @bas.hagen

You can get rmdstestclient to output any Status messages to the console by enabling the interval Statistics display - which outputs stats for update rates, images received etc

e.g.

rmdstestclient -S ELEKTRON_DD -f vodrics -h ads1 -p 14002 -ct rssl -u umer.nalla -I 1  -l log.out

The above will log the data and output statistics every 1 second - and this will include any statusmsgs received .

The relevant parameter is '-I 1' - capital letter i and 1 for the interval.

The above gives me the following output:

......
Received Enum Dictionary refresh message (Data Length: 126428).
updr 0.00 updl 0 imgr 0.00 imgl 0
Status Received <1> Status Text: Closed Status for Item VOD.L  Text: The record could not be found
updr 0.00 updl 0 imgr 0.00 imgl 0
.......
icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 5.0 MiB each and 10.0 MiB total.

Upvotes
20.3k 73 10 20

Hi @bas.hagen

A Status Msg is an event just like a data event, so it is logged to the file like the other events - it is not an Error message - as technically there is no application level error situation.

You are using the application to connect to a server and establish event streams for various items by requesting them from the server. If the server rejects a particular request it returns a Status event for that particular stream and closes the stream.

In a normal consumer application, the developer would have a Status msg / event handler and act on the Status accordingly .e.g. log to a file or inform the user and so on.

icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 5.0 MiB each and 10.0 MiB total.

Upvotes
3 0 1 2

Thanks for your quick response @Umer Nalla.
So if I understand you correctly, it is a normal behavior that the status msg (rejection of the invalid instrument) is not shown in the rmdstestclient application itself and only appears in the log, right?

icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 5.0 MiB each and 10.0 MiB total.

Upvotes
3 0 1 2

Hi @Umer Nalla, thank you very much. Very helpful!

icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 5.0 MiB each and 10.0 MiB total.

Your welcome. Please consider accepting the relevant answer for the benefit of other users searching the forum.

Thanks!

Click below to post an Idea Post Idea