Bug #1790
Updated by Alex Afanasyev over 10 years ago
I am running NLSR on 10 emulab nodes. There is a script that runs nfd first and then nlsr. If I run this script manually at each node with 2 to 3 seconds delay of going from node to another, the nlsr works fine. However, when I execute the script simultaneously at each node (using a scheduler or by broadcasting the command to all terminals) then nlsr quits giving following error: <pre> terminate called after throwing an instance of 'ndn::SecPublicInfoSqlite3::Error' what(): Key does not exist:/ndn/caida/%C1.Router/router1/NLSR/ksk-1406145072693 </pre> At one point I also got this error: <pre> nlsr: /usr/include/boost/smart_ptr/shared_ptr.hpp:418: boost::shared_ptr<T>::reference boost::shared_ptr<T>::operator*() const [with T = ndn::IdentityCertificate, boost::shared_ptr<T>::reference = ndn::IdentityCertificate&]: Assertion `px != 0' failed. </pre> The home folder in emulab is shared among all nodes, where I guess the keys are stored. Not sure but do you think that the concurrent access to that folder may be causing this error.