Skip to content

Releases: filecoin-project/curio

v1.24.2

12 Nov 10:43
ce37e6e
Compare
Choose a tag to compare

Overview

We are excited to introduce Curio v1.24.2. This release includes some important fixes for FastFinality and Lotus dependency upgrade in Curio for upcoming Filecoin Network upgrade to NV24.

📖 You can read more about Curio in our documentation.

Compatibility

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

🏗️ Improvements

UI Improvements

  • Replaced 'f0' string for miner actor ID to correct conversion based on the network.
  • Fixed message displayed after saving a configuration layer.

F3

  • Improved error handling when failing to receive manifest from the client in f3.
  • Resolved participation issues related to sentinel errors in f3.
  • Updated participation loop to ensure consistent operation in f3.

🐛 Bug Fixes

  • Fixed sector size overflow by accounting for inter-piece padding during data ingestion.

What's Changed

New Contributors

Full Changelog: v1.24.1...v1.24.2

v1.24.1

22 Oct 14:51
843274b
Compare
Choose a tag to compare

Overview

We are excited to introduce Curio v1.24.1. This release enables FastFinality in Curio for upcoming Filecoin Network upgrade to NV24.

📖 You can read more about Curio in our documentation.

Compatibility

This release is compatible with Lotus versions v1.30.0-rc2 and Boost v2.4.0-rc1. For the latest compatibility details, refer to the Curio version compatibility matrix.

What's Changed

Full Changelog: v1.24.0...v1.24.1

v1.24.0

21 Oct 15:41
42d3dd1
Compare
Choose a tag to compare

Overview

We are excited to introduce Curio v1.24.0, which includes several improvements, bug fixes, and new features to enhance the overall performance and usability of Curio. This release prepares Curio for upcoming Filecoin Network upgrade to NV24.

📖 You can read more about Curio in our documentation.

Compatibility

This release is compatible with Lotus versions v1.30.0-rc2 and Boost v2.4.0-rc1. For the latest compatibility details, refer to the Curio version compatibility matrix.

⭐ Highlights

☀️ New Features

  • Introduced a retry wait mechanism for task retries, enhancing system stability and reducing the likelihood of repeated immediate failures.
  • Added alerts to notify users when the chain synchronization is lagging, ensuring timely awareness of synchronization issues.
  • The UI now shows node uptime, providing better insights into node performance and stability.
  • Users can now reset the sectors state to before SDR from the UI. This allows resealing sectors from SDR if required at any stage before PreCommit message is sent.
  • Updated Curio to be compatible with the upcoming NV24 network upgrade, ensuring seamless operation post-upgrade.

🔧 Enhanced Snap Deals Handling

  • Added a button in the web UI to resume all stuck sectors in Snap Deals, improving operational efficiency.
  • Fixed issues where Snap Deals did not correctly process non-Filplus deals, ensuring all deals are handled properly.
  • Adjusted scheduling logic to only schedule tasks when necessary, reducing unnecessary resource usage during Snap Deals.

⚡ Faster Performance

  • Improved task scheduling to initiate processes only when needed, enhancing overall system performance.
  • Introduced an experimental feature for GPU overprovisioning to potentially enhance computational tasks.
  • Modified the loading of native dependencies to with certain build flags to allow using Curio is a library.

🖥️ User Interface Updates

  • Users can now copy the block CID directly from the winning stats table.
  • Enhanced the PoRep pipeline UI to display when tasks are waiting, providing better visibility into processing states.

🏗️ Improvements

  • Added more detailed resource logs to assist users in monitoring and troubleshooting system resource usage.
  • Enhanced the multinode proxy for better performance and reliability in multi-node environments.
  • Implemented transactions during sector migrations to ensure data integrity and consistency.
  • Improved the sector termination process for enhanced reliability and user experience.
  • Cleaned up code by removing unused wdPost pre-checks and configurations, reducing potential confusion.

🐛 Bug Fixes

  • Fixed an issue where counters were not correctly separated when sharing max values, improving resource allocation accuracy.
  • Eliminated incomplete resource check logs that could cause confusion or misinterpretation.
  • Corrected the PoRep count in the summary to display accurate information.
  • Fixed an issue where multiple API keys were found in the database when migrating multiple miner IDs.
  • Fixed the sector list power display after sector extension operations to reflect accurate values.
  • Fixed a bug where the message watcher could return early, ensuring consistent message processing.
  • Addressed an issue causing panics due to faults by creating a skipped bitfield in PoSt operations.
  • Resolved issues where Slack alerts and winpost alerts were not triggering correctly.
  • Corrected alert mechanisms related to WindowPoSt and WinningPoSt operations.

What's Changed

Full Changelog: v1.23.1...v1.24.0

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