github filecoin-project/boost v2.1.0-rc1

latest releases: v2.4.0, v2.4.0-rc1, v2.3.0...
pre-release14 months ago

Overview

We're happy to announce the Boost v2.1.0-rc1 release. Boost v2 revamps the way Boost handles indices for user data, introducing the Local Index Directory (LID) and removing the DAG store. In addition, there are a number of new features including bug fixes, increased flexibility on LID setup, and more.

The Local Index Directory requires a database for persistence. After reviewing various options and consulting the community, we are providing interfaces to two databases - LevelDB (for SPs holding less than 1 PiB of user data) and YugabyteDB (for SPs holding more than 1 PiB of user data). ❗ Please take your future growth into account before choosing a database ❗

👉 ⚠️ ❗ ❗ Before updating, please read the release notes and documentation carefully, as storage providers will need to setup a database service and go through a database migration process. Incorrect process can result in permanent data loss ❗ ❗ ⚠️

Highlights

Multiple Miners to Single LID

  • Storage providers running multiple miners can connect all of their boostd, booster-http and booster-bitswap instances to the same LID instance.
  • All boostd, booster-http and booster-bitswap instances can serve retrievals from any miner connected to the LID instance.

mm-cluster

  • New storage deals coming to a boostd will be directed to its dedicated miner.

mm-storage-deal

Graphsync Improvements

The Graphsync library should now terminate the connection properly. This should permanently fix the stalled Graphsync retrievals issue that some storage providers have experienced.

Manual PSD (Publish Storage Deal)

This new feature allows SPs to manually send PSD messages. Once this feature is turned on, Boost will no longer automatically send PSD messages unless explicitly prompted by the user. The feature can be turned on with the following config variable:

[Dealmaking]
        // When set to true, the user is responsible for publishing deals manually.
	// The values of MaxDealsPerPublishMsg and PublishMsgPeriod will be
	// ignored, and deals will remain in the pending state until manually published.
	ManualDealPublish bool

More details about how to use this feature can be found in the Boost docs.

New UI page for IPNI interactions

  • IPNI retrievals are now separated out from the data retrievals page.
  • Latest local and remote advertisement CIDs can be used to check the sync status.
  • Publisher details and other config can be found in the UI.
IPNI UI

⚠️ Users will now see Boost v2 documentation by default. To refer to Boost v1 documentation, you can select v1 in the dropdown on the header.

⚠️ We will no longer be backporting any fixes to v1 releases.

🏗️ Additional Improvements

  • The miner ID is now displayed on the top of all UI pages.
  • The boost binaries will now show the network name to avoid confusion.
./boost --version
boost version 2.0.0-rc1+calibnet+git.8f88bde.dirty
  • Disabled index-provider will not crash boostd process
  • Booster-http now has a CORS handler for IPFS gateway as well as full piece download path.
  • Cached pieceReader allows faster retrievals speeds for the same content.
  • Boost now uses the Lotus pieceReader enhancements, resulting in a 3x improvement in read performance.

Upgrading to Boost v2

You can find detailed instructions on how to upgrade to Boost v2 via the Boost Documentation Tutorials - How to Migrate to Boost v2.

What's Changed

New Contributors

Full Changelog: v2.0.0...v2.1.0-rc1

Don't miss a new boost release

NewReleases is sending notifications on new releases.