Memory access violation in NameTree test suite
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
#5 Updated by Alex Afanasyev over 4 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.
#6 Updated by Junxiao Shi over 4 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.
#7 Updated by Alex Afanasyev over 4 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.