-
Notifications
You must be signed in to change notification settings - Fork 0
Description
Probe names and values (from the EVOBENCH_SCOPE, EVOBENCH_POINT and EVOBENCH_KEY_VALUE CPP macros) are used in the generation of path strings which are used as key names in the output tables (Excel), but also flame graphs.
E.g. "thread;main|main;sum_of_fibs n=0;main|sum_of_fibs" is a path with 3 stack frames in the format passed to the flame graph library, which splits it into stack frames on the ';' character. This means that probe names cannot use the ';' themselves or it will lead to wrong and confusing output.
So, should either figure out a way to use the flame graph library so that it accepts the ';', too (perhaps requires patching it), or check probe names and values and signal an error to the user, that's better than silently produce nonsensible output.
In Excel, anything(?) is OK, except I use ' < ' and ' > ' in the paths there as separators, and using those strings in probe names and values would be confusing to the human reader. Either do some escaping, or also refuse to accept such probe names.
Not urgent, but should not be forgotten.