Bug #2564
closedMemory access violation in NameTree test suite
100%
Description
I think one of the recent commits to nfd or ndn-cxx introduced a problem. At least, test cases are now consistently failing on all platforms:
[Exception] - memory access violation at address: 0x00001050: no mapping at fault address
 == [File] - ../tests/daemon/table/name-tree.t.cpp
 == [Line] - 278
  
      
      Updated by Junxiao Shi over 10 years ago
      
    
    - Subject changed from Memory access violation somewhere to Memory access violation in NameTree test suite
 - Assignee changed from Junxiao Shi to Haowei Yuan
 
Reassigning to @Haowei, author of NameTree.
      
      Updated by Davide Pesavento over 10 years ago
      
    
    What do you mean "consistently failing on all platforms"? How did it get past CI?
      
      Updated by Junxiao Shi over 10 years ago
      
    
    One possible sequence is:
- NFD passes CI
 - ndn-cxx Change that breaks NFD is merged
 
#1948 would eliminate this problem.
      
      Updated by Junxiao Shi over 10 years ago
      
    
    - Description updated (diff)
 - Category set to Tables
 
      
      Updated by Alex Afanasyev over 10 years ago
      
    
    - Assignee changed from Haowei Yuan to Junxiao Shi
 
Junxiao, the issue is introduced by recently merged commits in ndn-cxx and/or NFD (I believe it is due to ndn-cxx commit, but I don't have proof). You authored both recent commits, so please take a look.
@Davide. Unfortunately, we don't have yet #1948 in place and merges in the library can have unexpected effects to other projects and are not yet capturable by CI.
      
      Updated by Junxiao Shi over 10 years ago
      
    
    I can't reproduce this error on TravisCI https://travis-ci.org/yoursunny/ndn-cxx-breaks/jobs/52217073 or Jenkins http://jenkins.named-data.net/job/NFD/2572/.
If it needs a specific environment or configure line, please update Description (not Notes) to include that information.
      
      Updated by Alex Afanasyev over 10 years ago
      
    
    - Status changed from New to Resolved
 - Assignee changed from Junxiao Shi to Alex Afanasyev
 - % Done changed from 0 to 100
 
Apparently, it is a trivial problem in TableNameTree test suite.  The issue is that with XML output we are requesting all log output.  One of the test cases used BOOST_CHECK_MESSAGE in the following way:
BOOST_CHECK_MESSAGE(m_names.empty(), "excess Names including " << *m_names.begin());
When verbose log output is not enabled, nothing bad is happening (the message printed only when case fails). When verbose log is enabled, then the test case fails as we are attempting to dereference invalid iterator.
      
      Updated by Alex Afanasyev over 10 years ago
      
    
    - Status changed from Resolved to Code review
 
      
      Updated by Junxiao Shi over 10 years ago
      
    
    - Status changed from Code review to Closed