Have more IPFS nodes providing our content
We are currently the only provider for the IPFS repo for most of the content, except those cached or pinned by gateways.
It would be nice if we also pin the content via Filecoin for redundancy. Check how much it would cost and how to do it.
Pinata costs $0.15/gb monthly.
another nice thing would be to let people with a dappnode pin the IPNS - but it is blocked by: https://github.com/dappnode/DAppNodePackage-ipfs-pinner/issues/31 Or we push our dappnode package - so it also pins our content (and verifies) - seems distributing dappnode packages might also become free (https://github.com/dappnode/DAppNode/issues/299) or cheaper (https://forum.dappnode.io/t/dappnode-repositories-in-xdai/1184)
Something a little unrelated, but that is worth being mentioned, Sourcify updates the IPNS hash hourly, and due to contracts being verified constantly, the root hash also changes constantly.
Even if you pin by ipns, I'm pretty sure it actually solves the name and pin the hash at THAT moment (couldn't find any doc saying the opposite). It means that people wanting to mirror Sourcify entire repo must ensure they put some cron job to pin the name frequently.
But even if they don't, it actually helps spread the data because the existing objects get replicated.
Good point @wmitsuda But given any change to the IPFS repo will change the root hash, I can't immediately see how this could be worked around.
It is not an uncommon problem though, maybe there's a way to do it.
yeap, it is more like a side note for people to be aware of
I looked into this a bit and there's actually a service for these purposes ipfs cluster. I am just trying to better understand the permissions of clusters. CRDT consensus seems to be a better option where Sourcify is a publisher node and others are followers.
Also in our case, when we are publishing a new top-level CID we are not unpinning the older CIDs. I don't know to what extent this may cause bloat. Maybe we should start unpinning the old CIDs.
The good thing is, when the top-level CID changes 99% of the files will be the same so if someone regularly pins our new CID they just need to download a few files only. One can then unpin the old CID recursively and pin the new one before everything is garbage collected. I found this basic script to be run as a cron job. Also here's the Reddit discussion that lead me to the script.
I maybe be able to help with this. We have a plethora of servers on hostnoc velia etc. All are on latest version of ubuntu. We have roughly a petabyte of storage.
I maybe be able to help with this. We have a plethora of servers on hostnoc velia etc. All are on latest version of ubuntu. We have roughly a petabyte of storage.
Thanks for the offer. We still don't offer an interface or an ipfs-cluster but we do pin to estuary.tech and web3.storage. If you'd like to pin yourself and contribute you can have a look here: https://github.com/otterscan/otterscan/blob/develop/docs/ipfs.md#pinning-sourcify-locally Note that the repo gets updated regularly and ideally you should update the new root CID too. Even if not, most of the times when updated 99.99% contracts will be the same so you'll still be contributing to the availability of the files.