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

[BUG] lotus client has zero active transfers, but refuses retrievals because of active transfer #6346

Closed
ghost opened this issue May 27, 2021 · 3 comments
Labels
kind/bug Kind: Bug

Comments

@ghost
Copy link

ghost commented May 27, 2021

Describe the bug
lotus client list-transfers shows no current transfers, but then my retrieval fails with Retrieve failed: there is an active retrieval deal with peer <peer id>. Here's an example:

$ lotus client list-transfers
Sending Channels

Receiving Channels

$ lotus client retrieve --miner f08399 QmZJZk86RRGaAJu2rgLBS6RbvTJzRTzA8zdjvJ5V1cvb7g /dev/null
> Recv: 0 B, Paid 0 FIL, ClientEventOpen (DealStatusNew)
ERROR: retrieval failed: Retrieve failed: there is an active retrieval deal with peer 12D3KooWGabRFTsGhQLP5sb5f6eSUDbhyDqiF3fK9mZQWxJK5xJG for payload CID QmZJZk86RRGaAJu2rgLBS6RbvTJzRTzA8zdjvJ5V1cvb7g (retrieval deal ID 1622031587337027948, state DealStatusOngoing) - existing deal must be cancelled before starting a new retrieval deal

$ lotus client list-transfers
Sending Channels

Receiving Channels

Version (run lotus version):

$ lotus version
Daemon:  1.11.0-dev+mainnet+git.3cdd06b71+api1.3.0
Local: lotus version 1.11.0-dev+mainnet+git.3cdd06b71

To Reproduce
See original bug description above

Expected behavior
If lotus client list-transfers is empty, then I should never see an error message recommending existing deal must be cancelled before starting a new retrieval deal. It's inconsistent.

@ghost ghost added hint/needs-triaging kind/bug Kind: Bug labels May 27, 2021
@ghost
Copy link
Author

ghost commented May 27, 2021

Log
lotus-issue-6346.log

@dirkmc
Copy link
Contributor

dirkmc commented May 31, 2021

@mgoelzer do you see the transfer if you run lotus client list-transfers --completed --show-failed?

When you get the error message that there is already an active retrieval deal, it should tell you the id of the retrieval deal. You can pass that id to cancel-retrieval to cancel the deal:
lotus client cancel-retrieval --deal-id=<deal ID>

@TippyFlitsUK
Copy link
Contributor

Resolved by following @dirkmc's recommendation.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
kind/bug Kind: Bug
Projects
None yet
Development

No branches or pull requests

2 participants