Skip to content

Releases: filecoin-project/curio

v1.23.1

23 Sep 15:47
0c3d207
Compare
Choose a tag to compare

Overview

We are excited to introduce Curio v1.23.1, which includes several improvements, bug fixes, and new features to enhance the overall performance and usability of Curio. This release ensures better stability and more efficient operation for our users.

📖 You can read more about Curio in our documentation.

Compatibility
This release is compatible with Lotus versions v1.28.1 and Boost v2.3.0. For the latest compatibility details, refer to the Curio version compatibility matrix.

⭐ Highlights

☀️ New Features

  • SupraSeal Batch: 10x more efficient sealing, with a custom build and more NVMe drives.
  • Unseal: Retrieve the unsealed copy from the sealed copy. Now Curio has EVERY feature of lotus-miner.
  • 中文 Simplified Chinese Documentation

🔧 Enhanced Snap Deals Handling

  • Fixed issues related to snap-deal handling, including unsealed sector management and t_aux generation when not present.
  • Improved snap piece cleanup and selection process to optimize data handling.
  • Snap-deal pipeline UI updates for better sector management.

⚡ Faster Performance

  • Avoided expensive table scans in the SectorsStatus query, leading to faster performance in lmrpc tasks.
  • Improved backpressure management in snap tasks, ensuring smoother task execution.
  • Optimization of snap sector picker to be deadline-aware, enhancing task prioritization and performance.

🖥️ User Interface Updates

  • Added new sidebar navigation to the web UI for easier access to tasks and configuration.
  • Improved display of chain connectivity status and added bulk task restart options on the PoRep page.
  • Updated UI for the config list page to make configuration management more user-friendly.

🏗️ Improvements

  • Fixes to the WinningPoSt logic to correctly declare GPU requirements, reducing the risk of job failures.
  • Added batch deadline setting for SectorMetadata to streamline sector management tasks.
  • Improved handling of insufficient funds errors during sealing and snap processes.
  • Resolved issues with the use of HarmonyDB, preventing misconfiguration during setup.
  • Introduced an installation target for completion scripts to improve development setup.
  • AlertManager has been updated to resolve key addresses before checking, improving alert reliability.

🐛 Bug Fixes

  • Corrected sector selection in the snap ingester, ensuring smooth sector processing.
  • Resolved issues with invalid sector provider (SP) in the sector list page.
  • Fixed issues related to the precommit stage to ensure the correct sector duration is used.

What's Changed

New Contributors

Full Changelog: v1.23.0...v1.23.1

v1.23.0

30 Jul 08:57
fe6413b
Compare
Choose a tag to compare

Overview

We are excited to announce to introduce Curio v1.23.0 for the upcoming Filecoin Network upgrade to NV 23 codename "waffle" 🧇 .
Please ensure to upgrade to this release before 6th August 2024 to ensure a smooth migration experience.

📖 You can read more about Curio in our documentation.

Compatibility

This release is compatible with Lotus versions v1.28.1 and Boost v2.3.0. For the latest compatibility details, refer to the Curio version compatibility matrix.

⭐ Highlights

🫰 Snap Deals

  • Curio now supports snap deals for data loading. (Proving snap deal sectors happens already)
  • Configuration allows for data loading through either snap-deal or at-seal-time pipelines.
  • The UI's snap-deal pipeline page new new.

⚡ Faster Migration

  • Curio guided migration has been updated to skip migrating sector indexes. These will be regenerated when storage is attached to the Curio nodes.
  • Storage paths are no longer migrated directly from lotus-miner to avoid incorrect URLs.
  • This eliminates the need to start lotus-miner during the migration process.

🖥️ GUI

  • A new snap-deal page dedicated to the snap-deal pipeline.
  • A new deals page showing all deals assigned to sectors that are waiting to be sealed.
  • A new sector expiry graph for each actor, illustrating the expiration pattern of your sectors.

🏗️ Improvements

  • Synthetic PoRep is now supported. Users can pledge a new CC sector with the --synthetic option or enable it in the configuration for deal sectors.
  • 🐛 A bug in YugabyteDB caused crashes due to queries containing the string-to-array directive. All such queries in Curio have been modified to avoid the crash.
  • AlertManager now supports alerting via Slack webhook.
  • 🐛 A bug fix to correct incorrect sector expiration calculations in the precommit stage.
  • Size: the Curio binary is half the size of the previous version to save your resources & run on lighter Storage hardware.
  • Dependencies on Lotus are reduced to actor versions and Miner (storage and proving) components.

What's Changed

Full Changelog: v1.22.1...v1.23.0

v1.22.1

15 Jul 19:24
b9559e7
Compare
Choose a tag to compare

Overview

We are excited to announce the first patch release of Curio, our innovative solution to enhance the efficiency and reliability of Filecoin data onboarding. This release lays the groundwork for Curio, providing a stable and robust platform with high availability, efficient task management, and seamless configuration capabilities. 🚀

📖 You can read more about Curio in our documentation.

🆕 🧑‍🏭 New Contributors

Special thanks to our new contributors.

🎉 New Features :

  • AlertManager
    • Curio AlertManager now supports sending alerts to Prometheus AlertManager
    • AlertManager has been updated to send alerts to multiple plugins at once

🏗️ Key Changes

This release focuses on the fixes around migration process and UI pages. These improvements are based on the feedback received after mainnet migration by SPs.

  • Guided Setup Fixes

    • Migrate deal metadata from Lotus
    • Fixed config marshalling issues
  • Home page tables have been updated to be more user friendly and display the most important data at the top

What's Changed

Full Changelog: v1.22.0...v1.22.1

v1.22.0

12 Jun 19:24
633c576
Compare
Choose a tag to compare

Overview

We are excited to announce the initial General Availability (GA) release of Curio, our innovative solution to enhance the efficiency and reliability of Filecoin data onborading. This first release lays the groundwork for Curio, providing a stable and robust platform with high availability, efficient task management, and seamless configuration capabilities. 🚀

Key Features

  1. High Availability:

    • Curio is designed for high availability, allowing multiple instances of Curio nodes to handle similar tasks.
    • The distributed scheduler and greedy worker design ensure task completion despite partial outages.
    • You can update one Curio machine without disrupting the operation of others.
  2. Node Heartbeat:

    • Each Curio node in a cluster posts a heartbeat message every 10 minutes in HarmonyDB, updating its status.
    • If a heartbeat is missed, the node is considered lost, and all tasks are rescheduled on remaining nodes.
  3. Task Retry:

    • Each task in Curio has a retry limit before being declared lost, preventing indefinite retries of bad tasks.
    • This feature safeguards against lost computation time and storage.
  4. Polling System:

    • Curio uses a polling system to avoid overloading nodes, with nodes checking for tasks they can handle.
    • Idle nodes are prioritized to ensure even workload distribution.
  5. Simple Configuration Management:

    • Configuration is stored in the database as layers that can be stacked to create a final configuration.
    • Users can reuse these layers to control multiple machines' behavior without maintaining each node's configuration.
    • Start the binary with the appropriate flags to connect with YugabyteDB and specify configuration layers.
  6. Running Curio with Multiple GPUs:

    • Curio can handle multiple GPUs simultaneously without running multiple instances of the Curio process.
    • Curio can be managed as a single systemd service without concerns about GPU allocations.

Curio vs. Lotus Miner:

Feature Curio Lotus-Miner
Scheduling Collaborative (Prioritized Greedy) Single point of failure
High Availability Available Single control process
Redundant Post Available Not Available
Task Retry Control Task retry with a cutoff limit (per task) Unlimited retry leading to resource exhaustion
Multiple Miner IDs Curio cluster supports multiple Miner IDs Single Miner ID per Lotus-Miner
Shared Task Nodes Curio nodes handle tasks for multiple Miner IDs Attached workers handle tasks for a single Miner ID
Distributed Configuration Management Configuration stored in highly-available Yugabyte Database All configuration in a single file

Getting Started: 📄

To begin your journey with Curio, please visit our official documentation for detailed guides, tutorials, and support resources. For more information on this release, check out our release page on GitHub.

Thank you for choosing Curio. We look forward to supporting your storage needs and hearing your feedback!

--- Curio Team ❤️

What's Changed

Full Changelog: https://github.com/filecoin-project/curio/commits/v1.22.0