Skip to content

Various ProfilesDictionary issues #700

@brancz

Description

@brancz

The spec says for all dictionaries in ProfilesDictionary:

  // Note all fields in this message MUST have a zero value encoded as the first element.
  // This allows for _index fields pointing into the dictionary to use a 0 pointer value
  // to indicate 'null' / 'not set'. Unless otherwise defined, a 'zero value' message value
  // is one with all default field values, so as to minimize wire encoded size.

Consequently, this means that all tables must have at least one item: the zero item.

I just tried running the ebpf-profiler (commit b4a95e6) against an updated Parca, and while doing that, noticed that the ebpf-profiler does not quite follow the spec in this detail (or we need to adjust the spec).

The things I could already tell are that the link table and attribute unit table don't seem to have the zero elements set at all, and the function table has a non-zero element.

@florianl @rockdaboot @fabled @christos68k

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions