Task #4522
closedRemove selectors from old interest format
100%
Description
Delete the code with selectors and related test, simplify the Interest-Data matching process.
The new version NDN interest simplify the selector function, so we need to update the corresponding part in repo-ng.
Updated by weijia yuan over 6 years ago
- Assignee changed from Alex Afanasyev to weijia yuan
Updated by Junxiao Shi over 6 years ago
This should wait for #4527, because repo-ng needs to handle CanBePrefix flag. Otherwise, it would be difficult to re-add it.
Updated by Junxiao Shi over 6 years ago
Is there a specific reason that names are stored as blob type?
Yes. Names are binary, always. They should be processed and stored as such.
It's not easy to do name prefix matching using blob. If we store name as string in the database, then it will be easy to implement prefix matching.
In SQL there’s no “prefix matching”. Instead, you convert the query to “WHERE name >= query AND name < successor-of(query)”.
See example in repo-sql: https://github.com/3rd-ndn-hackathon/repo-sql/blob/47671612ef8b7c40931e5129c4d82626033f90a1/src/query-processor.cpp#L98-L99
Updated by Alex Afanasyev over 6 years ago
Junxiao, I think there is a problem with this logic. As far as I understand, it would work if we exclude T and L for the overall name in the stored value, but should have undefined results when comparing name as a whole. Am I misremembering our previous discussion of http://named-data.net/doc/NDN-packet-spec/current/name.html#canonical-order ?
Updated by Junxiao Shi over 6 years ago
it would work if we exclude T and L for the overall name in the stored value
Yes, the name
column should only store NAME-VALUE.
https://github.com/3rd-ndn-hackathon/repo-sql/blob/91eb215e90dd66e0711f3a8d705ef4b788c7a4d7/src/database-conn.cpp#L90
https://github.com/3rd-ndn-hackathon/repo-sql/blob/91eb215e90dd66e0711f3a8d705ef4b788c7a4d7/src/database-conn.cpp#L21
Updated by Junxiao Shi over 6 years ago
- Has duplicate Task #4456: clean up the existing repo-ng code added
Updated by weijia yuan about 6 years ago
- Blocks Task #4523: Add Sync support for repo added
Updated by Davide Pesavento almost 6 years ago
- Subject changed from Remove selector from old interest format to Remove selectors from old interest format
- Description updated (diff)
- Status changed from New to In Progress
Is this done? if not, what's missing?
Updated by Junxiao Shi almost 6 years ago
- Status changed from In Progress to Closed
- % Done changed from 0 to 100