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

Move the IPFS API Object to the BlockStore #355

Closed
evan-forbes opened this issue May 26, 2021 · 3 comments · Fixed by #356
Closed

Move the IPFS API Object to the BlockStore #355

evan-forbes opened this issue May 26, 2021 · 3 comments · Fixed by #356
Assignees

Comments

@evan-forbes
Copy link
Member

One of the requirements needed to complete #184, is that we have to retrieve block data from IPFS instead of using the PartSetHeader. To make this possible, we should move the IPFS API object from the consensus.State object, to the store.Blockstore object.

@liamsi
Copy link
Member

liamsi commented May 26, 2021

Does the BlockStore really need the whole IPFS object? I think the Dag should be enough.

Also, ideally, the blockstore would only be used for local storage and retrieval. Or, at least callers should be able to indicate if they want to do network IO or only local IO somehow. We can treat the ipfs API as a blackbox for a first PR and not differentiate between the two, but we should follow up on this.

@liamsi
Copy link
Member

liamsi commented May 26, 2021

Thinking about this further, the blockStore, when accessing the ipfs API in any direction reading/writing, will always potentially do some networking IO. Even when just storing, my understanding is that triggers publishing/gossiping the "have-lists". And that is probably OK. It would still be good if local vs remote would be a bit more explicit (optionally) at least when reading from the store.

@evan-forbes evan-forbes self-assigned this May 27, 2021
@evan-forbes
Copy link
Member Author

That's a great point, we definitely need to be explicit when using IPFS to store and retrieve data. This will be very important for future PRs/issues that focus on storing and retrieving data with the IPFS dag object that is being moved in #356

cmwaters pushed a commit that referenced this issue Mar 13, 2023
by moving the `codecov.yml` file from .github the root folder.

---

#### PR checklist

- [x] Tests written/updated
- [x] Changelog entry added in `.changelog` (we use [unclog](https://github.com/informalsystems/unclog) to manage our changelog)
- [x] Updated relevant documentation (`docs/` or `spec/`) and code comments

(cherry picked from commit c906604)

Co-authored-by: Lasaro <[email protected]>
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

Successfully merging a pull request may close this issue.

2 participants