[lttng-dev] Overwrite mode, lost events, and reader behaviour

Mathieu Desnoyers mathieu.desnoyers at efficios.com
Wed Nov 20 10:42:02 EST 2013


----- Original Message -----
> From: "Daniel Thibault" <Daniel.Thibault at drdc-rddc.gc.ca>
> To: "Mathieu Desnoyers" <mathieu.desnoyers at efficios.com>
> Cc: lttng-dev at lists.lttng.org
> Sent: Wednesday, November 20, 2013 10:38:28 AM
> Subject: RE: [lttng-dev] Overwrite mode, lost events, and reader behaviour
> 
> -----Message d'origine-----
> Envoyé : 20 novembre 2013 09:44
> 
> > We don't use the timestamps for this. Each packet has a sequence number
> > given by the producer, and the reader is querying for packets by
> > requesting sequence numbers
> > (increasing by one each time). In the case you present here, the reader
> > will try to query the sequence number of an overwritten packet, and will
> > therefore not be able to get it.
> > It will move on to the next packet until it finally finds the first packet
> > which sequence number matches its current sequence number (or the writer
> > position).
> 
>    So my original suggestion holds: performance could increase just a little
>    bit (on the reader side) if the reader's request
>    (lib_ring_buffer_get_subbuf, is it?) did not return -EAGAIN but rather
>    the current "earliest available sequence number" it should next ask for.
>    In the (presumably rare) case where the reader has been passed by the
>    writers by several sub-buffer sequence numbers' worth, this would allow
>    the reader to skip ahead to the next likely-to-succeed sequence number
>    request.  Does this make sense?

Skipping ahead like this could indeed be a good approach. We don't need to
change get_subbuf() to do this though. When the consumer gets a -EAGAIN,
it could use the snapshot feature to find the new consumer position. Same
effect, no change needed in modules nor UST.

Thanks,

Mathieu

> 
> Daniel U. Thibault
> Protection des systèmes et contremesures (PSC) | Systems Protection &
> Countermeasures (SPC)
> Cyber sécurité pour les missions essentielles (CME) | Mission Critical Cyber
> Security (MCCS)
> R & D pour la défense Canada - Valcartier (RDDC Valcartier) | Defence R&D
> Canada - Valcartier (DRDC Valcartier)
> 2459 route de la Bravoure
> Québec QC  G3J 1X5
> CANADA
> Vox : (418) 844-4000 x4245
> Fax : (418) 844-4538
> NAC : 918V QSDJ <http://www.travelgis.com/map.asp?addr=918V%20QSDJ>
> Gouvernement du Canada | Government of Canada
> <http://www.valcartier.drdc-rddc.gc.ca/>
> 

-- 
Mathieu Desnoyers
EfficiOS Inc.
http://www.efficios.com



More information about the lttng-dev mailing list