Project

General

Profile

Task #2348

Cs::erase doesn't remove item from cleanup index

Added by Alex Afanasyev almost 7 years ago. Updated almost 7 years ago.

Status:
Closed
Priority:
Normal
Category:
Tables
Target version:
Start date:
01/05/2015
Due date:
% Done:

100%

Estimated time:

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.

#1

Updated by Alex Afanasyev almost 7 years ago

  • Status changed from Resolved to Code review
#2

Updated by Junxiao Shi almost 7 years ago

Please describe what the problem is, not just "the problem on my machine".

#3

Updated by Alex Afanasyev almost 7 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.

#4

Updated by Junxiao Shi almost 7 years ago

  • Status changed from Code review to Closed

Also available in: Atom PDF