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 almost 10 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 almost 10 years ago
I wonder what the differences by compiling ndns/ndn-cxx in debug and release mode.
Updated by Alex Afanasyev almost 10 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