Project

General

Profile

Actions

Bug #2590

open

NameServer/UpdateValidatorFetchCert incorrect usage of Signal

Added by Junxiao Shi almost 10 years ago. Updated almost 10 years ago.

Status:
New
Priority:
Normal
Assignee:
-
Target version:
-
Start date:
02/28/2015
Due date:
% Done:

0%

Estimated time:

Description

Steps to reproduce:

  1. compile ndn-cxx in debug mode, and install
  2. compile ndns in debug mode with unit tests
  3. 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
Actions #1

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.

Actions #2

Updated by Shock Jiang almost 10 years ago

I wonder what the differences by compiling ndns/ndn-cxx in debug and release mode.

Actions #3

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

Also available in: Atom PDF