Skip to content
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

Removing a pin of a hash that does not exist should fail immediately #2155

Closed
travisperson opened this issue Jan 3, 2016 · 2 comments
Closed

Comments

@travisperson
Copy link
Member

Performing a ipfs pin rm is a local command and should not require any connection to any network (I would believe). This also means that it should always fail immediately if the hash does not exist in the datastore.

Currently it will not, and in fact appears to hang indefinitely.

@whyrusleeping
Copy link
Member

hahaha, it tries to fetch it from the network... good catch

hackergrrl added a commit to hackergrrl/go-ipfs that referenced this issue Jan 14, 2016
Fixes ipfs#2155 by turning the hash path arguments into keys and
unpinning directly, rather than running a full core.Resolve on them.
This lets users fail fast when they try to remove pins that they don't
have locally.

License: MIT
Signed-off-by: Stephen Whitmore ([email protected])
hackergrrl added a commit to hackergrrl/go-ipfs that referenced this issue Jan 14, 2016
Fixes ipfs#2155 by turning the hash path arguments into keys and
unpinning directly, rather than running a full core.Resolve on them.
This lets users fail fast when they try to remove pins that they don't
have locally.

License: MIT
Signed-off-by: Stephen Whitmore <[email protected]>
hackergrrl added a commit to hackergrrl/go-ipfs that referenced this issue Jan 16, 2016
Fixes ipfs#2155 by turning the hash path arguments into keys
and unpinning directly, rather than running a full core.Resolve on
them. This lets users fail fast when they try to remove pins that
they don't have locally.

Note that this will only work when the path is of the form <hash> or
/ipfs/<hash>. Given e.g. /ipfs/<hash>/foo, foo's key cannot be known
without first resolving <hash>, which may involve talking to the
network.

License: MIT
Signed-off-by: Stephen Whitmore <[email protected]>
@hackergrrl
Copy link
Contributor

Thanks for catching this @travisperson! Key resolution happens separately from dag node resolution now for unpinning, which should be able to fast-fail in most cases now.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants