Note: for discussion about this release, please comment here
This is a highly recommended but optional Lotus v1.11.1 release that introduces many deal making and datastore improvements and new features along with other bug fixes.
Highlights
- ⭐️⭐️⭐️lotus-miner market subsystem is introduced in this release! It is highly recommended for storage providers to run markets processes on a separate machine! Doing so, only this machine needs to expose public ports for deal making. This also means that the other miner operations can now be completely isolated from the deal making processes and storage providers can stop and restarts the markets process without affecting an ongoing Winning/Window PoSt!
- More details on the concepts, architecture and how to split the market process can be found here.
- Base on your system setup(running on separate machines, same machine and so on), please see the suggested practice by community members here.
- Note: if you are running lotus-worker on a different machine, you will need to set
MARKETS_API_INFO
for certain CLI to work properly. This will be improved by #7072.
- Note: if you are running lotus-worker on a different machine, you will need to set
- Huge thanks to MinerX fellows for helping testing the implementation, reporting the issues so they were fixed by now and providing feedbacks to user docs in the past three weeks!
- Config for collateral from miner available balance (filecoin-project/lotus#6629)
- Better control your sector collateral payment by setting
CollateralFromMinerBalance
,AvailableBalanceBuffer
andDisableCollateralFallback
.CollateralFromMinerBalance
: whether to use available miner balance for sector collateral instead of sending it with each message, default isfalse
.AvailableBalanceBuffer
: minimum available balance to keep in the miner actor before sending it with messages, default is 0FIL.DisableCollateralFallback
: whether to send collateral with messages even if there is no available balance in the miner actor, default isfalse
.
- Better control your sector collateral payment by setting
- Config for deal publishing control addresses (filecoin-project/lotus#6697)
- Set
DealPublishControl
to set the wallet used for sendingPublishStorageDeals
messages, instructions here.
- Set
- Config UX improvements (filecoin-project/lotus#6848)
- You can now preview the the default and updated node config by running
lotus/lotus-miner config default/updated
- You can now preview the the default and updated node config by running
New Features
- ⭐️⭐️⭐️ Support standalone miner-market process (filecoin-project/lotus#6356)
- ⭐️⭐️ Experimental Splitstore (more details coming in v1.11.2! Stay tuned! Join the discussion here if you have questions!) :
- Improve splitstore warmup (filecoin-project/lotus#6867)
- Moving GC for badger (filecoin-project/lotus#6854)
- splitstore shed utils (filecoin-project/lotus#6811)
- fix warmup by decoupling state from message receipt walk (filecoin-project/lotus#6841)
- Splitstore: support on-disk marksets using badger (filecoin-project/lotus#6833)
- cache loaded block messages (filecoin-project/lotus#6760)
- Splitstore: add retention policy option for keeping messages in the hotstore (filecoin-project/lotus#6775)
- Introduce the LOTUS_CHAIN_BADGERSTORE_DISABLE_FSYNC envvar (filecoin-project/lotus#6817)
- Splitstore: add support for protecting out of chain references in the blockstore (filecoin-project/lotus#6777)
- Implement exposed splitstore (filecoin-project/lotus#6762)
- Splitstore code reorg (filecoin-project/lotus#6756)
- Splitstore: Some small fixes (filecoin-project/lotus#6754)
- Splitstore Enhanchements (filecoin-project/lotus#6474)
- lotus-shed: initial export cmd for markets related metadata (filecoin-project/lotus#6840)
- add a very verbose -vv flag to lotus and lotus-miner. (filecoin-project/lotus#6888)
- Add allocated sectorid vis (filecoin-project/lotus#4638)
- add a command for compacting sector numbers bitfield (filecoin-project/lotus#4640)
- Run
lotus-miner actor compact-allocated
to compact sector number allocations to reduce the size of the allocated sector number bitfield.
- Run
- Add ChainGetMessagesInTipset API (filecoin-project/lotus#6642)
- Handle the --color flag via proper global state (filecoin-project/lotus#6743)
- Enable color by default only if os.Stdout is a TTY (filecoin-project/lotus#6696)
- Stop outputing ANSI color on non-TTY (filecoin-project/lotus#6694)
- Envvar to disable slash filter (filecoin-project/lotus#6620)
- commit batch: AggregateAboveBaseFee config (filecoin-project/lotus#6650)
- shed tool to estimate aggregate network fees (filecoin-project/lotus#6631)
Bug Fixes
- Fix padding of deals, which only partially shipped in #5988 (filecoin-project/lotus#6683)
- fix deal concurrency test failures by upgrading graphsync and others (filecoin-project/lotus#6724)
- fix: on randomness change, use new rand (filecoin-project/lotus#6805) - fix: always check if StateSearchMessage returns nil (filecoin-project/lotus#6802)
- test: fix flaky window post tests (filecoin-project/lotus#6804)
- wrap close(wait) with sync.Once to avoid panic (filecoin-project/lotus#6800)
- fixes #6786 segfault (filecoin-project/lotus#6787)
- ClientRetrieve stops on cancel(filecoin-project/lotus#6739)
- Fix bugs in sectors extend --v1-sectors (filecoin-project/lotus#6066)
- fix "lotus-seed genesis car" error "merkledag: not found" (filecoin-project/lotus#6688)
- Get retrieval pricing input should not error out on a deal state fetch (filecoin-project/lotus#6679)
- Fix more CID double-encoding as hex (filecoin-project/lotus#6680)
- storage: Fix FinalizeSector with sectors in stoage paths (filecoin-project/lotus#6653)
- Fix tiny error in check-client-datacap (filecoin-project/lotus#6664)
- Fix: precommit_batch method used the wrong cfg.CommitBatchWait (filecoin-project/lotus#6658)
- fix ticket expiration check (filecoin-project/lotus#6635)
- remove precommit check in handleCommitFailed (filecoin-project/lotus#6634)
- fix prove commit aggregate send token amount (filecoin-project/lotus#6625)
Improvements
- Eliminate inefficiency in markets logging (filecoin-project/lotus#6895)
- rename
cmd/lotus{-storage=>}-miner
to match binary. (filecoin-project/lotus#6886) - fix racy TestSimultanenousTransferLimit. (filecoin-project/lotus#6862)
- ValidateBlock: Assert that block header height's are greater than parents (filecoin-project/lotus#6872)
- feat: Don't panic when api impl is nil (filecoin-project/lotus#6857)
- add docker-compose file (filecoin-project/lotus#6544)
- easy way to make install app (filecoin-project/lotus#5183)
- api: Separate the Net interface from Common (filecoin-project/lotus#6627) - add StateReadState to gateway api (filecoin-project/lotus#6818)
- add SealProof in SectorBuilder (filecoin-project/lotus#6815)
- sealing: Handle preCommitParams errors more correctly (filecoin-project/lotus#6763)
- ClientFindData: always fetch peer id from chain (filecoin-project/lotus#6807)
- test: handle null blocks in TestForkRefuseCall (filecoin-project/lotus#6758)
- Add more deal details to lotus-miner info (filecoin-project/lotus#6708)
- add election backtest (filecoin-project/lotus#5950)
- add dollar sign (filecoin-project/lotus#6690)
- get-actor cli spelling fix (filecoin-project/lotus#6681)
- polish(statetree): accept a context in statetree diff for timeouts (filecoin-project/lotus#6639)
- Add helptext to lotus chain export (filecoin-project/lotus#6672)
- add an incremental nonce itest. (filecoin-project/lotus#6663)
- commit batch: Initialize the FailedSectors map (filecoin-project/lotus#6647)
- Fast-path retry submitting commit aggregate if commit is still valid (filecoin-project/lotus#6638)
- Reuse timers in sealing batch logic (filecoin-project/lotus#6636)
Dependency Updates
- Update to proof v8.0.3 (filecoin-project/lotus#6890)
- update to go-fil-market v1.6.0 (filecoin-project/lotus#6885)
- Bump go-multihash, adjust test for supported version (filecoin-project/lotus#6674)
- github.com/filecoin-project/go-data-transfer (v1.6.0 -> v1.7.2):
- github.com/filecoin-project/go-fil-markets (v1.5.0 -> v1.6.2):
- github.com/filecoin-project/go-padreader (v0.0.0-20200903213702-ed5fae088b20 -> v0.0.0-20210723183308-812a16dc01b1)
- github.com/filecoin-project/go-state-types (v0.1.1-0.20210506134452-99b279731c48 -> v0.1.1-0.20210810190654-139e0e79e69e)
- github.com/filecoin-project/go-statemachine (v0.0.0-20200925024713-05bd7c71fbfe -> v1.0.1)
- update go-libp2p-pubsub to v0.5.0 (filecoin-project/lotus#6764)
Others
- Master->v1.11.1 (filecoin-project/lotus#7051)
- v1.11.1-rc2 (filecoin-project/lotus#6966)
- Backport master -> v1.11.1 (filecoin-project/lotus#6965)
- Fixes in master -> release (filecoin-project/lotus#6933)
- Add changelog for v1.11.1-rc1 and bump the version (filecoin-project/lotus#6900)
- Fix merge release -> v1.11.1 (filecoin-project/lotus#6897)
- Update RELEASE_ISSUE_TEMPLATE.md (filecoin-project/lotus#6880)
- Add github actions for staled pr (filecoin-project/lotus#6879)
- Update issue templates and add templates for M1 (filecoin-project/lotus#6856)
- Fix links in issue templates
- Update issue templates to forms (filecoin-project/lotus#6798
- Nerpa v13 upgrade (filecoin-project/lotus#6837)
- add docker-compose file (filecoin-project/lotus#6544)
- release -> master (filecoin-project/lotus#6828)
- Resurrect CODEOWNERS, but for maintainers group (filecoin-project/lotus#6773)
- Master disclaimer (filecoin-project/lotus#6757)
- Create stale.yml (filecoin-project/lotus#6747)
- Release template: Update all testnet infra at once (filecoin-project/lotus#6710)
- Release Template: remove binary validation step (filecoin-project/lotus#6709)
- Reset of the interop network (filecoin-project/lotus#6689)
- Update version.go to 1.11.1 (filecoin-project/lotus#6621)
Contributors
Contributor | Commits | Lines ± | Files Changed |
---|---|---|---|
@vyzo | 313 | +8928/-6010 | 415 |
@nonsense | 103 | +6041/-4041 | 304 |
@magik6k | 37 | +3851/-1611 | 146 |
@ZenGround0 | 24 | +1693/-1394 | 95 |
@placer14 | 1 | +2310/-578 | 8 |
@dirkmc | 7 | +1154/-726 | 29 |
@raulk | 44 | +969/-616 | 141 |
@jennijuju | 15 | +682/-354 | 47 |
@ribasushi | 18 | +469/-273 | 64 |
@coryschwartz | 5 | +576/-135 | 14 |
@hunjixin | 7 | +404/-82 | 19 |
@dirkmc | 17 | +348/-47 | 17 |
@tchardin | 2 | +262/-34 | 5 |
@aarshkshah1992 | 9 | +233/-63 | 44 |
@Kubuxu | 4 | +254/-16 | 4 |
@hannahhoward | 6 | +163/-75 | 8 |
@whyrusleeping | 4 | +157/-16 | 9 |
@whyrusleeping | 2 | +87/-66 | 10 |
@arajasek | 10 | +81/-53 | 13 |
@zgfzgf | 2 | +104/-4 | 2 |
@aarshkshah1992 | 6 | +85/-19 | 10 |
@llifezou | 4 | +59/-20 | 4 |
@Stebalien | 7 | +47/-17 | 9 |
@johnli-helloworld | 3 | +46/-15 | 5 |
@frrist | 1 | +28/-23 | 2 |
@hannahhoward | 4 | +46/-5 | 11 |
@jennifer | 4 | +31/-2 | 4 |
@wangchao | 1 | +1/-27 | 1 |
@jennijuju | 2 | +7/-21 | 2 |
@chadwick2143 | 1 | +15/-1 | 1 |
@jerry | 2 | +9/-4 | 2 |
Steve Loeppky | 2 | +12/-0 | 2 |
David Dias | 1 | +9/-0 | 1 |
dependabot[bot] | 1 | +3/-3 | 1 |
zhoutian527 | 1 | +2/-2 | 1 |
xloem | 1 | +4/-0 | 1 |
@travisperson | 2 | +2/-2 | 3 |
Liviu Damian | 2 | +2/-2 | 2 |
@jimpick | 2 | +2/-2 | 2 |
Frank | 1 | +3/-0 | 1 |
turuslan | 1 | +1/-1 | 1 |
Kirk Baird | 1 | +0/-0 | 1 |