Mirror of the lttng-dev mailing list
 help / color / mirror / Atom feed
From: mathieu.desnoyers@efficios.com (Mathieu Desnoyers)
Subject: [lttng-dev] Overwrite mode, lost events, and reader behaviour
Date: Wed, 20 Nov 2013 15:42:02 +0000 (UTC)	[thread overview]
Message-ID: <1714397637.71404.1384962122849.JavaMail.zimbra@efficios.com> (raw)
In-Reply-To: <48CF5AC71E61DB46B70D0F388054EFFD267A2D69@VAL-E-01.valcartier.drdc-rddc.gc.ca>

----- Original Message -----
> From: "Daniel Thibault" <Daniel.Thibault@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



      reply	other threads:[~2013-11-20 15:42 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-11-18 14:43 Thibault, Daniel
2013-11-20 14:43 ` Mathieu Desnoyers
2013-11-20 15:38   ` Thibault, Daniel
2013-11-20 15:42     ` Mathieu Desnoyers [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1714397637.71404.1384962122849.JavaMail.zimbra@efficios.com \
    --to=mathieu.desnoyers@efficios.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox