Project

General

Profile

Feature #4805

Process CanBePrefix and drop Selectors

Added by Junxiao Shi over 1 year ago. Updated over 1 year ago.

Status:
Closed
Priority:
Normal
Assignee:
Category:
Tables
Target version:
Start date:
Due date:
% Done:

100%

Estimated time:
9.00 h

Description

In PIT and CS, process Interest CanBePrefix element and stop processing deprecated Selectors.
This includes necessary adjustments to PIT structure, as well as deleting old test cases.


Related issues

Blocks ndn-cxx - Feature #4567: Encode Interest into v0.3 format and drop support for v0.2 formatClosedDavide Pesavento

Actions
#1

Updated by Junxiao Shi over 1 year ago

  • Blocked by Feature #4567: Encode Interest into v0.3 format and drop support for v0.2 format added
#2

Updated by Junxiao Shi over 1 year ago

  • Description updated (diff)
#3

Updated by Junxiao Shi over 1 year ago

  • Status changed from New to In Progress
  • Assignee set to Junxiao Shi
#4

Updated by Junxiao Shi over 1 year ago

https://gerrit.named-data.net/5399 eliminates Selectors from CS tests; it also promotes FindFixture to CsFixture for simplifying CS policy tests.

Rationale for changes in TestCs/Find suite:

  • EmptyInterestName: deleting because zero-component Interest name is forbidden by spec
  • ExactName: spliting to ExactName (CanBePrefix=false) and ExactName_Cbp (CanBePrefix=true)
  • EmptyDataName: changing to FullName_EmptyDataName with implicit digest included in Interest name, because zero-component Interest name is forbidden by spec
  • Leftmost: renaming to PrefixName and adding CanBePrefix=true; also creating PrefixName_NoCbp with CanBePrefix=false
  • Rightmost, MinSuffixComponent, MaxSuffixComponent, DigestOrder, DigestExclude: deleting because Selectors are gone
#5

Updated by Junxiao Shi over 1 year ago

https://gerrit.named-data.net/5402 stops processing ChildSelector in CS implementation. It also converts some function objects into template arguments for better performance.
Processing of other Selectors comes from Interest::matchesData that belongs to #4913.

#6

Updated by Junxiao Shi over 1 year ago

  • % Done changed from 0 to 50
#7

Updated by Junxiao Shi over 1 year ago

Currently, I'm simply removing ChildSelector processing without further optimization.
I recognize the opportunity of reducing "prefix range" when CanBePrefix is unset, but I'd defer that to #4914.

#8

Updated by Junxiao Shi over 1 year ago

From https://gerrit.named-data.net/5402:

code is fine but this should be merged after #4916

I disagree. According to 0.6.5 release notes:

Note that this is the last release that encodes to NDN packet format version 0.2.1. A future release will continue to decode v0.2.1 format, but will encode to v0.3 format.

There's no need to wait for any more releases.

#9

Updated by Junxiao Shi over 1 year ago

  • % Done changed from 50 to 70

https://gerrit.named-data.net/5443 eliminates Selectors from PIT tests.

#10

Updated by Junxiao Shi over 1 year ago

  • Status changed from In Progress to Code review
  • % Done changed from 70 to 100

Given the changes needed to drop Selectors processing in PIT is minimal, they are now part of Change 5443.
There are a lot of optimization possible after these changes, but they should belong to another issue.

#11

Updated by Junxiao Shi over 1 year ago

  • Blocked by deleted (Feature #4567: Encode Interest into v0.3 format and drop support for v0.2 format)
#12

Updated by Junxiao Shi over 1 year ago

  • Status changed from Code review to Closed
#13

Updated by Davide Pesavento about 1 year ago

  • Blocks Feature #4567: Encode Interest into v0.3 format and drop support for v0.2 format added

Also available in: Atom PDF