Project

General

Profile

Actions

Bug #3957

closed

Face::processEvents blocks forever if no packet is sent

Added by Junxiao Shi about 7 years ago. Updated about 7 years ago.

Status:
Closed
Priority:
Normal
Category:
Base
Target version:
Start date:
02/10/2017
Due date:
% Done:

100%

Estimated time:

Description

Snippet to reproduce:

// g++ -o x -std=c++0x x.cpp $(pkg-config --cflags --libs libndn-cxx)
#include <ndn-cxx/face.hpp>

int main()
{
  ndn::Face face;
  // face.expressInterest(ndn::Interest("/P"), nullptr, nullptr, nullptr);
  face.processEvents();
  return 0;
}

Expected: Program terminates within 1 second.
Actual: Program does not terminate after 10 seconds.
Uncommenting expressInterest line allows the program to terminate within 1 second.

Face::processEvents Doxygen says, when keepThread argument is false (the default), the function should return when there is no outstanding events. A face that has never sent or received any packet should satisfy this condition.


Related issues 1 (1 open0 closed)

Related to ndn-tools - Bug #3902: ndncatchunks with AIMD pipeline randomly hangs after transfer is completeNew

Actions
Actions #1

Updated by Anonymous about 7 years ago

Just wondering: Might this be related to Bug #3902?

There we also see that Face::processEvents blocks forever and we couldn't figure out the reason yet.

Actions #2

Updated by Anonymous about 7 years ago

  • Related to Bug #3902: ndncatchunks with AIMD pipeline randomly hangs after transfer is complete added
Actions #3

Updated by Alex Afanasyev about 7 years ago

  • Status changed from New to Code review
  • Assignee set to Alex Afanasyev
  • % Done changed from 0 to 80
Actions #4

Updated by Junxiao Shi about 7 years ago

https://gerrit.named-data.net/3692 patchset4 is effective in fixing FindFace::canonize problem in #3864-16.

Actions #5

Updated by Alex Afanasyev about 7 years ago

  • Status changed from Code review to Closed
  • % Done changed from 80 to 100
Actions

Also available in: Atom PDF