[lttng-dev] CTF: trying to understand "missing fields"

Vlad vlad at demoninsight.com
Mon Oct 28 17:34:28 EDT 2013


On Oct 21, 2013, at 6:53 PM, Vlad <VLAD at DEMONINSIGHT.COM> wrote:

> Greetings,
> 
> 	The CTF spec contains a couple of mentions of how one could define a missing field bitmask:
> 
> "The header is extended in the rare occasions where the information cannot be
> represented in the ranges available in the standard event header. They are also
> used in the rare occasions where the data required for a field could not be
> collected: the flag corresponding to the missing field within the missing_fields
> array is then set to 1"
> 
> and
> 
> "An example of event-specific event context is to declare a bitmap of missing
> fields, only appended after the stream event context if the extended event
> header is selected. NR_FIELDS is the number of fields within the event (a
> numeric value).
> 
>  event {
>    context = struct {
>      variant <id> {
>        struct { } compact;
>        struct {
>          uint1_t missing_fields[NR_FIELDS]; /* missing event fields bitmap */
>        } extended;
>      } v;
>    };
>    ...
>  }"
> 
> Is this capability reflected in the current lttng builds? My understanding so far is that "missingness" is not part of CTF grammar per se but is rather a convention (i.e. declaring an array of uint1_t's with a particular name "missing_fields") -- is this correct? In the extended header example above, how is a missing_fields slot mapped to its corresponding field -- are the fields assumed to be ordered, with a slot per field in that ordering?


Ok, lack of response probably means I'd stumbled on an unsupported feature.

Cheers,
Vlad


More information about the lttng-dev mailing list