Actions
Bug #2590
openNameServer/UpdateValidatorFetchCert incorrect usage of Signal
Status:
New
Priority:
Normal
Assignee:
-
Target version:
-
Start date:
02/28/2015
Due date:
% Done:
0%
Estimated time:
Description
Steps to reproduce:
- compile ndn-cxx in debug mode, and install
- compile ndns in debug mode with unit tests
- run unit tests
Expected: no error
Actual:
Entering test case "UpdateValidatorFetchCert"
04:41:11 INFO DbMgr - open database: build/conf-test/test-ndns.db
04:41:11 INFO TestFakeData - save test root cert /test19/KEY/ksk-1425184871342/ID-CERT/%FD%00%00%01K%D3%A3S%F1 to: build/conf-test/anchors/root.cert
04:41:11 INFO TestFakeData - insert testing data: OK
04:41:11 INFO NameServer - Zone: /test19 binds Prefix: /test19/NDNS and /test19/KEY with Certificate: /test19/KEY/ksk-1425184871342/ID-CERT/%FD%00%00%01K%D3%A3S%F1
***** Internal Program Error - assertion (!m_isExecuting) failed in void ndn::util::signal::Signal<Owner, TArgs>::operator()(const TArgs& ...) [with Owner = ndn::util::DummyClientFace::Transport, TArgs = {ndn::Block}]:
../src/util/signal-signal.hpp(215): cannot emit signal from a handler
unknown location(0): fatal error in "UpdateValidatorFetchCert": signal: SIGABRT (application abort requested)
../tests/unit/database-test-data.cpp(142): last checkpoint
Leaving test case "UpdateValidatorFetchCert"; testing time: 260ms
Updated by Junxiao Shi over 9 years ago
Validator/Basic test case seems to have same issue.
This Bug is NOT introduced by ndn-cxx update. Signal<..>::operator() has the assertion since the beginning.
ndns Jenkins script builds ndn-cxx in release mode so this Bug isn't discovered on Jenkins.
Updated by Shock Jiang over 9 years ago
I wonder what the differences by compiling ndns/ndn-cxx in debug and release mode.
Updated by Alex Afanasyev over 9 years ago
Debug mode executes assertions that ensure correctness. In release mode, assertions are not executed and app can crash at some random places.
Actions