Liveliness v deadline and ownership PreviousNext
Data Distribution Service (DDS) Forum > DDS Technical Forum >
Next message John Hawkins  posted on Thursday, March 13, 2008 - 06:11 pm
Hi Folks,

Can I just check my understanding of liveliness and deadline and single ownership.

Am I correct in saying that when a deadline is not infinite then liveliness is ignored completely even if the liveliness period is less than the deadline?

many thanks,
Next message Erik Hendriks  posted on Friday, March 14, 2008 - 11:57 am
Hi John,

Both mechanisms are meant for different purposes:

* Deadlines are applicable to instances and, on the reader side, can be applied on data coming from different Writers.
* Liveliness is applicable to Writers, and will impact all instances belonging to a writer whose lease_duration expired.

So it is possible to use both QosPolicies at the same time with different timing characteristics. Certain events may violate both constraints: the timing values in the QosPolicies will then decide which mechanism is triggered first.

Erik Hendriks.
Next message John Hawkins  posted on Monday, March 17, 2008 - 10:00 am
Hi Erik,

If I read the spec -> Case where the data is periodically updated

This determination is reasonably simple when the data is being written eriodically at some rate. The DataWriter simply states its offered DEADLINE (maximum interval between updates) and the DataReader automatically monitors that the DataWriter indeed updates the instance at least once per deadline period. If the deadline is missed, the DataReader considers the DataWriter “not alive” and automatically gives ownership to the next highest-strength DataWriter that is
alive. Case where data is not periodically updated

The case where the DataWriter is not writing data periodically is also a very important use-case. Since the instance is not being updated at any fixed period, the “deadline” mechanism cannot be used to determine ownership. The liveliness
solves this situation. Ownership is maintained while the DataWriter is “alive” and for the DataWriter to be alive it must
fulfill its “LIVELINESS” QoS contract.

This suggests to me that, for the purposes of ownership, liveliness is ignored when a deadline of non-infinite is declared?
Next message Erik Hendriks  posted on Monday, March 17, 2008 - 10:23 am
Hi John,

No, liveliness is not ignored when deadlines are set to a non-infinite value: in such cases both mechanisms will be used at the same time. The QoS whose contract is violoated first will be the one that is triggered first.

Consider for example a situation in which the deadline is set to 6 seconds (I expect each instance to be updated every 6 seconds), but the liveliness is set to 100ms (I want to know if my Writer looses connection or gets stuck in an eternal loop). In this case the liveliness Qos may trigger before actually one of my deadlines has expired.

Another example could be a Topic that has shared ownership, and a Reader that receives updates from multiple writers for the same instances. In that case the Reader deadlines can all be met, while one of the Writers can become disconnected. Also in such a case may the LivelinessQos help you to find out that one of your Writers is having a problem.

Erik Hendriks.
Next message Anonymous posted on Wednesday, April 14, 2010 - 10:13 am
I am using OwnershipQos policy of DDS. But problem is the datareader takes data from both datawriters even though OwnershipStrength value is different for both datawriter. As i understand in such case reader should receive data from higher strength data writer.

Please suggest which other QOS has to be modified to achieve proper result?
Next message Hans van 't Hag  posted on Wednesday, April 14, 2010 - 03:17 pm

Are you sure you've selected exclusive-ownership (for both reader and writer) and not 'just' set the strenght ?

For OpenSplice DDS we're pretty sure that an exclusive-ownership reader will only get the data from the highest-strength writer.

Good luck,
Next message gruhita sudhakar parab  posted on Thursday, April 15, 2010 - 07:47 am
I have selected exclusive-ownership for both reader or writer and set the strength for 2 datawriter as 3 and 2. Does strength for datareader has to be reset or default value will do the work.
Next message Hans van 't Hag  posted on Thursday, April 15, 2010 - 07:55 am
Hi Gruhita,

The strength attribute only applies to the dataWriters and then it should work as 'advertised'.

If its OpenSplice DDS that you're using, could you then please report your issue (preferably with a code-example) on our developers mailing-list and then we'll take it from there,

You can register on that list here:

Next message nour imen  posted on Wednesday, June 02, 2010 - 07:28 am
Hi Erik ,

I'm using deadline and lifespan qos;but don't see haw lifespan will be used,if the istance are modified periodicly then the last data become invalide when the next periode is reached isn't it ?

if we consider the datawriter as a thread writing periodically new data, haw could we use deadline qos. i mean would be a difference between deadline periode and datawriter 's one?
Back to top
Add Your Message Here
Username: Posting Information:
This is a private posting area. Only registered users and moderators may post messages here.
Options: Post as "Anonymous"
Enable HTML code in message
Automatically activate URLs in message