question

Upvotes
Accepted
16 1 1 7

NON-STREAMING (snapshot) mode not detected by the ADS

Hi,

with rfaj7.2.1.L1, I am developing a Batch Market Feed Consumer. I set the Indication Flag NONSTREAMING (snapshot mode), but on the ADS, the connection is displayed as normal open.

Please find in the attachment the request and the screenshot of the ADS. As you can see, the normalOpens = 857 and the snapshotOpens = 0.

Can you explain me if I miss something in the configuration, or if the error is due to a misinterpretation of the ADS?

Thanks in advance

Best regards

screenshot-ads.png

requestmessage.txt

treprfarfa-api
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
23k 22 9 14

@Gabriele.Casalinuovo

Suggestion, JRFA 7.2 comes with BatchVewCons example.

If you change only the indication in request:

int indicationFlags = OMMMsg.Indication.NONSTREAMING; //OMMMsg.Indication.REFRESH; 

And pass on the command line -sendReissue false (in order not to see reissues)

You should be able to test with batch+snapshot, and know if your infra supports it?

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.

To add on top of Zoya's answer, not only RFA Java 7.2 that carries the BatchViewCons example, but onward versions also contain BatchViewCons example as well. It will be the useful tool to test the Batch feature

Hope this helps!

Upvotes
1.5k 3 5 7

You must also set the REFRESH indication flag on your request message:

Indication Flags: NONSTREAMING | REFRESH | BATCH_REQ

Also beware that the Batch feature is a licensable feature of the ADS. You may not have that feature on your site.

If the Batch feature is not available on the ADS to which you connect then the RFA library will simulate it. This blurs the picture somewhat. If you turn on message tracing at the ipcTrace level then you will always see a trace of the messages exactly as they are on wire. If RFA simulates the Batch request feature on your behalf then it will do so by converting the batch request into individual requests. In other words: if your attached message trace is from turning on ipcTraceFlags then it must mean that your ADS does indeed support Batch feature.

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
16 1 1 7

Thanks for your answer.

This kind of request:

MESSAGE
Msg Type: MsgType.REQUEST
Msg Model Type: MARKET_PRICE
Indication Flags: NONSTREAMING | REFRESH | BATCH_REQ
Hint Flags: HAS_ATTRIB_INFO | HAS_PRIORITY
Priority: 1,1
AttribInfo
ServiceName: IDN_SELECTFEED
NameType: 1 (RIC)
Payload: None

results in the application hanging, as the callback:

@Override
public void processEvent(Event event)

is not been called.

Then at the closeup of the connection, the following error is produced:

Close Request ItemManager: Batch Close has no valid handles in the request.

Either I have to put REFRESH either the NONSTREAMING indication flag.

Best regards

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.

Can you use RFA Java tracing by setting ipcTraceFlags to 15 on the RSSL connection in the configuration. With this configuration, RFA_RSSL*.log will be created in the application's current directory. Then, please attach the trace file when the problem occurred.

Upvotes
11.3k 25 8 13

@Gabriele.Casalinuovo

Regarding the request message you provided, I have noticed that the request doesn't have payload (Payload: None). This could be the cause, since batch request requires payload which contains array of item names to be requested. Please verify your application's logic which encodes the item list in batch request message. For code's example, please see the StarterConsumer_BatchView example in RFA Java package.

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.

Click below to post an Idea Post Idea