Task #2348
closedCs::erase doesn't remove item from cleanup index
100%
Description
The problem on my machine got exposed with TableCs/InsertAndEraseByName test case. I check an old commit, which fails on my machine but doesn't fail on jenkins. I don't understand why.
Updated by Alex Afanasyev over 9 years ago
- Status changed from Resolved to Code review
Updated by Junxiao Shi over 9 years ago
Please describe what the problem is, not just "the problem on my machine".
Updated by Alex Afanasyev over 9 years ago
When Cs::erase
was called, cs::Entry was removed from SkipList and emptied out (cs::Entry::m_data == nullptr), but it wasn't removed from CleanupQueue. When CS destructor is called, it was trying to remove evict all items using cleanup queue. A reference to an emptied out CS entry causes segfault inside NS_LOG_TRACE method.
I guess I just happened to run test cases with TRACE mode. On jenkins I have disabled logging for unit tests... I guess they should be enabled with along the change to publishing test case results in jUNIT format.
Updated by Junxiao Shi over 9 years ago
- Status changed from Code review to Closed