0
Answered

Interfacing with OpenICE from Java

Thomas Drake-Brockman 10 years ago in OpenICE updated by Jeff Peterson 10 years ago 3
Hey,

Having now managed to get my Philips MX800 to talk to OpenICE (thanks for the help!) I've moved on to interfacing with OpenICE, following the example in hello-openice.

Currently, with OpenICE 0.6.2 and the latest hello-openice (in which I have ugraded OpenICE to version 0.6.2), I'm running into the following error:

WARN | PRESPsService_isRemoteWriterLocalReaderCompatible:incompatible destination order kind: writer 0 reader 1
I've started porting some of the code from hello-openice into my application, and I'm getting the same error - so it's probably best to get hello-openice working before I go much further.

Cheers,
Thomas

+1
Searching answer
Hi Thomas,

Thank you for the pertinent line from the log. About 6 weeks ago we stopped offering "BY_SOURCE" destination ordering (ordinal 1) and switched to "BY_RECEPTION" ordering (ordinal 0). The log message you included indicates the relevant reader is still requesting BY_SOURCE ordering and is therefore incompatible with what has been offered by the writer. The reader in this case is the hello-openice app.

The relevant commit that changed this QoS configuration in hello-openice is: https://github.com/mdpnp/hello-openice/commit/727527f8895ebbfcd115ebce7ec054d6903414ea

Essentially as long as your hello-openice is using the latest USER_QOS_PROFILES.xml and you are running the program from that directory which contains that QoS file I don't know what could be making your reader request BY_SOURCE ordering. We've tried to reproduce the problem here but hello-openice works every time. Are there any other anomalies in the log for which this may be a side effect? Maybe you could attach the whole file and we could have a look?

In case anyone is wondering data from a single writer is still guaranteed to be delivered in order with BY_RECEPTION ordering. This setting primarily affects ordering of samples from various writers for shared data instances (of which we currently have none).

Regards
Jeff Plourde
+1
Hi Jeff,

You are right, I forgot to make sure I was using an up-to-date USER_QOS_PROFILES.xml. Having fixed that hello-openice works, and my application can successfully connect to OpenICE.

Very exciting things afoot!

Cheers,
Thomas