Releases: filecoin-project/lotus
v1.31.1
This Lotus release introduces several new features and improvements, including JSON output for tipsets in lotus chain list
cmd, enhanced logging during network upgrade migrations, and additional Bootstrap nodes. It also includes a refactored Ethereum API implementation into smaller, more manageable modules in a new github.com/filecoin-project/lotus/node/impl/eth
package, as well as adding network name as a tag in most metrics - making it easier to create Graphana Dashboards for multiple networks. Please review the upgrade warnings and documentation for any important changes affecting RPC providers, node operators, and storage providers.
☢️ Upgrade Warnings ☢️
- If you are running the v1.30.x version of Lotus, please go through the Upgrade Warnings section for the v1.30.* releases and v1.31.* before upgrading to this release.
⭐ Feature/Improvement Highlights:
- Add json output of tipsets to
lotus chain list
. (filecoin-project/lotus#12691) - During a network upgrade, log migration progress every 2 seconds so they are more helpful and informative. The
LOTUS_MIGRATE_PROGRESS_LOG_SECONDS
environment variable can be used to change this if needed. (filecoin-project/lotus#12732) - Add Magik's Bootstrap node. (filecoin-project/lotus#12792)
- Lotus now reports the network name as a tag in most metrics. (filecoin-project/lotus#12733)
- Add a new cron queue inspection utility. (filecoin-project/lotus#12825)
- Add a new utility to the
lotus-shed msg
tool which pretty-prints gas summaries to tables, broken down into compute and storage gas totals and percentages (filecoin-project/lotus#12817) - Generate the cli docs directly from the code instead compiling and executing binaries'
help
output. (filecoin-project/lotus#12717) - Refactored Ethereum API implementation into smaller, more manageable modules in a new
github.com/filecoin-project/lotus/node/impl/eth
package. (filecoin-project/lotus#12796) - Add F3GetCertificate & F3GetLatestCertificate to the gateway. (filecoin-project/lotus#12778)
- Add
StateMarketProposalPending
API /lotus state market proposal-pending
CLI. (filecoin-project/lotus#12724)
🐛 Bug Fix Highlights
- Remove IPNI advertisement relay over pubsub via Lotus node as it now has been deprecated. (filecoin-project/lotus#12768
- Make
EthTraceFilter
/trace_filter
skip null rounds instead of erroring. (filecoin-project/lotus#12702) - Event APIs (
GetActorEventsRaw
,SubscribeActorEventsRaw
,eth_getLogs
,eth_newFilter
, etc.) will now return an error when a request matches more thanMaxFilterResults
(default: 10,000) rather than silently truncating the results. Also apply an internal event matcher foreth_getLogs
(etc.) to avoid builtin actor events on database query so as not to include them inMaxFilterResults
calculation. (filecoin-project/lotus#12671) ChainIndexer#GetMsgInfo
returns anErrNotFound
when there are no rows. (filecoin-project/lotus#12680)- Gracefully handle EAM CreateAccount failures in
EthTraceBlock
(trace_block
) andEthTraceTransaction
(trace_transaction
) calls. (filecoin-project/lotus#12730) - Make f3 gen power command being non-deterministic (filecoin-project/lotus#12764)
- Resolve a bug in sync by preventing checkpoint expansion (filecoin-project/lotus#12747)
- Fix issue in backfillIndex where error handling could lead to a potential panic (filecoin-project/lotus#12813)
📝 Changelog
For the full set of changes since the last stable node release:
👨👩👧👦 Contributors
Contributor | Commits | Lines ± | Files Changed |
---|---|---|---|
Rod Vagg | 26 | +13687/-11008 | 146 |
Masih H. Derkani | 19 | +2492/-1506 | 59 |
Aryan Tikarya | 2 | +2120/-1407 | 45 |
Krishang Shah | 1 | +3214/-117 | 66 |
Steven Allen | 4 | +1317/-1632 | 22 |
Jakub Sztandera | 10 | +935/-1203 | 176 |
Łukasz Magiera | 2 | +949/-467 | 33 |
Phi-rjan | 9 | +369/-339 | 43 |
Piotr Galar | 4 | +586/-106 | 12 |
Viraj Bhartiya | 3 | +219/-63 | 16 |
caseylove | 1 | +71/-67 | 1 |
asamuj | 2 | +39/-43 | 14 |
ZenGround0 | 2 | +73/-1 | 3 |
XiaoBei | 2 | +15/-15 | 7 |
wmjae | 2 | +9/-9 | 7 |
taozui472 | 1 | +9/-9 | 6 |
dependabot[bot] | 2 | +9/-9 | 4 |
huajin tong | 1 | +6/-6 | 6 |
Phi | 1 | +6/-6 | 6 |
Andi | 1 | +6/-6 | 2 |
root | 1 | +5/-5 | 4 |
chuangjinglu | 1 | +3/-3 | 3 |
wgyt | 1 | +2/-2 | 1 |
parthshah1 | 1 | +2/-2 | 1 |
leo | 1 | +2/-2 | 2 |
pinglanlu | 1 | +1/-1 | 1 |
v1.31.1-rc1
This Lotus release candidate introduces several new features and improvements, including JSON output for tipsets in lotus chain list
cmd, enhanced logging during network upgrade migrations, and additional Bootstrap nodes. It also includes a refactored Ethereum API implementation into smaller, more manageable modules in a new github.com/filecoin-project/lotus/node/impl/eth
package, as well as adding network name as a tag in most metrics - making it easier to create Graphana Dashboards for multiple networks.
Please review the upgrade warnings and documentation for any important changes affecting RPC providers, node operators, and storage providers.
☢️ Upgrade Warnings ☢️
- If you are running the v1.30.x version of Lotus, please go through the Upgrade Warnings section for the v1.30.* releases and v1.31.* before upgrading to this release.
⭐ Feature/Improvement Highlights:
- Add json output of tipsets to
lotus chain list
. (filecoin-project/lotus#12691) - During a network upgrade, log migration progress every 2 seconds so they are more helpful and informative. The
LOTUS_MIGRATE_PROGRESS_LOG_SECONDS
environment variable can be used to change this if needed. (filecoin-project/lotus#12732) - Add Magik's Bootstrap node. (filecoin-project/lotus#12792)
- Lotus now reports the network name as a tag in most metrics. (filecoin-project/lotus#12733)
- Add a new cron queue inspection utility. (filecoin-project/lotus#12825)
- Add a new utility to the
lotus-shed msg
tool which pretty-prints gas summaries to tables, broken down into compute and storage gas totals and percentages (filecoin-project/lotus#12817) - Generate the cli docs directly from the code instead compiling and executing binaries'
help
output. (filecoin-project/lotus#12717) - Refactored Ethereum API implementation into smaller, more manageable modules in a new
github.com/filecoin-project/lotus/node/impl/eth
package. (filecoin-project/lotus#12796) - Add F3GetCertificate & F3GetLatestCertificate to the gateway. (filecoin-project/lotus#12778)
- Add
StateMarketProposalPending
API /lotus state market proposal-pending
CLI. (filecoin-project/lotus#12724)
🐛 Bug Fix Highlights
- Remove IPNI advertisement relay over pubsub via Lotus node as it now has been deprecated. (filecoin-project/lotus#12768
- Make
EthTraceFilter
/trace_filter
skip null rounds instead of erroring. (filecoin-project/lotus#12702) - Event APIs (
GetActorEventsRaw
,SubscribeActorEventsRaw
,eth_getLogs
,eth_newFilter
, etc.) will now return an error when a request matches more thanMaxFilterResults
(default: 10,000) rather than silently truncating the results. Also apply an internal event matcher foreth_getLogs
(etc.) to avoid builtin actor events on database query so as not to include them inMaxFilterResults
calculation. (filecoin-project/lotus#12671) ChainIndexer#GetMsgInfo
returns anErrNotFound
when there are no rows. (filecoin-project/lotus#12680)- Gracefully handle EAM CreateAccount failures in
EthTraceBlock
(trace_block
) andEthTraceTransaction
(trace_transaction
) calls. (filecoin-project/lotus#12730) - Make f3 gen power command being non-deterministic (filecoin-project/lotus#12764)
- Resolve a bug in sync by preventing checkpoint expansion (filecoin-project/lotus#12747)
- Fix issue in backfillIndex where error handling could lead to a potential panic (filecoin-project/lotus#12813)
📝 Changelog
For the full set of changes since the last stable node release:
v1.32.0-rc2
This release candidate cancels the upgrade epoch for the Calibration network, orginially planned to happen on 2024-12-16T23:00:00Z
. Please read the full announcement here.
Calibration network node operators that has already upgraded to Lotus v1.32.0-rc1, need to update to the Lotus v1.32.0-rc2 by 2024-12-16T23:00:00Z
. Node. Calibration network node operators that has not upgraded to the Lotus v1.32.0-rc1, can stay on the release that they are already on.
Note
- This release candidate unsets the Calibration network upgrade epoch, originally planned to happen on 2024-12-16T23:00:00Z.
- This release candidate does NOT set the mainnet network upgrade epoch. It will be added in the final release (expected December 18th).
☢️ Upgrade Warnings ☢️
- If you have
EnableEthRPC
set totrue
in your config.toml, you need to ensure thatEnableIndexer
in the new ChainIndexer configuration section is also set totrue
. Failing to do so will result in an error during node initialization. You can read more about the new improvedChainIndexer
feature in the documentation for it here. - If you are running the v1.30.x version of Lotus, please go through the Upgrade Warnings section for the v1.30.* releases and v1.31.* before upgrading to this release.
🏛️ Filecoin network version 25 FIPs
- TBD
📦 v16 Builtin Actor Bundle
This release candidate uses the v16.0.0-rc1
🚚 Migration
All node operators, including storage providers, should be aware that ONE pre-migration is being scheduled 120 epochs before the network upgrade. The migration for the NV25 upgrade is expected to be light with no heavy pre-migrations:
- Pre-Migration is expected to take less then 1 minute.
- The migration on the upgrade epoch is expected to take less than 30 seconds on a node with a NVMe-drive and a newer CPU. For nodes running on slower disks/CPU, it is still expected to take less then 1 minute.
We recommend node operators (who haven't enabled splitstore discard mode) that do not care about historical chain states, to prune the chain blockstore by syncing from a snapshot 1-2 days before the upgrade.
For certain node operators, such as full archival nodes or systems that need to keep large amounts of state (RPC providers), we recommend skipping the pre-migration and run the non-cached migration (i.e., just running the migration at the network upgrade epoch), and schedule for some additional downtime. Operators of such nodes can read the How to disable premigration in network upgrade tutorial.
New Features highlight
- Add Market PendingProposals API / CLI. (filecoin-project/lotus#12724)
Improvements
- The miner actor builtin
QAPowerForWeight
no longer accepts the unused "dealWeight" parameter, the function signature now only takes 3 arguments: sectorSize, sectorDuration, verifiedWeight. (filecoin-project/lotus#12445) - Fix checkpointed tipsets being expanded (filecoin-project/lotus#12747)
- Remove IPNI advertisement relay over pubsub via Lotus node as it now has been deprecated. (filecoin-project/lotus#12768
- During a network upgrade, log migration progress every 2 seconds so they are more helpful and informative. The
LOTUS_MIGRATE_PROGRESS_LOG_SECONDS
environment variable can be used to change this if needed. (filecoin-project/lotus#12732) - Add F3GetCertificate & F3GetLatestCertificate to the gateway. (filecoin-project/lotus#12778)
- Optimize ForEachClaim to return only eligible claims (filecoin-project/lotus#12770
Bug Fixes
- Make
EthTraceFilter
/trace_filter
skip null rounds instead of erroring. (filecoin-project/lotus#12702) - Event APIs (
GetActorEventsRaw
,SubscribeActorEventsRaw
,eth_getLogs
,eth_newFilter
, etc.) will now return an error when a request matches more thanMaxFilterResults
(default: 10,000) rather than silently truncating the results. Also apply an internal event matcher foreth_getLogs
(etc.) to avoid builtin actor events on database query so as not to include them inMaxFilterResults
calculation. (filecoin-project/lotus#12671) ChainIndexer#GetMsgInfo
returns anErrNotFound
when there are no rows. (filecoin-project/lotus#12680)- Gracefully handle EAM CreateAccount failures in
EthTraceBlock
(trace_block
) andEthTraceTransaction
(trace_transaction
) calls. (filecoin-project/lotus#12730) - Make f3 gen power command being non-deterministic (filecoin-project/lotus#12764)
📝 Changelog
For the set of changes since the last stable release:
- Node: v1.31.0...v1.32.0-rc2
- Miner: v1.31.0...miner/v1.32.0-rc2
👨👩👧👦 Contributors
Contributor | Commits | Lines ± | Files Changed |
---|---|---|---|
Masih H. Derkani | 17 | +2480/-1075 | 47 |
Krishang Shah | 1 | +3214/-117 | 66 |
Steven Allen | 4 | +1317/-1632 | 22 |
Rod Vagg | 13 | +1164/-307 | 56 |
Łukasz Magiera | 1 | +945/-467 | 31 |
Phi-rjan | 7 | +328/-323 | 35 |
Jakub Sztandera | 3 | +308/-12 | 7 |
Aryan Tikarya | 1 | +281/-2 | 5 |
Viraj Bhartiya | 1 | +29/-14 | 3 |
Phi | 1 | +9/-9 | 8 |
huajin tong | 1 | +6/-6 | 6 |
ZenGround0 | 1 | +9/-1 | 2 |
chuangjinglu | 1 | +3/-3 | 3 |
pinglanlu | 1 | +1/-1 | 1 |
Piotr Galar | 1 | +1/-1 | 1 |
miner/v1.32.0-rc2
This release candidate cancels the upgrade epoch for the Calibration network, orginially planned to happen on 2024-12-16T23:00:00Z
. Please read the full announcement here.
Calibration network node operators that has already upgraded to Lotus v1.32.0-rc1, need to update to the Lotus v1.32.0-rc2 by 2024-12-16T23:00:00Z
. Node. Calibration network node operators that has not upgraded to the Lotus v1.32.0-rc1, can stay on the release that they are already on.
Note
- This release candidate unsets the Calibration network upgrade epoch, originally planned to happen on 2024-12-16T23:00:00Z.
- This release candidate does NOT set the mainnet network upgrade epoch. It will be added in the final release (expected December 18th).
☢️ Upgrade Warnings ☢️
- If you have
EnableEthRPC
set totrue
in your config.toml, you need to ensure thatEnableIndexer
in the new ChainIndexer configuration section is also set totrue
. Failing to do so will result in an error during node initialization. You can read more about the new improvedChainIndexer
feature in the documentation for it here. - If you are running the v1.30.x version of Lotus, please go through the Upgrade Warnings section for the v1.30.* releases and v1.31.* before upgrading to this release.
🏛️ Filecoin network version 25 FIPs
- TBD
📦 v16 Builtin Actor Bundle
This release candidate uses the v16.0.0-rc1
🚚 Migration
All node operators, including storage providers, should be aware that ONE pre-migration is being scheduled 120 epochs before the network upgrade. The migration for the NV25 upgrade is expected to be light with no heavy pre-migrations:
- Pre-Migration is expected to take less then 1 minute.
- The migration on the upgrade epoch is expected to take less than 30 seconds on a node with a NVMe-drive and a newer CPU. For nodes running on slower disks/CPU, it is still expected to take less then 1 minute.
We recommend node operators (who haven't enabled splitstore discard mode) that do not care about historical chain states, to prune the chain blockstore by syncing from a snapshot 1-2 days before the upgrade.
For certain node operators, such as full archival nodes or systems that need to keep large amounts of state (RPC providers), we recommend skipping the pre-migration and run the non-cached migration (i.e., just running the migration at the network upgrade epoch), and schedule for some additional downtime. Operators of such nodes can read the How to disable premigration in network upgrade tutorial.
New Features highlight
- Add Market PendingProposals API / CLI. (filecoin-project/lotus#12724)
Improvements
- The miner actor builtin
QAPowerForWeight
no longer accepts the unused "dealWeight" parameter, the function signature now only takes 3 arguments: sectorSize, sectorDuration, verifiedWeight. (filecoin-project/lotus#12445) - Fix checkpointed tipsets being expanded (filecoin-project/lotus#12747)
- Remove IPNI advertisement relay over pubsub via Lotus node as it now has been deprecated. (filecoin-project/lotus#12768
- During a network upgrade, log migration progress every 2 seconds so they are more helpful and informative. The
LOTUS_MIGRATE_PROGRESS_LOG_SECONDS
environment variable can be used to change this if needed. (filecoin-project/lotus#12732) - Add F3GetCertificate & F3GetLatestCertificate to the gateway. (filecoin-project/lotus#12778)
- Optimize ForEachClaim to return only eligible claims (filecoin-project/lotus#12770
Bug Fixes
- Make
EthTraceFilter
/trace_filter
skip null rounds instead of erroring. (filecoin-project/lotus#12702) - Event APIs (
GetActorEventsRaw
,SubscribeActorEventsRaw
,eth_getLogs
,eth_newFilter
, etc.) will now return an error when a request matches more thanMaxFilterResults
(default: 10,000) rather than silently truncating the results. Also apply an internal event matcher foreth_getLogs
(etc.) to avoid builtin actor events on database query so as not to include them inMaxFilterResults
calculation. (filecoin-project/lotus#12671) ChainIndexer#GetMsgInfo
returns anErrNotFound
when there are no rows. (filecoin-project/lotus#12680)- Gracefully handle EAM CreateAccount failures in
EthTraceBlock
(trace_block
) andEthTraceTransaction
(trace_transaction
) calls. (filecoin-project/lotus#12730) - Make f3 gen power command being non-deterministic (filecoin-project/lotus#12764)
📝 Changelog
For the set of changes since the last stable release:
- Node: v1.31.0...v1.32.0-rc2
- Miner: v1.31.0...miner/v1.32.0-rc2
👨👩👧👦 Contributors
Contributor | Commits | Lines ± | Files Changed |
---|---|---|---|
Masih H. Derkani | 17 | +2480/-1075 | 47 |
Krishang Shah | 1 | +3214/-117 | 66 |
Steven Allen | 4 | +1317/-1632 | 22 |
Rod Vagg | 13 | +1164/-307 | 56 |
Łukasz Magiera | 1 | +945/-467 | 31 |
Phi-rjan | 7 | +328/-323 | 35 |
Jakub Sztandera | 3 | +308/-12 | 7 |
Aryan Tikarya | 1 | +281/-2 | 5 |
Viraj Bhartiya | 1 | +29/-14 | 3 |
Phi | 1 | +9/-9 | 8 |
huajin tong | 1 | +6/-6 | 6 |
ZenGround0 | 1 | +9/-1 | 2 |
chuangjinglu | 1 | +3/-3 | 3 |
pinglanlu | 1 | +1/-1 | 1 |
Piotr Galar | 1 | +1/-1 | 1 |
v1.32.0-rc1
This is the first release candidate of the upcoming MANDATORY Lotus v1.32.0 release, which will deliver the Filecoin network version 25, codenamed “Teep” 🦵.
This release candidate sets the upgrade epoch for the calibration network to Epoch 2235454 - 2024-12-16T23:00:00Z. This should be the equivalent to:
- 15:00 in Los-Angeles
- 23:00 in London
- 07:00 in Beijing (NB: 2024-12-17 in CST)
You can follow this release issue for keeping up with the other expected release dates, epochs, and updates: (filecoin-project/lotus#12750)
Note
- This release candidate does NOT set the mainnet network upgrade epoch. It will be added in the final release (expected December 18th).
☢️ Upgrade Warnings ☢️
- If you are running the v1.30.x version of Lotus, please go through the Upgrade Warnings section for the v1.30.* releases and v1.31.* before upgrading to this release.
🏛️ Filecoin network version 25 FIPs
- FIP-0086: Fast Finality in Filecoin (F3)
📦 v16 Builtin Actor Bundle
This release candidate uses the v16.0.0-rc1
🚚 Migration
All node operators, including storage providers, should be aware that ONE pre-migration is being scheduled 120 epochs before the network upgrade. The migration for the NV25 upgrade is expected to be light with no heavy pre-migrations:
- Pre-Migration is expected to take less then 1 minute.
- The migration on the upgrade epoch is expected to take less than 30 seconds on a node with a NVMe-drive and a newer CPU. For nodes running on slower disks/CPU, it is still expected to take less then 1 minute.
We recommend node operators (who haven't enabled splitstore discard mode) that do not care about historical chain states, to prune the chain blockstore by syncing from a snapshot 1-2 days before the upgrade.
For certain node operators, such as full archival nodes or systems that need to keep large amounts of state (RPC providers), we recommend skipping the pre-migration and run the non-cached migration (i.e., just running the migration at the network upgrade epoch), and schedule for some additional downtime. Operators of such nodes can read the How to disable premigration in network upgrade tutorial.
New Features highlight
- Add Market PendingProposals API / CLI. (filecoin-project/lotus#12724)
Improvements
- The miner actor builtin
QAPowerForWeight
no longer accepts the unused "dealWeight" parameter, the function signature now only takes 3 arguments: sectorSize, sectorDuration, verifiedWeight. (filecoin-project/lotus#12445) - Fix checkpointed tipsets being expanded (filecoin-project/lotus#12747)
Bug Fixes
- Make
EthTraceFilter
/trace_filter
skip null rounds instead of erroring. (filecoin-project/lotus#12702) - Event APIs (
GetActorEventsRaw
,SubscribeActorEventsRaw
,eth_getLogs
,eth_newFilter
, etc.) will now return an error when a request matches more thanMaxFilterResults
(default: 10,000) rather than silently truncating the results. Also apply an internal event matcher foreth_getLogs
(etc.) to avoid builtin actor events on database query so as not to include them inMaxFilterResults
calculation. (filecoin-project/lotus#12671) ChainIndexer#GetMsgInfo
returns anErrNotFound
when there are no rows. (filecoin-project/lotus#12680)- Gracefully handle EAM CreateAccount failures in
EthTraceBlock
(trace_block
) andEthTraceTransaction
(trace_transaction
) calls. (filecoin-project/lotus#12730)
📝 Changelog
For the set of changes since the last stable release:
- Node: v1.31.0...v1.32.0-rc1
- Miner: v1.31.0...miner/v1.31.0-rc1
👨👩👧👦 Contributors
Contributor | Commits | Lines ± | Files Changed |
---|---|---|---|
Masih H. Derkani | 17 | +2480/-1075 | 47 |
Krishang Shah | 1 | +3214/-117 | 66 |
Steven Allen | 4 | +1317/-1632 | 22 |
Rod Vagg | 13 | +1164/-307 | 56 |
Łukasz Magiera | 1 | +945/-467 | 31 |
Phi-rjan | 7 | +328/-323 | 35 |
Jakub Sztandera | 3 | +308/-12 | 7 |
Aryan Tikarya | 1 | +281/-2 | 5 |
Viraj Bhartiya | 1 | +29/-14 | 3 |
Phi | 1 | +9/-9 | 8 |
huajin tong | 1 | +6/-6 | 6 |
ZenGround0 | 1 | +9/-1 | 2 |
chuangjinglu | 1 | +3/-3 | 3 |
pinglanlu | 1 | +1/-1 | 1 |
Piotr Galar | 1 | +1/-1 | 1 |
miner/v1.32.0-rc1
This is the first release candidate of the upcoming MANDATORY Lotus v1.32.0 release, which will deliver the Filecoin network version 25, codenamed “Teep” 🦵.
This release candidate sets the upgrade epoch for the calibration network to Epoch 2235454 - 2024-12-16T23:00:00Z. This should be the equivalent to:
- 15:00 in Los-Angeles
- 23:00 in London
- 07:00 in Beijing (NB: 2024-12-17 in CST)
You can follow this release issue for keeping up with the other expected release dates, epochs, and updates: (filecoin-project/lotus#12750)
Note
- This release candidate does NOT set the mainnet network upgrade epoch. It will be added in the final release (expected December 18th).
☢️ Upgrade Warnings ☢️
- If you are running the v1.30.x version of Lotus, please go through the Upgrade Warnings section for the v1.30.* releases and v1.31.* before upgrading to this release.
🏛️ Filecoin network version 25 FIPs
- FIP-0086: Fast Finality in Filecoin (F3)
📦 v16 Builtin Actor Bundle
This release candidate uses the v16.0.0-rc1
🚚 Migration
All node operators, including storage providers, should be aware that ONE pre-migration is being scheduled 120 epochs before the network upgrade. The migration for the NV25 upgrade is expected to be light with no heavy pre-migrations:
- Pre-Migration is expected to take less then 1 minute.
- The migration on the upgrade epoch is expected to take less than 30 seconds on a node with a NVMe-drive and a newer CPU. For nodes running on slower disks/CPU, it is still expected to take less then 1 minute.
We recommend node operators (who haven't enabled splitstore discard mode) that do not care about historical chain states, to prune the chain blockstore by syncing from a snapshot 1-2 days before the upgrade.
For certain node operators, such as full archival nodes or systems that need to keep large amounts of state (RPC providers), we recommend skipping the pre-migration and run the non-cached migration (i.e., just running the migration at the network upgrade epoch), and schedule for some additional downtime. Operators of such nodes can read the How to disable premigration in network upgrade tutorial.
New Features highlight
- Add Market PendingProposals API / CLI. (filecoin-project/lotus#12724)
Improvements
- The miner actor builtin
QAPowerForWeight
no longer accepts the unused "dealWeight" parameter, the function signature now only takes 3 arguments: sectorSize, sectorDuration, verifiedWeight. (filecoin-project/lotus#12445) - Fix checkpointed tipsets being expanded (filecoin-project/lotus#12747)
Bug Fixes
- Make
EthTraceFilter
/trace_filter
skip null rounds instead of erroring. (filecoin-project/lotus#12702) - Event APIs (
GetActorEventsRaw
,SubscribeActorEventsRaw
,eth_getLogs
,eth_newFilter
, etc.) will now return an error when a request matches more thanMaxFilterResults
(default: 10,000) rather than silently truncating the results. Also apply an internal event matcher foreth_getLogs
(etc.) to avoid builtin actor events on database query so as not to include them inMaxFilterResults
calculation. (filecoin-project/lotus#12671) ChainIndexer#GetMsgInfo
returns anErrNotFound
when there are no rows. (filecoin-project/lotus#12680)- Gracefully handle EAM CreateAccount failures in
EthTraceBlock
(trace_block
) andEthTraceTransaction
(trace_transaction
) calls. (filecoin-project/lotus#12730)
📝 Changelog
For the set of changes since the last stable release:
- Node: v1.31.0...v1.32.0-rc1
- Miner: v1.31.0...miner/v1.31.0-rc1
👨👩👧👦 Contributors
Contributor | Commits | Lines ± | Files Changed |
---|---|---|---|
Masih H. Derkani | 17 | +2480/-1075 | 47 |
Krishang Shah | 1 | +3214/-117 | 66 |
Steven Allen | 4 | +1317/-1632 | 22 |
Rod Vagg | 13 | +1164/-307 | 56 |
Łukasz Magiera | 1 | +945/-467 | 31 |
Phi-rjan | 7 | +328/-323 | 35 |
Jakub Sztandera | 3 | +308/-12 | 7 |
Aryan Tikarya | 1 | +281/-2 | 5 |
Viraj Bhartiya | 1 | +29/-14 | 3 |
Phi | 1 | +9/-9 | 8 |
huajin tong | 1 | +6/-6 | 6 |
ZenGround0 | 1 | +9/-1 | 2 |
chuangjinglu | 1 | +3/-3 | 3 |
pinglanlu | 1 | +1/-1 | 1 |
Piotr Galar | 1 | +1/-1 | 1 |
v1.31.0
The Lotus v1.31.0 release introduces the new ChainIndexer
subsystem, enhancing the indexing of Filecoin chain state for improved RPC performance. Several bug fixes in the block production loop are also included. Please review the upgrade warnings and documentation for any important changes affecting RPC providers, node operators and storage providers.
☢️ Upgrade Warnings ☢️
- The introduction of the new
ChainIndexer
subsystem replaces the existingMsgIndex
,EthTxHashLookup
, andEventIndex
implementations. This change may affect RPC providers and node operators who use or expose Ethereum and/or events APIs. It is crucial to review the ChainIndexer documentation for operators to understand how to enable, configure, and use the new Indexer.
⭐ New Feature Highlights:
- New ChainIndexer subsystem to index Filecoin chain state such as tipsets, messages, events and ETH transactions for accurate and faster RPC responses. The
ChainIndexer
replaces the existingMsgIndex
,EthTxHashLookup
andEventIndex
implementations in Lotus, which suffer from a multitude of known problems. If you are an RPC provider or a node operator who uses or exposes Ethereum and/or events APIs, please refer to the ChainIndexer documentation for operators for information on how to enable, configure and use the new Indexer. While there is no automated data migration and one can upgrade and downgrade without backups, there are manual steps that need to be taken to backfill data when upgrading to this Lotus version, or downgrading to the previous version without ChainIndexer. Please be aware that that this feature removes some options in the Lotus configuration file, if these have been set, Lotus will report an error when starting. See the documentation for more information lotus chain head
now supports a--height
flag to print just the epoch number of the current chain head (filecoin-project/lotus#12609)- Implement
EthGetTransactionByBlockNumberAndIndex
(eth_getTransactionByBlockNumberAndIndex
) andEthGetTransactionByBlockHashAndIndex
(eth_getTransactionByBlockHashAndIndex
) methods. (filecoin-project/lotus#12618) lotus-shed indexes inspect-indexes
now performs a comprehensive comparison of the event index data for each message by comparing the AMT root CID from the message receipt with the root of a reconstructed AMT. Previouslyinspect-indexes
simply compared event counts. Comparing AMT roots instead confirms all the event data is byte-perfect. (filecoin-project/lotus#12570)- Return a "data" field on the "error" returned from RPC when
eth_call
andeth_estimateGas
APIs encounterexecution reverted
errors. This is a standard expectation of Ethereum RPC tooling and may improve compatibility in some cases. (filecoin-project/lotus#12553) - Improve ETH-filter performance for nodes serving many clients. (filecoin-project/lotus#12603)
- Implement F3 utility CLIs to list the power table for a given instance and sum the proportional power of a set of actors that participate in a given instance. (filecoin-project/lotus#12698)
🐛 Bug Fix Highlights
- Add logic to check if the miner's owner address is delegated (f4 address). If it is delegated, the
lotus-shed sectors termination-estimate
command now sends the termination state call using the worker ID. This fix resolves the issue where termination-estimate did not function correctly for miners with delegated owner addresses. (filecoin-project/lotus#12569) - The Lotus Miner will now always mine on the latest chain head returned by lotus, even if that head has less "weight" than the previously seen head. This is necessary because F3 may end up finalizing a tipset with a lower weight, although this situation should be rare on the Filecoin mainnet. (filecoin-project/lotus#12659) and (filecoin-project/lotus#12690)
- Make the ordering of event output for
eth_
APIs andGetActorEventsRaw
consistent, sorting ascending on: epoch, message index, event index and original event entry order. (filecoin-project/lotus#12623) - Return a consistent error when encountering null rounds in ETH RPC method calls. (filecoin-project/lotus#12655)
- Correct erroneous sector QAP-calculation upon sector extension in lotus-miner cli. (filecoin-project/lotus#12698)
📝 Changelog
For the full set of changes since the last stable release:
- Node: v1.30.0...v1.31.0
- Miner: v1.30.0...miner/v1.31.0
👨👩👧👦 Contributors
Contributor | Commits | Lines ± | Files Changed |
---|---|---|---|
Aarsh Shah | 2 | +6725/-5410 | 84 |
Masih H. Derkani | 13 | +1924/-867 | 61 |
Viraj Bhartiya | 6 | +2048/-703 | 41 |
Steven Allen | 25 | +1394/-404 | 53 |
Rod Vagg | 13 | +502/-272 | 39 |
Phi-rjan | 8 | +175/-64 | 20 |
Jakub Sztandera | 7 | +107/-66 | 15 |
aarshkshah1992 | 1 | +61/-30 | 5 |
Steve Loeppky | 1 | +78/-2 | 4 |
Krishang Shah | 1 | +7/-17 | 1 |
Łukasz Magiera | 1 | +9/-10 | 3 |
Phi | 1 | +9/-9 | 8 |
Danial Ahn | 1 | +14/-1 | 2 |
hanabi1224 | 1 | +7/-6 | 1 |
web3-bot | 1 | +1/-1 | 1 |
asamuj | 1 | +1/-1 | 1 |
Andrew Jackson (Ajax) | 1 | +2/-0 | 1 |
miner/v1.31.0
The Lotus v1.31.0 release introduces the new ChainIndexer
subsystem, enhancing the indexing of Filecoin chain state for improved RPC performance. Several bug fixes in the block production loop are also included. Please review the upgrade warnings and documentation for any important changes affecting RPC providers, node operators and storage providers.
☢️ Upgrade Warnings ☢️
- The introduction of the new
ChainIndexer
subsystem replaces the existingMsgIndex
,EthTxHashLookup
, andEventIndex
implementations. This change may affect RPC providers and node operators who use or expose Ethereum and/or events APIs. It is crucial to review the ChainIndexer documentation for operators to understand how to enable, configure, and use the new Indexer.
⭐ New Feature Highlights:
- New ChainIndexer subsystem to index Filecoin chain state such as tipsets, messages, events and ETH transactions for accurate and faster RPC responses. The
ChainIndexer
replaces the existingMsgIndex
,EthTxHashLookup
andEventIndex
implementations in Lotus, which suffer from a multitude of known problems. If you are an RPC provider or a node operator who uses or exposes Ethereum and/or events APIs, please refer to the ChainIndexer documentation for operators for information on how to enable, configure and use the new Indexer. While there is no automated data migration and one can upgrade and downgrade without backups, there are manual steps that need to be taken to backfill data when upgrading to this Lotus version, or downgrading to the previous version without ChainIndexer. Please be aware that that this feature removes some options in the Lotus configuration file, if these have been set, Lotus will report an error when starting. See the documentation for more information lotus chain head
now supports a--height
flag to print just the epoch number of the current chain head (filecoin-project/lotus#12609)- Implement
EthGetTransactionByBlockNumberAndIndex
(eth_getTransactionByBlockNumberAndIndex
) andEthGetTransactionByBlockHashAndIndex
(eth_getTransactionByBlockHashAndIndex
) methods. (filecoin-project/lotus#12618) lotus-shed indexes inspect-indexes
now performs a comprehensive comparison of the event index data for each message by comparing the AMT root CID from the message receipt with the root of a reconstructed AMT. Previouslyinspect-indexes
simply compared event counts. Comparing AMT roots instead confirms all the event data is byte-perfect. (filecoin-project/lotus#12570)- Return a "data" field on the "error" returned from RPC when
eth_call
andeth_estimateGas
APIs encounterexecution reverted
errors. This is a standard expectation of Ethereum RPC tooling and may improve compatibility in some cases. (filecoin-project/lotus#12553) - Improve ETH-filter performance for nodes serving many clients. (filecoin-project/lotus#12603)
- Implement F3 utility CLIs to list the power table for a given instance and sum the proportional power of a set of actors that participate in a given instance. (filecoin-project/lotus#12698)
🐛 Bug Fix Highlights
- Add logic to check if the miner's owner address is delegated (f4 address). If it is delegated, the
lotus-shed sectors termination-estimate
command now sends the termination state call using the worker ID. This fix resolves the issue where termination-estimate did not function correctly for miners with delegated owner addresses. (filecoin-project/lotus#12569) - The Lotus Miner will now always mine on the latest chain head returned by lotus, even if that head has less "weight" than the previously seen head. This is necessary because F3 may end up finalizing a tipset with a lower weight, although this situation should be rare on the Filecoin mainnet. (filecoin-project/lotus#12659) and (filecoin-project/lotus#12690)
- Make the ordering of event output for
eth_
APIs andGetActorEventsRaw
consistent, sorting ascending on: epoch, message index, event index and original event entry order. (filecoin-project/lotus#12623) - Return a consistent error when encountering null rounds in ETH RPC method calls. (filecoin-project/lotus#12655)
- Correct erroneous sector QAP-calculation upon sector extension in lotus-miner cli. (filecoin-project/lotus#12698)
📝 Changelog
For the full set of changes since the last stable release:
- Node: v1.30.0...v1.31.0
- Miner: v1.30.0...miner/v1.31.0
👨👩👧👦 Contributors
Contributor | Commits | Lines ± | Files Changed |
---|---|---|---|
Aarsh Shah | 2 | +6725/-5410 | 84 |
Masih H. Derkani | 13 | +1924/-867 | 61 |
Viraj Bhartiya | 6 | +2048/-703 | 41 |
Steven Allen | 25 | +1394/-404 | 53 |
Rod Vagg | 13 | +502/-272 | 39 |
Phi-rjan | 8 | +175/-64 | 20 |
Jakub Sztandera | 7 | +107/-66 | 15 |
aarshkshah1992 | 1 | +61/-30 | 5 |
Steve Loeppky | 1 | +78/-2 | 4 |
Krishang Shah | 1 | +7/-17 | 1 |
Łukasz Magiera | 1 | +9/-10 | 3 |
Phi | 1 | +9/-9 | 8 |
Danial Ahn | 1 | +14/-1 | 2 |
hanabi1224 | 1 | +7/-6 | 1 |
web3-bot | 1 | +1/-1 | 1 |
asamuj | 1 | +1/-1 | 1 |
Andrew Jackson (Ajax) | 1 | +2/-0 | 1 |
v1.31.0-rc1
This Lotus release candidate introduces the new ChainIndexer
subsystem, enhancing the indexing of Filecoin chain state for improved RPC performance. Several bug fixes in the block production loop are also included. Please review the upgrade warnings and documentation for any important changes affecting RPC providers, node operators and storage providers.
☢️ Upgrade Warnings ☢️
- The introduction of the new
ChainIndexer
subsystem replaces the existingMsgIndex
,EthTxHashLookup
, andEventIndex
implementations. This change may affect RPC providers and node operators who use or expose Ethereum and/or events APIs. It is crucial to review the ChainIndexer documentation for operators to understand how to enable, configure, and use the new Indexer.
⭐ New Feature Highlights:
- New ChainIndexer subsystem to index Filecoin chain state such as tipsets, messages, events and ETH transactions for accurate and faster RPC responses. The
ChainIndexer
replaces the existingMsgIndex
,EthTxHashLookup
andEventIndex
implementations in Lotus, which suffer from a multitude of known problems. If you are an RPC provider or a node operator who uses or exposes Ethereum and/or events APIs, please refer to the ChainIndexer documentation for operators for information on how to enable, configure and use the new Indexer. While there is no automated data migration and one can upgrade and downgrade without backups, there are manual steps that need to be taken to backfill data when upgrading to this Lotus version, or downgrading to the previous version without ChainIndexer. Please be aware that that this feature removes some options in the Lotus configuration file, if these have been set, Lotus will report an error when starting. See the documentation for more information lotus chain head
now supports a--height
flag to print just the epoch number of the current chain head (filecoin-project/lotus#12609)- Implement
EthGetTransactionByBlockNumberAndIndex
(eth_getTransactionByBlockNumberAndIndex
) andEthGetTransactionByBlockHashAndIndex
(eth_getTransactionByBlockHashAndIndex
) methods. (filecoin-project/lotus#12618) lotus-shed indexes inspect-indexes
now performs a comprehensive comparison of the event index data for each message by comparing the AMT root CID from the message receipt with the root of a reconstructed AMT. Previouslyinspect-indexes
simply compared event counts. Comparing AMT roots instead confirms all the event data is byte-perfect. (filecoin-project/lotus#12570)- Reduce size of embedded genesis CAR files by removing WASM actor blocks and compressing with zstd. This reduces the
lotus
binary size by approximately 10 MiB. (filecoin-project/lotus#12439)
🐛 Bug Fix Highlights
- Add logic to check if the miner's owner address is delegated (f4 address). If it is delegated, the
lotus-shed sectors termination-estimate
command now sends the termination state call using the worker ID. This fix resolves the issue where termination-estimate did not function correctly for miners with delegated owner addresses. (filecoin-project/lotus#12569) - The mining loop will now correctly "stick" to the same upstream lotus node for all operations pertaining to mining a single block (filecoin-project/lotus#12665).
- The Lotus Miner will now always mine on the latest chain head returned by lotus, even if that head has less "weight" than the previously seen head. This is necessary because F3 may end up finalizing a tipset with a lower weight, although this situation should be rare on the Filecoin mainnet. (filecoin-project/lotus#12659)
- Make the ordering of event output for
eth_
APIs andGetActorEventsRaw
consistent, sorting ascending on: epoch, message index, event index and original event entry order. (filecoin-project/lotus#12623) - Event APIs (Eth events and actor events) should only return reverted events if client queries by specific block hash / tipset. Eth and actor event subscription APIs should always return reverted events to enable accurate observation of real-time changes. (filecoin-project/lotus#12585)
- Fix a bug in the
lotus-shed indexes backfill-events
command that may result in either duplicate events being backfilled where there are existing events (such an operation should be idempotent) or events erroneously having duplicatelogIndex
values when queried via ETH APIs. (filecoin-project/lotus#12567)
📝 Changelog
For the full set of changes since the last stable release:
- Node: v1.30.0...v1.31.0-rc1
- Miner: v1.30.0...miner/v1.31.0-rc1
👨👩👧👦 Contributors
Contributor | Commits | Lines ± | Files Changed |
---|---|---|---|
Aarsh Shah | 2 | +6725/-5410 | 84 |
Masih H. Derkani | 13 | +1924/-867 | 61 |
Viraj Bhartiya | 6 | +2048/-703 | 41 |
Steven Allen | 25 | +1394/-404 | 53 |
Rod Vagg | 13 | +502/-272 | 39 |
Phi-rjan | 8 | +175/-64 | 20 |
Jakub Sztandera | 7 | +107/-66 | 15 |
aarshkshah1992 | 1 | +61/-30 | 5 |
Steve Loeppky | 1 | +78/-2 | 4 |
Krishang Shah | 1 | +7/-17 | 1 |
Łukasz Magiera | 1 | +9/-10 | 3 |
Phi | 1 | +9/-9 | 8 |
Danial Ahn | 1 | +14/-1 | 2 |
hanabi1224 | 1 | +7/-6 | 1 |
web3-bot | 1 | +1/-1 | 1 |
asamuj | 1 | +1/-1 | 1 |
Andrew Jackson (Ajax) | 1 | +2/-0 | 1 |
miner/v1.31.0-rc1
This Lotus release candidate introduces the new ChainIndexer
subsystem, enhancing the indexing of Filecoin chain state for improved RPC performance. Several bug fixes in the block production loop are also included. Please review the upgrade warnings and documentation for any important changes affecting RPC providers, node operators and storage providers.
☢️ Upgrade Warnings ☢️
- The introduction of the new
ChainIndexer
subsystem replaces the existingMsgIndex
,EthTxHashLookup
, andEventIndex
implementations. This change may affect RPC providers and node operators who use or expose Ethereum and/or events APIs. It is crucial to review the ChainIndexer documentation for operators to understand how to enable, configure, and use the new Indexer.
⭐ New Feature Highlights:
- New ChainIndexer subsystem to index Filecoin chain state such as tipsets, messages, events and ETH transactions for accurate and faster RPC responses. The
ChainIndexer
replaces the existingMsgIndex
,EthTxHashLookup
andEventIndex
implementations in Lotus, which suffer from a multitude of known problems. If you are an RPC provider or a node operator who uses or exposes Ethereum and/or events APIs, please refer to the ChainIndexer documentation for operators for information on how to enable, configure and use the new Indexer. While there is no automated data migration and one can upgrade and downgrade without backups, there are manual steps that need to be taken to backfill data when upgrading to this Lotus version, or downgrading to the previous version without ChainIndexer. Please be aware that that this feature removes some options in the Lotus configuration file, if these have been set, Lotus will report an error when starting. See the documentation for more information lotus chain head
now supports a--height
flag to print just the epoch number of the current chain head (filecoin-project/lotus#12609)- Implement
EthGetTransactionByBlockNumberAndIndex
(eth_getTransactionByBlockNumberAndIndex
) andEthGetTransactionByBlockHashAndIndex
(eth_getTransactionByBlockHashAndIndex
) methods. (filecoin-project/lotus#12618) lotus-shed indexes inspect-indexes
now performs a comprehensive comparison of the event index data for each message by comparing the AMT root CID from the message receipt with the root of a reconstructed AMT. Previouslyinspect-indexes
simply compared event counts. Comparing AMT roots instead confirms all the event data is byte-perfect. (filecoin-project/lotus#12570)- Reduce size of embedded genesis CAR files by removing WASM actor blocks and compressing with zstd. This reduces the
lotus
binary size by approximately 10 MiB. (filecoin-project/lotus#12439)
🐛 Bug Fix Highlights
- Add logic to check if the miner's owner address is delegated (f4 address). If it is delegated, the
lotus-shed sectors termination-estimate
command now sends the termination state call using the worker ID. This fix resolves the issue where termination-estimate did not function correctly for miners with delegated owner addresses. (filecoin-project/lotus#12569) - The mining loop will now correctly "stick" to the same upstream lotus node for all operations pertaining to mining a single block (filecoin-project/lotus#12665).
- The Lotus Miner will now always mine on the latest chain head returned by lotus, even if that head has less "weight" than the previously seen head. This is necessary because F3 may end up finalizing a tipset with a lower weight, although this situation should be rare on the Filecoin mainnet. (filecoin-project/lotus#12659)
- Make the ordering of event output for
eth_
APIs andGetActorEventsRaw
consistent, sorting ascending on: epoch, message index, event index and original event entry order. (filecoin-project/lotus#12623) - Event APIs (Eth events and actor events) should only return reverted events if client queries by specific block hash / tipset. Eth and actor event subscription APIs should always return reverted events to enable accurate observation of real-time changes. (filecoin-project/lotus#12585)
- Fix a bug in the
lotus-shed indexes backfill-events
command that may result in either duplicate events being backfilled where there are existing events (such an operation should be idempotent) or events erroneously having duplicatelogIndex
values when queried via ETH APIs. (filecoin-project/lotus#12567)
📝 Changelog
For the full set of changes since the last stable release:
- Node: v1.30.0...v1.31.0-rc1
- Miner: v1.30.0...miner/v1.31.0-rc1
👨👩👧👦 Contributors
Contributor | Commits | Lines ± | Files Changed |
---|---|---|---|
Aarsh Shah | 2 | +6725/-5410 | 84 |
Masih H. Derkani | 13 | +1924/-867 | 61 |
Viraj Bhartiya | 6 | +2048/-703 | 41 |
Steven Allen | 25 | +1394/-404 | 53 |
Rod Vagg | 13 | +502/-272 | 39 |
Phi-rjan | 8 | +175/-64 | 20 |
Jakub Sztandera | 7 | +107/-66 | 15 |
aarshkshah1992 | 1 | +61/-30 | 5 |
Steve Loeppky | 1 | +78/-2 | 4 |
Krishang Shah | 1 | +7/-17 | 1 |
Łukasz Magiera | 1 | +9/-10 | 3 |
Phi | 1 | +9/-9 | 8 |
Danial Ahn | 1 | +14/-1 | 2 |
hanabi1224 | 1 | +7/-6 | 1 |
web3-bot | 1 | +1/-1 | 1 |
asamuj | 1 | +1/-1 | 1 |
Andrew Jackson (Ajax) | 1 | +2/-0 | 1 |