pmdk icon indicating copy to clipboard operation
pmdk copied to clipboard

pmreorder treats c++ operators as markers

Open igchor opened this issue 4 years ago • 3 comments

ISSUE: pmreorder treats c++ operators as markers

Environment Information

  • PMDK package version(s): 1.8, master

Please provide a reproduction of the bug:

Use pmdk version from https://github.com/igchor/pmdk/tree/pmreorder_problem cd src/test/pmreorder_simple make TEST0

How often bug is revealed: always

Actual behavior:

Incorrect marker format =(three_field&, int) (pmreorder_simple.cpp:34), suffix is missing.

Expected behavior:

No error

Details

The problem is that pmreorded assumes that function names cannot have | character.

Additional information about Priority and Help Requested:

Are you willing to submit a pull request with a proposed change? (Yes, No)

Requested priority: (Showstopper, High, Medium, Low)

igchor avatar Mar 18 '20 17:03 igchor

Only operators that have "|" in the name are treated like that - "|" is an event separator in pmemcheck output and nobody has thought "|" could be part of a stacktrace.

This needs to be fixed on both sides. pmemcheck needs to start escaping "|" and pmreorder needs to understand escaping.

As a temporary workaround, before giving pmemcheck output to pmreorder, you can replace "operator|=" by something else.

marcinslusarz avatar Mar 18 '20 18:03 marcinslusarz

@igchor is this fixed? if so, please close the issue.

pbalcer avatar Feb 02 '21 09:02 pbalcer

I don't think it;s fixed - we only have a workaround on pmemkv side.

igchor avatar Feb 02 '21 10:02 igchor

This improvement is not considered vital at the moment. So, we do not have the resources to fulfil your request. Sorry.

janekmi avatar Aug 31 '23 07:08 janekmi