327760acff
* chore: update ffi to increase execution parallelism * Don't enforce walking receipt tree during compaction * fix: build: drop drand incentinet servers * chore: release lotus v1.20.4 * Apply suggestions from code review Co-authored-by: Jiaying Wang <42981373+jennijuju@users.noreply.github.com> * feat: Introduce nv19 skeleton Update to go-state-types v0.11.0-alpha-1 Introduce dummy v11 actor bundles Make new actors adapters Add upgrade to Upgrade Schedules make jen Update to go-state-types v0.11.0-alpha-2 * feat: vm: switch to the new exec trace format (#10372) This is now "FVM" native. Changes include: 1. Don't treat "trace" messages like off-chain messages. E.g., don't include CIDs, versions, etc. 2. Include IPLD codecs where applicable. 3. Remove fields that aren't filled by the FVM (timing, some errors, code locations, etc.). * feat: implement FIP-0061 * Address review * Add and test the FIP-0061 migration * Update actors bundles to fip/20230406 * Update to go-state-types master * Update to actors v11.0.0-rc1 * - Update go state types - Keep current expiration defaults on creation, extension some tests - Update ffi * ffi experiment * Integration nv19 migration - Open splitstore in migration shed tool - Update state root version * Post rebase fixup * Fix * gen * nv19 invariant checking * Try fixig blockstore so bundle is loaded * Debug * Fix * Make butterfly upgrades happen * Another ffi experiment * Fix copy paste error * Actually schedule migration (#10656) Co-authored-by: zenground0 <ZenGround0@users.noreply.github.com> * Butterfly artifacts * Set calibration net upgrade height * Review Response * Fix state tree version assert * Quick butterfly upgrade to sanity check (#10660) * Quick butterfly upgrade to sanity check * Update butterfly artifacts * Revert fake fix * Give butterfly net correct genesis * Butterfly artifacts * Give time before upgrade --------- Co-authored-by: zenground0 <ZenGround0@users.noreply.github.com> * chore:releasepolish v1.22 release (#10666) * Update butterfly artifacts * register actors v11 * Update calibration upgrade time * State inspection shed cmds * Fix * make gen * Fix swallowed errors * Lint fixup --------- Co-authored-by: zenground0 <ZenGround0@users.noreply.github.com> * v1.22.0-rc3 * bundle fix * Feat/expedite nv19 (#10681) * Update go-state-types * Modify upgrade schedule and params * Revert fip 0052 * Update gst * docsgen * fast butterfly migration to validate migration * Correct epoch to match specified date * Update actors v11 * Update changelog build version * Update butterfly artifacts * Fix lotus-miner init to work after upgrade --------- Co-authored-by: zenground0 <ZenGround0@users.noreply.github.com> * fix:deps:stable ffi for stable release (#10698) * Point to stable ffi for stable lotus release * go mod tidy --------- Co-authored-by: zenground0 <ZenGround0@users.noreply.github.com> * Update CHANGELOG.md Co-authored-by: Jiaying Wang <42981373+jennijuju@users.noreply.github.com> --------- Co-authored-by: Aayush Rajasekaran <arajasek94@gmail.com> Co-authored-by: zenground0 <ZenGround0@users.noreply.github.com> Co-authored-by: Jiaying Wang <42981373+jennijuju@users.noreply.github.com> Co-authored-by: Steven Allen <steven@stebalien.com> Co-authored-by: jennijuju <jiayingw703@gmail.com> |
||
---|---|---|
.. | ||
docs | ||
ffiwrapper | ||
fr32 | ||
fsutil | ||
mock | ||
partialfile | ||
sealtasks | ||
storiface | ||
tarutil | ||
cbor_gen.go | ||
cgroups_linux.go | ||
cgroups.go | ||
faults.go | ||
manager_calltracker.go | ||
manager_post.go | ||
manager_test.go | ||
manager.go | ||
piece_provider_test.go | ||
piece_provider.go | ||
piece_reader.go | ||
README.md | ||
request_queue_test.go | ||
request_queue.go | ||
roprov.go | ||
sched_assigner_common.go | ||
sched_assigner_darts.go | ||
sched_assigner_spread_tasks.go | ||
sched_assigner_spread.go | ||
sched_assigner_utilization.go | ||
sched_post.go | ||
sched_resources.go | ||
sched_test.go | ||
sched_worker_cache.go | ||
sched_worker.go | ||
sched.go | ||
selector_alloc.go | ||
selector_existing.go | ||
selector_move.go | ||
selector_task.go | ||
stats.go | ||
teststorage_test.go | ||
testworker_test.go | ||
worker_calltracker.go | ||
worker_local_test.go | ||
worker_local.go | ||
worker_tracked.go |
sector-storage
a concrete implementation of the specs-storage interface
The sector-storage project provides a implementation-nonspecific reference implementation of the specs-storage interface.
Disclaimer
Please report your issues with regards to sector-storage at the lotus issue tracker
Architecture
Manager
Manages is the top-level piece of the storage system gluing all the other pieces together. It also implements scheduling logic.
package paths
This package implements the sector storage subsystem. Fundamentally the storage
is divided into path
s, each path has it's UUID, and stores a set of sector
'files'. There are currently 5 types of sector files - unsealed
, sealed
, cache
, update
and update-cache
.
Paths can be shared between nodes by sharing the underlying filesystem.
paths.Local
The Local store implements SectorProvider for paths mounted in the local filesystem. Paths can be shared between nodes, and support shared filesystems such as NFS.
stores.Local implements all native filesystem-related operations
paths.Remote
The Remote store extends Local store, handles fetching sector files into a local store if needed, and handles removing sectors from non-local stores.
paths.Index
The Index is a singleton holding metadata about storage paths, and a mapping of sector files to paths
LocalWorker
LocalWorker implements the Worker interface with ffiwrapper.Sealer and a store.Store instance
License
The Filecoin Project is dual-licensed under Apache 2.0 and MIT terms:
- Apache License, Version 2.0, (LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0)
- MIT license (LICENSE-MIT or http://opensource.org/licenses/MIT)