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 almost 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 almost 10 years ago
What do you mean "consistently failing on all platforms"? How did it get past CI?
Updated by Junxiao Shi almost 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 almost 10 years ago
- Description updated (diff)
- Category set to Tables
Updated by Alex Afanasyev almost 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 almost 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 9 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 9 years ago
- Status changed from Resolved to Code review
Updated by Junxiao Shi over 9 years ago
- Status changed from Code review to Closed