-
-
Notifications
You must be signed in to change notification settings - Fork 3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
routing fixes/refactor #5007
routing fixes/refactor #5007
Conversation
// | ||
// This method will not search the routing system for records published by other | ||
// nodes. | ||
func (p *IpnsPublisher) ListPublished(ctx context.Context) (map[peer.ID]*pb.IpnsEntry, error) { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Should probably have a test. This isn't actually used right now but I'd like to expose it via a command (and use it from the republisher).
// | ||
// If `checkRouting` is true and we have no existing record, this method will | ||
// check the routing system for any existing records. | ||
func (p *IpnsPublisher) GetPublished(ctx context.Context, id peer.ID, checkRouting bool) (*pb.IpnsEntry, error) { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
checkRouting
... (bleh)
96ee5d7
to
2192077
Compare
@@ -20,7 +20,7 @@ test_ipfs_get_flag() { | |||
' | |||
|
|||
test_expect_success "ipfs get $flag output looks good" ' | |||
printf "%s\n\n" "Saving archive to $HASH$ext" >expected && |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This seems strictly better but is technically a breaking change. Any idea why this has changed?
f0aa157
to
fb318b6
Compare
namesys/publisher.go
Outdated
} | ||
seqno := rec.GetSequence() // returns 0 if rec is nil | ||
if rec != nil && value != path.Path(rec.GetValue()) { | ||
// Don't bother incriminating the sequence number unless the |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
incriminating? :)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
aspell has a surprisingly small english dictionary...
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I am the author of said dictionary. I assumed you meant "incrementing", that is not a word found in most dictionaries, for example https://www.merriam-webster.com/dictionary/incrementing return no results. Nevertheless it is a word I will consider adding. Let's continue this discussion in an issue at https://github.com/en-wl/wordlist/issues.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@kevina you are! Awesome! Will do.
262f464
to
adedd02
Compare
n.Floodsub, | ||
validator, | ||
) | ||
n.Routing = rhelpers.Tiered{ |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
👍
What is the status of this? Is it likely to go in mostly as is? Just FYI: I have not looked at this closely but this looks like it might be making API changes to the routing code. Some additional changes may be required to support sym-links. |
That's my plan. I'm almost done with the migration but that's the only thing left.
Symlinks? This should only be touching namesys/routing code (not unixfs path resolution or anything that should handle symlinks). Am I missing something? |
adedd02
to
9f5cd94
Compare
The current routing API makes adding support for symlinks difficult, espacally the handling of See #3508. |
License: MIT Signed-off-by: Steven Allen <steven@stebalien.com>
9f5cd94
to
31e4fa3
Compare
Does this patch make something worse? |
And: * Update for DHT changes. * Switch to the new record validation system. License: MIT Signed-off-by: Steven Allen <steven@stebalien.com>
License: MIT Signed-off-by: Steven Allen <steven@stebalien.com>
The current convention is to return the concrete type instead of an interface so let's go with that and have one constructor. License: MIT Signed-off-by: Steven Allen <steven@stebalien.com>
fixes #4749 License: MIT Signed-off-by: Steven Allen <steven@stebalien.com>
Remove ~50 lines of code, some casting, and a superfluous map (when go starts looking like python, something's wrong). License: MIT Signed-off-by: Steven Allen <steven@stebalien.com>
License: MIT Signed-off-by: Steven Allen <steven@stebalien.com>
License: MIT Signed-off-by: Steven Allen <steven@stebalien.com>
License: MIT Signed-off-by: Steven Allen <steven@stebalien.com>
31e4fa3
to
916572f
Compare
I have not looked closely but I don't think so. Since this should hopefully
go in soon I will wait until it does before I tackle the API changes needed
for symbolic links.
|
there shouldnt be any shared code between routing and symlinks... You might be thinking of the path resolver. |
License: MIT Signed-off-by: Steven Allen <steven@stebalien.com>
3c5a547
to
c2c49c8
Compare
We've added a new file to the flatfs datastore. License: MIT Signed-off-by: Steven Allen <steven@stebalien.com>
e0f05a2
to
8293e20
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is a pretty complicated change, but I think i've reviewed it thoroughly and don't see any issues. Let's get this shipped and let's forge ahead and make IPNS great again!
_, ipnskey := IpnsKeysForID(id) | ||
value, err = p.routing.GetValue(ctx, ipnskey) | ||
if err != nil { | ||
// Not found or other network issue. Can't really do |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
dropping errors makes me nervous, would appreciate maybe a debug or info log of this
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Fair enough.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Addressed.
License: MIT Signed-off-by: Steven Allen <steven@stebalien.com>
Done. |
routing fixes/refactor This commit was moved from ipfs/kubo@c3e011b
GetValue).
fixes #4749
fixes #4954
Note: I'm not entirely happy with this patch but it's good enough for now.
Eventually, I'd prefer to pass the IpnsPublisher to the Republisher as I'm not a
fan of having the Republisher dig through the IpnsPublisher's datastore entries.
However, this unblocks us.
Depends on: