Skip to content

Glossary

philbed edited this page Sep 19, 2022 · 6 revisions

Collections

A collection is a database object containing links to files uploaded to estuary. It's a way for a user to organize their files in a directory-ish structure. For more information about collections see the Working with Collections tutorial.

  • collectionPath: A path for a file inside a collection. A collection doesn't contain actual filesystem directories, but paths are strings used by the API to mock a filesystem-like structure since a collection in estuary is actually an unstructured bucket of files.
    • e.g.: /dir1/subdir/, /dir1/subdir/myfile.txt
  • coluuid or collection: The UUID of a collection, which uniquely identifies it (unlike it's name).
    • e.g.: f30c2e22-14a5-48b8-a3a4-93e41f72ed79
  • pin: An object containing information about a pin request. The pin might've been attempted on the main estuary node or on any shuttle connected to the main node. Nevertheless, the main estuary node contains the pin object for the pin attempt. The pin attempt might have its status set to pinning for hours before the pin is successful (status: pinned) or before it times out (status: failed).

Pinning

From the IPFS docs:

Pinning is the mechanism that allows you to tell IPFS to always keep a given object somewhere — the default being your local node, though this can be different if you use a third-party remote pinning service.

On estuary, pinning is effectively done by the doPinning function on pinning.go. doPinning checks the pinning list and pins content on the estuary IPFS node, then it updates the ToCheck channel, which is a queue used by replication.go to make deals for new contents. Eventually, every content on Estuary is pinned, most often by calling pinContent (pinning.go) which is a function that feeds new content to the pinning queue, content that is later consumed by doPinning.

Clone this wiki locally