Bug #1574
WriteHandle doesn't send interest for single insert
Description
When running ndnputfile with -s option, no Interests arrive and app stops with error that insert command check failed with 404.
NFD, ndnputfile and repo are all run on the same machine.
ndnputfile -s is used to put data into repo. The command line may like: ndnputfile -s /example/repo/1 /example/data/1/testfile testfile
On the ndnputfile side, ndnputfile will first express command and then setInterestFilter of /example/data/1/testfile.
On the repo side, repo will first response the command and then send interest of /example/data/1/testfile
The NFD log shows that, nfd first receives interest of /example/data/1/testfile and then add nexthop of /example/data/1/testfile.
If some delay of sending interest is put, the ndnputfile works well.
So I think that the nfd cannot control these things in right order and the client cannot get information from nfd to arrange this sequence.
Updated by Shuo Chen almost 7 years ago
- Status changed from New to In Progress
NFD, ndnputfile and repo are all run on the same machine.
ndnputfile -s is used to put data into repo. The command line may like:
ndnputfile -s /example/repo/1 /example/data/1/testfile testfile
On the ndnputfile side, ndnputfile will first express command and then setInterestFilter of /example/data/1/testfile.
On the repo side, repo will first response the command and then send interest of /example/data/1/testfile
The NFD log shows that, nfd first receives interest of /example/data/1/testfile and then add nexthop of /example/data/1/testfile.
If some delay of sending interest is put, the ndnputfile works well.
So I think that the nfd cannot control these things in right order and the client cannot get information from nfd to arrange this sequence.
Updated by Junxiao Shi almost 7 years ago
ndnputfile
should ensure that prefix registration is completed before repo can start retrieving the Data.
As I can see in repo-ng commit 91fb4f2e5067d2fd6a591d885353a449bc65b399, ndnputfile
sends the insert command after prefix registration is successful.
At this point, FIB entry should be installed in NFD already.
If it's not, it's likely a problem in either NFD or RIB daemon.
Updated by Shuo Chen almost 7 years ago
Is is necessary to add interest retransmission for single insertion to resolve this bug? Besides, interest retransmission is a necessary feature for repo.
Junxiao Shi wrote:
ndnputfile
should ensure that prefix registration is completed before repo can start retrieving the Data.As I can see in repo-ng commit 91fb4f2e5067d2fd6a591d885353a449bc65b399,
ndnputfile
sends the insert command after prefix registration is successful.
At this point, FIB entry should be installed in NFD already.If it's not, it's likely a problem in either NFD or RIB daemon.
Updated by Junxiao Shi almost 7 years ago
We need to find the root cause of why FIB add-nexthop arrives after repo-ng sends the data-retrieving Interest.
Updated by Shuo Chen almost 7 years ago
Single insertion works after updating new ndn-cxx and nfd... I don't know why.
Junxiao Shi wrote:
We need to find the root cause of why FIB add-nexthop arrives after repo-ng sends the data-retrieving Interest.
Updated by Alex Afanasyev almost 7 years ago
Can you nail down the specific version of NFD and ndn-cxx which has the problem?
Updated by Shuo Chen almost 7 years ago
- Status changed from In Progress to Resolved
- % Done changed from 0 to 90
Long time has passed. I have forgotten the cause of this problem... But, anyway, it is resolved.
Updated by Junxiao Shi almost 4 years ago
- Tracker changed from Task to Bug
- Status changed from Resolved to Closed
- % Done changed from 90 to 100