Łukasz Magiera
3708a7ac30
config: Port some docstrings from go-ipfs
2021-08-27 19:17:32 +02:00
Łukasz Magiera
17b7dcef6f
config for disabling NAT port mapping
2021-08-27 19:14:29 +02:00
Aarsh Shah
d7076778e2
integrate DAG store and CARv2 in deal-making ( #6671 )
...
This commit removes badger from the deal-making processes, and
moves to a new architecture with the dagstore as the cental
component on the miner-side, and CARv2s on the client-side.
Every deal that has been handed off to the sealing subsystem becomes
a shard in the dagstore. Shards are mounted via the LotusMount, which
teaches the dagstore how to load the related piece when serving
retrievals.
When the miner starts the Lotus for the first time with this patch,
we will perform a one-time migration of all active deals into the
dagstore. This is a lightweight process, and it consists simply
of registering the shards in the dagstore.
Shards are backed by the unsealed copy of the piece. This is currently
a CARv1. However, the dagstore keeps CARv2 indices for all pieces, so
when it's time to acquire a shard to serve a retrieval, the unsealed
CARv1 is joined with its index (safeguarded by the dagstore), to form
a read-only blockstore, thus taking the place of the monolithic
badger.
Data transfers have been adjusted to interface directly with CARv2 files.
On inbound transfers (client retrievals, miner storage deals), we stream
the received data into a CARv2 ReadWrite blockstore. On outbound transfers
(client storage deals, miner retrievals), we serve the data off a CARv2
ReadOnly blockstore.
Client-side imports are managed by the refactored *imports.Manager
component (when not using IPFS integration). Just like it before, we use
the go-filestore library to avoid duplicating the data from the original
file in the resulting UnixFS DAG (concretely the leaves). However, the
target of those imports are what we call "ref-CARv2s": CARv2 files placed
under the `$LOTUS_PATH/imports` directory, containing the intermediate
nodes in full, and the leaves as positional references to the original file
on disk.
Client-side retrievals are placed into CARv2 files in the location:
`$LOTUS_PATH/retrievals`.
A new set of `Dagstore*` JSON-RPC operations and `lotus-miner dagstore`
subcommands have been introduced on the miner-side to inspect and manage
the dagstore.
Despite moving to a CARv2-backed system, the IPFS integration has been
respected, and it continues to be possible to make storage deals with data
held in an IPFS node, and to perform retrievals directly into an IPFS node.
NOTE: because the "staging" and "client" Badger blockstores are no longer
used, existing imports on the client will be rendered useless. On startup,
Lotus will enumerate all imports and print WARN statements on the log for
each import that needs to be reimported. These log lines contain these
messages:
- import lacks carv2 path; import will not work; please reimport
- import has missing/broken carv2; please reimport
At the end, we will print a "sanity check completed" message indicating
the count of imports found, and how many were deemed broken.
Co-authored-by: Aarsh Shah <aarshkshah1992@gmail.com>
Co-authored-by: Dirk McCormick <dirkmdev@gmail.com>
Co-authored-by: Raúl Kripalani <raul@protocol.ai>
Co-authored-by: Dirk McCormick <dirkmdev@gmail.com>
2021-08-16 23:34:32 +01:00
Peter Rabbitson
eefdcb0454
Remove forgotten non-functioning config from the pre-mainnet days
2021-08-02 17:04:23 +02:00
Aayush Rajasekaran
21244704fc
Merge branch 'master' into mg/feat/configurable-sector-expirations
2021-07-28 16:45:27 -04:00
Łukasz Magiera
389f71251c
Remove townhall
2021-07-28 17:58:46 +02:00
vyzo
7c195245a1
make cfgdoc-gen
2021-07-27 12:13:26 +03:00
vyzo
9d25464703
use functional options for hotstore gc, rename MovingGC to FullGC
2021-07-27 09:53:22 +03:00
vyzo
20f93a520f
make cfgdoc-gen
2021-07-26 15:05:57 +03:00
vyzo
4cdb34e448
add docstrings for splitstore config
2021-07-26 15:05:57 +03:00
vyzo
5acae50e07
add config option for splitstore moving gc frequency
2021-07-26 15:05:57 +03:00
Mike Greenberg
e68c59f984
fix: Update node config docs
2021-07-23 21:05:50 -04:00
Mike Greenberg
64d2b7a122
Merge branch 'origin/master' into mg/feat/configurable-sector-expirations
...
* origin/master: (47 commits)
Fix links in issue templates
Update issue templates and add templates for M1
config: Add newlines consistently
config: Add note on codegen to types.go
fix lint
cli docsgen
config: Bring some docs from filecoin-docs
add comment about the necessity of FileIO
improve README
config doc gen: generate formatted code
config: Fix doc finding logic
Nicer lotus-miner config commands
Move doc-comment logic to the config pkg
config: doc struct codegen
lotus daemon config utils
adjust compaction test with badger to hit the db
add splitstore compaction test with badger markset
update README with configuration options
tweak badger options
some tweaks in badger markset
...
Conflicts:
node/config/def.go
2021-07-23 20:36:54 -04:00
Łukasz Magiera
91c6aca7e7
config: Add newlines consistently
2021-07-23 16:59:55 +02:00
Łukasz Magiera
80af6de316
config: Add note on codegen to types.go
2021-07-23 16:02:45 +02:00
Łukasz Magiera
ac2a1bfeab
fix lint
2021-07-23 15:53:31 +02:00
Łukasz Magiera
a26712ebc4
config: Bring some docs from filecoin-docs
2021-07-23 15:40:40 +02:00
Łukasz Magiera
ed7f70e68e
config doc gen: generate formatted code
2021-07-23 15:18:20 +02:00
Łukasz Magiera
3f4973cb41
config: Fix doc finding logic
2021-07-23 15:17:22 +02:00
Łukasz Magiera
8b1f19e94c
Move doc-comment logic to the config pkg
2021-07-23 14:55:19 +02:00
Łukasz Magiera
97f5bb66c7
config: doc struct codegen
2021-07-23 13:55:50 +02:00
Mike Greenberg
adb62a3fff
chore: Move cfg getter into PCPolicy; Clamp values on get
2021-07-22 15:07:03 -04:00
Mike Greenberg
9e34cce1f2
feat(config): support configurable CC sector expiration
2021-07-22 15:07:03 -04:00
vyzo
1b77361301
add option for hotstore message retention
2021-07-17 08:35:35 +03:00
Łukasz Magiera
583a8a13d9
Merge pull request #6629 from filecoin-project/feat/pledge-from-miner-balance
...
Config for collateral from miner available balance
2021-07-13 17:22:00 +02:00
Łukasz Magiera
837322ea59
Merge pull request #6356 from filecoin-project/nonsense/split-market-miner-processes
...
Support standalone miner-market process
2021-07-13 17:16:07 +02:00
Łukasz Magiera
7526a074d9
sealing: collateral buffer / falback config
2021-07-13 17:04:58 +02:00
Łukasz Magiera
c37401a1a3
Merge pull request #6474 from filecoin-project/feat/splitstore-redux
...
Splitstore Enhanchements
2021-07-13 12:43:57 +02:00
Łukasz Magiera
83f2368507
Add CollateralFromMinerBalance config
2021-07-12 14:11:58 +02:00
Anton Evangelatov
4bc9fa04ba
rename cfg.Subsystems.EnableStorageMarket to EnableMarkets
2021-07-12 12:12:29 +02:00
Anton Evangelatov
d89ddb9315
resolve conflicts
2021-07-12 11:34:37 +02:00
vyzo
abdf4a161a
explicitly switch marksets for concurrent marking
...
this has very noticeable impact in initial marking time; it also allows us
to get rid of the confusing ts monikers.
2021-07-09 04:26:36 +03:00
Łukasz Magiera
8f5c0c60f5
Config for deal publishing control addresses
2021-07-07 18:00:54 +02:00
Anton Evangelatov
4be0a7a215
resolve conflicts with master
2021-07-05 13:13:32 +02:00
vyzo
190cb18ab0
housekeeping
...
- remove defunct tracking store implementations
- update splitstore node config
- use mark set type config option (defaulting to mapts); a memory constrained node
may want to use an on-disk one
2021-07-04 18:38:28 +03:00
vyzo
649b7dd162
add config option for hot headers
2021-07-04 18:38:28 +03:00
vyzo
04f2e102a1
kill full splitstore compaction, simplify splitstore configuration
2021-07-04 18:38:28 +03:00
vyzo
5cca29d1db
hook noop blockstore for splitstore in DI
2021-07-04 18:38:28 +03:00
Łukasz Magiera
c094aa82ec
commit batch: AggregateAboveBaseFee config
2021-07-01 13:33:54 +02:00
Anton Evangelatov
4f0a96c9c7
resolved conflicts
2021-06-30 13:16:52 +02:00
Łukasz Magiera
37c5dd5afc
Miner SimultaneousTransfers config
2021-06-28 14:24:14 +02:00
Łukasz Magiera
c3480dc0e8
Merge remote-tracking branch 'origin/releases' into chore/merge-release
2021-06-24 09:39:11 +02:00
Łukasz Magiera
9521c0b773
Add miner-side MaxDealStartDelay config
2021-06-23 19:45:13 +02:00
Łukasz Magiera
0e4cd3c599
Merge pull request #6563 from filecoin-project/asr/batch-starter
...
Always flush when timer goes off
2021-06-23 19:19:30 +02:00
Aayush Rajasekaran
616e5688fc
Remove MinPreCommitBatch
2021-06-23 12:30:32 -04:00
Łukasz Magiera
fa2be42eb0
Merge remote-tracking branch 'origin/release/v1.10.0' into chore/merge-1.10
2021-06-23 15:51:00 +02:00
Jakub Sztandera
bf82b96fd8
Update default fees for aggregates
...
Resolves #6422
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2021-06-22 20:20:01 +02:00
Anton Evangelatov
6720463799
resolve merge conflicts
2021-06-22 11:28:23 +02:00
Raúl Kripalani
b6147fb27f
extern/storage: retype resource filtering strategy to enum.
2021-06-21 20:28:15 +01:00
Łukasz Magiera
44de67cf7d
Merge pull request #6175 from filecoin-project/feat/dynamic-retreival-pricing
...
Dynamic Retrieval pricing
2021-06-17 10:25:48 +02:00
Anton Evangelatov
d45bb14015
Merge branch 'master' into nonsense/split-market-miner-processes
2021-06-16 18:49:15 +02:00
Aayush Rajasekaran
520a0091f5
Merge branch 'releases' into release/v1.10.0
2021-06-15 17:40:36 -04:00
Łukasz Magiera
0514f38dc4
Merge remote-tracking branch 'origin/master' into chore/merge-1.10
2021-06-14 13:27:53 +02:00
Anton Evangelatov
31e6fb154e
resolve conflicts
2021-06-14 11:27:54 +02:00
aarshkshah1992
4419205b0e
fix compilation
2021-06-14 10:10:29 +05:30
Aarsh Shah
bed2bc73a3
Update node/config/def.go
...
Co-authored-by: raulk <raul@protocol.ai>
2021-06-14 09:42:22 +05:30
Łukasz Magiera
94be3a973a
Don't enable early finalization by default
2021-06-11 11:45:20 +02:00
Łukasz Magiera
ec06f086ef
sealing: Early finalization option
2021-06-11 11:41:28 +02:00
aarshkshah1992
fed5afa704
merge master
2021-06-11 09:35:20 +05:30
Jennifer Wang
8f426b49ec
updated configuration comments for docs
2021-06-09 23:36:44 -04:00
Jennifer
3a1ad50da5
Merge pull request #6440 from filecoin-project/jen/miner-config-doc
...
updated configuration comments for docs
2021-06-09 23:35:04 -04:00
Jennifer Wang
95ad74a156
updated configuration comments for docs
2021-06-09 20:44:20 -04:00
Łukasz Magiera
f0a2e97cb5
fee config for sector batching
2021-06-09 14:23:06 -04:00
Łukasz Magiera
78171055e7
fee config for sector batching
2021-06-08 15:45:32 +02:00
aarshkshah1992
16166504f4
merged master
2021-06-08 09:17:40 +05:30
Anton Evangelatov
8bd09e39ca
resolve merge conflicts
2021-06-04 16:17:00 +02:00
aarshkshah1992
303ef15a83
fix ci
2021-06-04 17:33:11 +05:30
Łukasz Magiera
dc642d0b7b
Merge remote-tracking branch 'origin/feat/nv13' into feat/nv13-1.11
2021-06-01 21:06:58 +02:00
Łukasz Magiera
cb4eb487f4
commit batcher: Fix min aggregate size check
2021-06-01 12:27:22 +02:00
Łukasz Magiera
1e4456138e
Merge master into feat/nv13
2021-05-27 12:28:20 +02:00
Anton Evangelatov
9979de24db
logs and defaults
2021-05-26 12:47:21 +02:00
Łukasz Magiera
04658e1cae
fix lint
2021-05-25 16:26:59 +02:00
Łukasz Magiera
d90ab2b81f
config: Document batching fields
2021-05-25 16:20:49 +02:00
aarshkshah1992
dc6dbc9a11
dpr changes and test based on new unsealing PR
2021-05-22 22:40:21 +05:30
Anton Evangelatov
4693c61305
re-arrange NodeBuilder and add storageminer_svc
2021-05-20 13:10:14 +02:00
Łukasz Magiera
2a1b359ede
config: fmt
2021-05-19 15:20:34 +02:00
Łukasz Magiera
2a0c0e379b
Working default batching config
2021-05-19 14:32:41 +02:00
Łukasz Magiera
5112b9fe2b
Lower default batch slack
2021-05-18 21:04:47 +02:00
Łukasz Magiera
c7ba083fa4
Import precommit batcher
2021-05-18 16:51:06 +02:00
vyzo
74bad49068
correctly handle commit batch timer
2021-05-18 14:30:47 +03:00
vyzo
357c0868b7
proper config for termination batching and commit wait
2021-05-18 12:20:19 +03:00
vyzo
febf7cf28f
sane config defaults
2021-05-18 12:02:53 +03:00
Łukasz Magiera
506f39b294
WIP: Integrate FIP0013
2021-05-11 22:10:29 -04:00
Peter Rabbitson
dab2a41792
Raise client MaxFee default
...
The original value is too conservative for the current state of mainnet
Resolves (temporarily) #5543
2021-04-17 00:35:40 +02:00
Aayush Rajasekaran
c3d1534044
Merge pull request #5743 from filecoin-project/feat/keep-unsealed-by-default
...
Default the AlwaysKeepUnsealedCopy flag to true
2021-03-14 15:47:07 -04:00
Łukasz Magiera
bd8864ae43
Merge pull request #5755 from filecoin-project/feat/kvlog
...
Metadata datastore log
2021-03-10 14:13:01 +01:00
Łukasz Magiera
05274943c9
Merge pull request #5620 from filecoin-project/feat/disable-owner-worker-fallback
...
miner: Config to disable owner/worker address fallback
2021-03-10 11:21:39 +01:00
Łukasz Magiera
d11f2def6e
Merge branch 'feat/max-deal-collateral-multiplier' into next
2021-03-10 11:13:15 +01:00
Łukasz Magiera
0a513952c8
better DisableWorkerFallback doc
2021-03-09 23:42:08 +01:00
Łukasz Magiera
ca7e70bf3a
Metadata datastore log
2021-03-09 22:33:01 +01:00
Łukasz Magiera
6591af960f
Merge pull request #4992 from filecoin-project/feat/splitstore
...
hot/cold blockstore segregation (aka. splitstore)
2021-03-08 22:01:06 +01:00
Łukasz Magiera
305c2ec77d
miner: Config to disable owner/worker addcess fallback
2021-03-08 21:33:46 +01:00
Dirk McCormick
a6c8b56ab6
feat: Default the AlwaysKeepUnsealedCopy flag to true
2021-03-08 16:35:46 +01:00
vyzo
64646de761
add configuration option for pubsub IPColocationWhitelist subnets
2021-03-06 20:05:32 +02:00
vyzo
dd0c308427
move Blockstore config to FullNode, rename to Chainstore and add default for HotStoreType
2021-03-05 14:46:18 +02:00
Raúl Kripalani
4b1e1f4b52
rename liveset => markset; rename snoop => tracking store; docs.
2021-03-05 14:46:18 +02:00
vyzo
97abbe1eca
add (salted) bloom filter liveset
2021-03-05 14:46:17 +02:00
vyzo
73259aa350
add configuration for splitstore and default to a simple compaction algorithm
2021-03-05 14:46:17 +02:00
vyzo
b83994797a
separate LMDB options for hotstore and tracking stores
2021-03-05 14:46:17 +02:00
vyzo
a586d42c3b
make hot store DI injectable in the split store, default to badger.
2021-03-05 14:46:17 +02:00
Dirk McCormick
ced455bba9
feat: add configurable max provider collateral
2021-03-02 10:24:57 +01:00
Łukasz Magiera
e92b8b24b1
Merge remote-tracking branch 'origin/master' into feat/refactor-fsm-input
2021-02-09 14:04:21 +01:00
Łukasz Magiera
ba571794dc
Merge pull request #5309 from filecoin-project/feat/deal-batch-publish
...
batch publish deal messages
2021-02-04 01:19:56 +01:00
Łukasz Magiera
6e7fcb7ee6
Merge remote-tracking branch 'origin/master' into feat/refactor-fsm-input
2021-02-03 14:01:56 +01:00
Dirk McCormick
987f41011a
refactor: move publish msg config inside deals config
2021-02-01 10:23:05 +01:00
Łukasz Magiera
d4c7b63aac
Add miner config to always keep ensealed deal copies
2021-01-26 17:50:31 +01:00
Dirk McCormick
adac340f3f
feat: batch publish deal messages
2021-01-25 14:25:57 +01:00
Łukasz Magiera
1070ad2289
storagefsm: Drop unused TargetWaitDealsSectors
2021-01-21 22:20:16 +01:00
Łukasz Magiera
239d6f8f4d
storagefsm: Rewrite input handling
2021-01-21 17:40:50 +01:00
Łukasz Magiera
52cc2cd3eb
Initial sector termination support
2021-01-13 00:42:01 +01:00
Łukasz Magiera
0cb2f51549
Merge pull request #5094 from filecoin-project/asr/verified-only
...
Allow miners to filter (un)verified deals
2020-12-10 19:48:22 +01:00
Łukasz Magiera
c3a0feef96
miner: Improve default address config
2020-12-02 21:54:38 +01:00
Łukasz Magiera
7246ef273f
miner: Control address config for (pre)commits
2020-12-02 19:58:00 +01:00
Aayush Rajasekaran
370817eb60
Allow miners to filter (un)verified deals
2020-12-02 01:32:34 -05:00
hannahhoward
694834e8d5
feat(graphsync): configure simultaneous requests
...
allow configuration of the number of simultaneous requests graphsync will process at once
2020-11-24 14:32:30 -08:00
Łukasz Magiera
3b16faddad
Merge pull request #4652 from filecoin-project/feat/default-max-fee-cfg
...
Config for default max gas fee
2020-10-30 21:35:10 +01:00
Łukasz Magiera
ae7889f830
Config for default max gas fee
2020-10-29 20:50:11 +01:00
Ignacio Hagopian
7d0f279353
make IPFS online mode configurable
...
Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>
2020-10-29 15:16:45 -03:00
Łukasz Magiera
111942b50b
Merge pull request #4424 from filecoin-project/feat/retrieval-cli-deal-filter
...
Custom filters for retrieval deals
2020-10-16 18:41:40 +02:00
Ingar Shu
d0e4150cea
Use separate config for Retrieval Filter
2020-10-16 08:30:55 -07:00
Łukasz Magiera
698b49b7ef
Improve gas defaults
2020-10-15 02:46:47 +02:00
Łukasz Magiera
6a232e7214
Basic multi-wallet support
...
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-10-12 00:07:41 +02:00
Łukasz Magiera
8783c7434e
Merge remote-tracking branch 'origin/master' into feat/signing-backends
2020-10-09 00:50:41 +02:00
Łukasz Magiera
5e256be81e
Merge pull request #4141 from filecoin-project/feat/cap-market-provider-msgs
...
Cap market provider messages
2020-10-03 00:15:08 +02:00
Łukasz Magiera
8fe8a5df45
Cap market provider messages
2020-10-02 18:35:52 +02:00
jennijuju
c610bd818e
Increased ExpectedSealDuration and and WaitDealsDelay.
2020-09-10 14:34:18 -04:00
Łukasz Magiera
780f6dba34
Remote wallet backends
2020-09-05 21:39:09 +02:00
vyzo
fc34b86470
use DNS addr for tracer
2020-08-24 18:01:52 +03:00
Łukasz Magiera
a03192a39b
Separate concurrent sealing sector limit for deals
2020-08-18 21:48:18 +02:00
Łukasz Magiera
e7d65be90a
gofmt
2020-08-18 18:27:28 +02:00
Łukasz Magiera
65ffde9e4b
fsm: Config for max WaitDeals sectors
2020-08-18 16:20:31 +02:00
Łukasz Magiera
6ef7a30b19
Merge pull request #3089 from filecoin-project/integrate/storage-fsm
...
integrate extern/{storage-fsm,sector-storage} into lotus source tree
2020-08-17 18:37:54 +02:00
Raúl Kripalani
862bafc63a
fix lint errors.
2020-08-17 14:39:33 +01:00
Raúl Kripalani
efdc428d5d
keep storage-fsm (renamed to storage-sealing) and sector-storage in extern.
2020-08-17 14:26:18 +01:00
yaohcn
39bcfab37c
make addpiece configurable
2020-08-17 17:39:50 +08:00
Raúl Kripalani
3c17cd655e
integrate extern/sector-storage into lotus proper.
2020-08-16 11:09:58 +01:00
Łukasz Magiera
97489f8bf9
config: Set lower default max commit maxfee
2020-08-13 09:40:19 +02:00
Łukasz Magiera
78eaac6534
config: Test deafult toml roundtrip
2020-08-12 19:55:43 +02:00
Łukasz Magiera
6f890a3edd
Miner fee config
2020-08-12 19:47:09 +02:00
Łukasz Magiera
fc3c91b738
Support external deal decision logic
2020-07-31 20:29:16 +02:00
Łukasz Magiera
958cc8b947
Update sector-storage, parallel fetch limit
2020-07-24 22:11:11 +02:00
Aayush Rajasekaran
a5ef629cef
Add expected seal duration to custom deal logic, reject deals that start too early
2020-07-15 17:31:50 -04:00
Frank
14ec9a2068
update storage miner and seal worker document
2020-07-11 16:55:13 +08:00
Aayush Rajasekaran
411c82ae8f
Update storage-FSM, add API to set sector seal delay
2020-07-07 15:23:23 -04:00
laser
b9180a99d4
toggle consideration of offline storage/retrieval deal proposals
2020-06-26 12:27:41 -07:00
laser
e910a045d0
big rename to allow for later introducing the "consider offline" config
2020-06-26 10:50:54 -07:00
laser
ef0abf2b98
disable/enable retrieval deal consideration via config
2020-06-24 08:07:12 -07:00
laser
de7d6c255c
blacklist -> blocklist
2020-06-18 15:51:01 -07:00
laser
0c8d648998
specify which CID is being blacklisted (it's the piece)
2020-06-18 14:02:22 -07:00
laser
b0edf924b4
add commands for manipulating storage deal CID blacklist
2020-06-18 13:15:18 -07:00