vyzo
f26d19ed7d
load actor bundle at startup and initialize the manifest CID from the loaded file
2022-04-14 19:29:22 +03:00
Jiaying Wang
ce3c6472fb
Merge pull request #8470 from filecoin-project/feat/enable-rcmgr-by-default
...
enable rcmgr by default
2022-04-12 16:12:03 +02:00
vyzo
3c8aa18f70
enabled rcmgr by default; disable with LOTUS_RCMGR=0
2022-04-12 11:32:37 +03:00
Aayush Rajasekaran
656a33863f
Fixup merge
2022-04-11 20:45:13 -04:00
jennijuju
0dcad9cc18
Merge branch 'releases' into jen/mergeback
2022-04-12 01:25:02 +02:00
Masih H. Derkani
e37c54f38e
Reuse the market process PubSub
instance in index provider engine
...
The markets process instantiates its own `PubSub` instance with all
validators, peer scoring, etc. set up. Use that instane to join the
indexing topic, otherwise the default topic instantiated by
index-provider internally (via go-legs) has no validators.
2022-04-07 11:06:23 -04:00
Masih H. Derkani
4043923e56
Set index provider options based on lotus config
...
Always set index provider options based on the lotus configuration.
Otherwise, they will have no effect.
2022-04-07 11:05:09 -04:00
Masih H. Derkani
7e7e88e330
Reuse the market process PubSub
instance in index provider engine
...
The markets process instantiates its own `PubSub` instance with all
validators, peer scoring, etc. set up. Use that instane to join the
indexing topic, otherwise the default topic instantiated by
index-provider internally (via go-legs) has no validators.
2022-04-06 19:39:12 +01:00
Masih H. Derkani
b88307f875
Set index provider options based on lotus config
...
Always set index provider options based on the lotus configuration.
Otherwise, they will have no effect.
2022-04-06 16:08:10 +01:00
Łukasz Magiera
ebd34f1884
feat: storage: Parallel proving checks
2022-03-29 11:45:08 -04:00
Łukasz Magiera
54cb55a7ae
feat: miner: API/CLI to compute window-post
2022-03-28 17:06:51 -04:00
Łukasz Magiera
c951e348b4
feat: config: Move MakeNewSectorForDeals config into the Sealing sectoin
2022-03-26 23:45:48 -04:00
Łukasz Magiera
b78892934b
feat: config: Move MakeNewSectorForDeals config into the Sealing sectoin
2022-03-26 15:50:21 -04:00
Łukasz Magiera
82343a06e7
Merge remote-tracking branch 'origin/master' into feat/post-worker
2022-03-25 16:49:46 -04:00
Łukasz Magiera
92e4caa151
Merge remote-tracking branch 'origin/master' into feat/post-worker
2022-03-21 12:09:47 +01:00
Łukasz Magiera
97a73f1c29
sealing: More SnapDeals config knobs
2022-03-21 12:04:23 +01:00
Łukasz Magiera
7b81369c8c
wdpost: Don't attempt to snark with skipped sectors
2022-03-18 19:45:25 +01:00
Anton Evangelatov
0d6493ec3f
resolve merge conflicts with master
2022-03-18 12:28:22 +01:00
Łukasz Magiera
d3cec2f0d1
sealing: Add MakeCCSectorsAvailable config
2022-03-16 22:29:40 +01:00
Łukasz Magiera
4ded059a1c
sealing: Add MakeCCSectorsAvailable config
2022-03-16 19:29:47 +01:00
Jiaying Wang
c98ef0aaf8
Merge pull request #8317 from filecoin-project/jen/backport
...
chore: backport: release to master
2022-03-15 19:12:20 -04:00
vyzo
9fcafff847
adjust conns to 2x maxconns for duplicate connections
2022-03-15 10:02:27 +02:00
vyzo
53c525f0ed
improve resource manager integration
...
- add opt-in env var to control instantation, until we are comfortable with testing to enble by default.
- adjust default limits if the connection manager high mark is higher than the default inbound conn limit.
2022-03-15 09:43:18 +02:00
Jennifer Wang
8a2a2d065d
Merge branch 'releases' into jen/backport
2022-03-15 02:07:35 -04:00
Anton Evangelatov
b9fe61f9da
Merge branch 'master' into nonsense/refactor-nodetype
2022-03-07 11:51:28 +01:00
Anton Evangelatov
acbfc879aa
config: extract DealmakingConfig and Sealing config from Lotus for Boost ( #8172 )
...
* refactor sealingCfg and dealmakingCfg to be able to abstract Config
* fix error messages
2022-03-03 15:37:23 +01:00
Anton Evangelatov
e3edab66e3
refactor RepoType
2022-03-03 15:37:23 +01:00
Aayush
85886287b4
Revert "use the libp2p connmgr"
...
This reverts commit 826cdb2186
.
2022-03-02 15:39:23 -05:00
Aayush
b5912d1543
Revert "instantiate resource manager in DI"
...
This reverts commit 8d3f98fe38
.
2022-03-02 15:39:22 -05:00
Aayush
48e28898a6
Revert "fix lint"
...
This reverts commit 325a4c0e5b
.
2022-03-02 15:29:27 -05:00
Aayush
17ac583508
Revert "close the rcmgr on shutdown"
...
This reverts commit 73ec10a49e
.
2022-03-02 15:29:26 -05:00
Masih H. Derkani
aacc246ba3
Merge branch 'master' into feat/cid-to-piece-idx
2022-03-02 14:06:30 +00:00
Masih H. Derkani
444a2bf355
Integrate the latest index-provider with config to disable announcements
...
Integrate the latest `index-provider` and reflect the changes to engine
configuration. Note that this commit disables announcements of indices
on the network by default as requested for initial merge to master.
Introduce dedicated index provider configuration parameters with
documentation and defaults that match the defaults in index-provider.
Re-generate code as needed.
2022-03-02 13:45:09 +00:00
Masih H. Derkani
769b0f30ef
Address review comments
...
- Add comment to clarify the reason for loop in testkit
- Trim common prefix in state printed in CLI commands for better
readability
- Upgrade to a tagged release of `go-fil-markets` that includes indexing
work; see: https://github.com/filecoin-project/go-fil-markets/pull/673
- Fix typo in CLI usage.
- Add comments to note that it is safe to use fx `OnStart` context when
starting the provider engine.
- Fix string concatenation in error message formatting.
2022-03-02 11:04:50 +00:00
zenground0
77a954c7c3
Merge branch 'master' into feat/cid-to-piece-idx
2022-02-28 12:57:11 -07:00
Masih H. Derkani
2ebc111b70
Use the same host and datatransfer as markets for index provider
...
Remove the bespoke instantiation of libp2p host and datatransfer manager
for index provider and reuse the existing instances used by markets.
The rationale for reuse is the following:
1. Separation of host introduces a discovery problem, where without
gossipsub the index provider endpoint will not be discoverable.
Using the same host as markets would mean the chain can be used to
discover addresses, putting less empassis on criticality of
gossipsub considering its set-up cost and lack of message delivery
guarantees.
2. Only a single instance of graphsync/datatransfer can be instantiated
per libp2p host; therefore, if the host is shared, so should
datatransfer manager.
3. it is not clear if the assumptions under which separation was
decided still hold.
2022-02-16 13:46:44 +00:00
Łukasz Magiera
681b90768a
Merge remote-tracking branch 'origin/master' into feat/paych-avail-reuse
2022-02-16 10:06:36 +01:00
vyzo
9c00af1b86
don't track peer ids in rcmgr metrics
2022-02-15 16:12:17 +02:00
Łukasz Magiera
10af768c60
Merge commit 'origin/release/v1.15.0~2' into feat/paych-avail-reuse
2022-02-14 19:27:12 +01:00
vyzo
a9ec408844
collect resource manager metrics
2022-02-14 19:46:05 +02:00
Masih H. Derkani
7e7844f169
Fix log message formatting when instantiating index provider
2022-02-11 12:15:21 +00:00
Will
296eab3045
Merge pull request #8045 from gammazero/feat/cid-to-piece-idx
...
Add indexer pubsub message authentication and rate limiting
2022-02-10 13:49:58 -08:00
gammazero
eedcf910eb
change scoring based on review
2022-02-10 10:53:07 -08:00
gammazero
b72cd90c19
Add indexer message scoring
2022-02-10 09:21:21 -08:00
gammazero
3f3d61b043
Service creation takes interface, not implementation
2022-02-10 08:41:18 -08:00
zenground0
5a09b6496d
Actually read config value
2022-02-08 12:39:35 -05:00
zenground0
4d8b912acc
New config for turning off auto deal creation
2022-02-08 12:39:35 -05:00
Masih H. Derkani
cc61650f86
Upgrade to latest index-provider
and set miner ID as extra gossip data
...
Upgrade to the latest `index-provider` which upgrades the go-legs
protocol to allow the inclusion of extra gossip data that may be used
for gossip validation purposes. In the case of lotus gossip message
validators the miner ID is used to verify the sender's peer ID on chain.
Relates to:
- https://github.com/filecoin-project/lotus/pull/8045
2022-02-08 14:32:03 +00:00
gammazero
b2805823ce
Pass to validator the interfaces needed to get miner info
2022-02-08 04:55:59 -08:00
gammazero
1dc6a2fea6
Add indexer pubsub message authentication and rate limiting
2022-02-08 02:53:25 -08:00
Aarsh Shah
e155eb9fa3
Merge pull request #8016 from filecoin-project/nonsense/add-fullnode-api
...
add indexProvider host to markets
2022-02-04 12:56:36 +04:00
Aarsh Shah
4691b2b809
changes to the indexer message relay PR
2022-02-04 12:15:01 +04:00
Aarsh Shah
3ecf478ff0
Merge pull request #8026 from gammazero/feat/cid-to-piece-idx
...
Lotus chain nodes relay indexer pubsub messages
2022-02-04 12:05:46 +04:00
gammazero
c084130d3e
Lotus chain nodes relay indexer pubsub messages
...
Content providers announce the availability of indexer data using gossip pubsub. The content providers are not connected directly to indexers, so the pubsub messages are relayed to indexers via chain nodes. This PR makes chain nodes relay gossip pubsub messages, on the /indexer/ingest/<netname> topic.
2022-02-03 14:56:21 -08:00
Anton Evangelatov
dde2ab59ae
fixup
2022-02-03 15:53:46 +01:00
Anton Evangelatov
595ad44ee7
refactor indexprovider libp2p host connection to fullnode with meshcreator
2022-02-03 15:44:18 +01:00
Masih H. Derkani
575e6add43
Rename IndexerProvider
to IndexProvider
and add more docs
...
Rename the config section corresponding to indexing to `IndexProvider`
for better readability.
Update existing docs for better clarity and add docs for config
parameters embedded from `index-provider` `Ingest` config library.
2022-02-03 13:10:47 +00:00
Anton Evangelatov
faa3a79a5f
use NetAddrListener iface
2022-02-02 16:01:19 +01:00
Anton Evangelatov
2790cf35af
change fullnodeApi to listen addrs
2022-02-02 13:06:53 +01:00
Anton Evangelatov
f9b63c5f8c
add idxProvHost to StorageProvider
2022-02-02 13:03:41 +01:00
Anton Evangelatov
db5e4da268
add fullnodeApi to StorageProvider
2022-02-02 13:03:41 +01:00
Łukasz Magiera
4235a97cf4
retrieval: OffChainRetrieval config
2022-01-20 18:19:27 +01:00
Aarsh Shah
b8bf2af3e3
upgrade on master
2022-01-20 16:34:13 +04:00
Aarsh Shah
9ee940098d
Merge remote-tracking branch 'origin/master' into feat/cid-to-piece-idx
2022-01-20 16:21:48 +04:00
vyzo
73ec10a49e
close the rcmgr on shutdown
2022-01-20 11:47:39 +02:00
vyzo
325a4c0e5b
fix lint
2022-01-20 11:46:39 +02:00
vyzo
8d3f98fe38
instantiate resource manager in DI
2022-01-20 11:36:11 +02:00
vyzo
826cdb2186
use the libp2p connmgr
2022-01-20 11:36:11 +02:00
hannahhoward
92d56d82f4
feat(deps): update markets stack
...
update go-fil-markets, go-data-transfer 1.13.0, go-graphsync 0.12.0
2022-01-14 17:21:04 -08:00
c r
da6752eccb
feat: #7747 sealing: Adding conf variable for capping number of concurrent unsealing jobs ( #7884 )
...
* adding the new variables- now time for logic
* putting parameters into right placeS
* adding unsealing throttle
* fixing linter issues
* removing one last thing...
2022-01-13 12:26:13 -06:00
Aarsh Shah
b780a64ed9
send markets multiaddrs to the engine
2022-01-13 15:31:15 +04:00
Aarsh Shah
21a8f71859
compiles
2022-01-12 14:59:09 +04:00
Aarsh Shah
edfc2c215c
Merge remote-tracking branch 'origin/main' into feat/cid-to-piece-idx
2022-01-12 12:48:54 +04:00
hannahhoward
cddf63efe9
feat(storageminer): add api for transfer diagnostics
...
Add API + CLI for inspecting in depth diagnostics on graphsync transfers with a given peer
2021-12-22 13:41:29 -08:00
Łukasz Magiera
a4728d3c72
Merge pull request #7578 from filecoin-project/rvagg/SimultaneousTransfersForStoragePerClient
...
feat(graphsync): allow setting of per-peer incoming requests for miners
2021-12-17 14:27:15 +01:00
vyzo
dd327f0b22
plumb more contexts
2021-12-17 11:42:09 +02:00
Rod Vagg
9e7d9affbe
feat(graphsync): allow setting of per-peer incoming requests for miners
2021-12-17 15:04:16 +11:00
vyzo
eb48dc9b68
fix issues with new peerstore constructor signature in DI
2021-12-14 16:21:55 +02:00
vyzo
f157ac9b68
update for new ConnManager constructor
2021-12-14 15:30:29 +02:00
Dirk McCormick
a51b08e386
feat: add IndexerProvider AnnounceAddress config
2021-12-13 18:24:05 +01:00
vyzo
84710cf27e
plumb more contexts in lotus
2021-12-13 14:26:59 +02:00
Aayush Rajasekaran
dfb65ed89f
Plumb contexts through
2021-12-11 17:04:00 -05:00
vyzo
5d6398f20e
hook the upgrade schedule to splitstore start
2021-12-03 12:11:54 +02:00
Steven Allen
797147097c
Merge pull request #7689 from filecoin-project/disable-mplex
...
disable mplex stream muxer
2021-11-29 09:46:24 -08:00
Łukasz Magiera
8d955d5f30
dagstore mount: Add random access support
2021-11-26 17:40:53 +01:00
Marten Seemann
cf0faf58dc
remove muxer config via LIBP2P_MUX_PREFS env
2021-11-26 11:01:54 +04:00
Łukasz Magiera
9ea229ed5a
retrieval: fix defult ask
2021-11-22 13:04:12 +01:00
Aarsh Shah
7655e660f3
integrate store-the-hash
2021-11-18 12:07:12 +04:00
Dirk McCormick
627d4fbf74
wip: storage miner index provider
2021-11-16 17:45:42 +01:00
Matija Petrunić
df17ea06f5
Merge branch 'master' into libp2p-pubsub-tracer
2021-11-10 12:47:09 +00:00
Matija Petrunic
59040d4419
Trace reject messages in pubsub
2021-11-10 13:45:40 +01:00
Łukasz Magiera
d2e9d21031
Gather graphsync metrics on provider side as well
2021-10-19 19:45:25 +02:00
Łukasz Magiera
32a855b984
Fix lint
2021-10-19 19:22:32 +02:00
Łukasz Magiera
9a993d25d0
Collect and expose graphsync metrics
2021-10-19 19:20:00 +02:00
Jiaying Wang
cbb147de23
Merge pull request #7405 from filecoin-project/feat/update-graphsync-0.10.0
...
Update to graphsync to v0.10.0, enable seperate storage and retrieval transfer limits
2021-10-05 11:50:59 -04:00
Rod Vagg
43f7fd5e10
traversals: limit maximum number of DAG links to traverse
...
Impacts CommP and graphsync transfers
2021-10-05 10:47:49 +02:00
Dirk McCormick
a4e2fce9ca
feat: update to go-fil-markets v1.13.1
2021-10-05 10:40:01 +02:00
hannahhoward
368d72ebfe
feat(graphsync): update to v0.10.0-rc1
...
also add config changes
2021-10-05 14:13:58 +11:00
Jennifer Wang
38e01cba83
Merge branch 'release/v1.12.0' into jen/12tomaster
2021-10-04 02:38:00 -04:00
Aayush Rajasekaran
f004d036dc
Set BatchPreCommitAboveBaseFee correctly
2021-10-01 14:23:41 -04:00
Łukasz Magiera
6fd9d5f28b
Precommit batch balancer support/config
2021-10-01 14:23:41 -04:00
Anton Evangelatov
809289f5ef
add Dealmaking.StartEpochSealingBuffer config
2021-10-01 17:44:15 +02:00
Aayush Rajasekaran
c3c46e9097
Fix Drand fetching around null tipsets
2021-09-29 11:57:59 -04:00
Mak Muftic
530df4298e
Fix linter errors
2021-09-29 16:49:03 +02:00
Mak Muftic
ea7673618d
Add unit tests for lotus tracer
2021-09-29 16:39:44 +02:00
Matija Petrunic
53c8e68fba
Remove extra tracer dtypes
2021-09-29 16:23:08 +02:00
Matija Petrunic
181b35dc5e
Extend peer score event with score components
2021-09-29 16:20:43 +02:00
Mak Muftic
7b19beaf5d
Fix linter errors
2021-09-29 13:12:42 +02:00
Jennifer Wang
d7690aa719
Merge branch 'releases' into jen/backport
2021-09-29 03:21:19 -04:00
Mak Muftic
36913f4efc
Fix elasticsearch index setup
2021-09-27 13:28:28 +02:00
Matija Petrunic
6c680e306d
Rename json tracer flag
2021-09-24 16:25:41 +02:00
Mak Muftic
30fc2387be
Merge branch 'mpetrun5/lotus-extended-tracer' of github.com:ChainSafe/lotus into mpetrun5/lotus-extended-tracer
2021-09-24 14:16:31 +02:00
Mak Muftic
9332b9f399
Change json config naming
2021-09-24 13:53:31 +02:00
Mak Muftic
4438c4bd87
Move index name to config only and add default value
2021-09-24 13:43:25 +02:00
Mak Muftic
22bbb113e7
Fix schema creation
2021-09-24 12:58:32 +02:00
Mak Muftic
94a1601ab2
Remove hardcoded url schema
2021-09-24 12:40:33 +02:00
Mak Muftic
e46da5a181
Add cli flags
2021-09-24 12:37:16 +02:00
Łukasz Magiera
8e0314b3a3
Merge pull request #7362 from filecoin-project/chore/update-libp2p
...
Update go-libp2p to v0.15.0
2021-09-23 14:24:12 +01:00
Anton Evangelatov
c7e4217693
fix staging area path buildup
2021-09-21 16:45:00 +02:00
Aarsh Shah
89ac8b09b5
update libp2p
2021-09-21 15:10:04 +04:00
Matija Petrunic
0c390d12f7
Append source auth flag to lotus tracer event
2021-09-21 12:54:07 +02:00
Matija Petrunic
d65d9aa6e0
Send peerID peer score as separate events to enable usage of kibana runtime fields
2021-09-21 12:30:50 +02:00
Mak Muftic
082f70757c
Revert additional logging in elastic client
2021-09-20 12:29:12 +02:00
Mak Muftic
a685ccc955
Remove document id
2021-09-17 15:14:39 +02:00
Mak Muftic
0962e73e3e
Add loger to elastic search client
2021-09-17 14:22:57 +02:00
Matija Petrunic
7d0aefacbb
Change peer score event type to avoid exceeding elastisearch field limit
2021-09-17 13:46:26 +02:00
Matija Petrunic
a91ffa60d6
Set peer id event as string in lotus trace event
2021-09-17 12:11:14 +02:00
Mak Muftic
dc79ea363d
Change index name
2021-09-17 11:35:36 +02:00
ldoublewood
eb2bbfebe3
format code by make gen
2021-09-17 00:20:24 +08:00
Mak Muftic
f09f5c2d11
Change elastic document name
2021-09-16 16:49:47 +02:00
Mak Muftic
8e2b474fc7
Use only one document on elastic
2021-09-16 16:44:35 +02:00
Matija Petrunic
9efa495b0e
Write every trace to new line when using json transport
2021-09-16 16:42:18 +02:00
Matija Petrunic
941a0f7153
Update peer score tracker creation to include lotus tracer
2021-09-16 16:31:36 +02:00
Matija Petrunic
9cdc5261c4
Fix lotus tracer being nil when remote tracer is not configured
2021-09-16 15:53:39 +02:00
Matija Petrunic
d067bc9f01
Move creating and opening file to json transport constructor
2021-09-16 15:22:18 +02:00
Matija Petrunic
e2206147cc
Add source auth token to lotus traces
2021-09-16 12:21:57 +02:00
Mak Muftic
c25a5e06cf
Use config string for elasticsearch client
2021-09-16 12:15:42 +02:00
ldoublewood
3a1fc8e7da
fix bug for CommittedCapacitySectorLifetime
2021-09-16 09:25:02 +08:00
Mak Muftic
5cbd2519da
Remove processing elasticsearch result
2021-09-15 16:20:36 +02:00
Mak Muftic
67c1d633c6
Rename jsonEvent to evt
2021-09-15 16:16:12 +02:00
Mak Muftic
add13c2646
Code cleanup
2021-09-15 16:05:44 +02:00
Mak Muftic
71a2ca9e7c
Add new wrapper structure in tracer transport
2021-09-15 16:03:51 +02:00
Mak Muftic
707faf57b5
Code cleanup
2021-09-15 15:11:34 +02:00
Mak Muftic
e20cd0ef27
Propagate error on creating transport
2021-09-15 14:58:36 +02:00
Mak Muftic
cf06096565
Fix tracer initialization
2021-09-15 14:54:20 +02:00
Mak Muftic
bb85ca031d
Add elasticsearch transport
2021-09-15 14:50:27 +02:00
Matija Petrunic
8a657b90a7
Refactor lotus tracer to behave like lp2p tracer
2021-09-15 13:41:56 +02:00
Matija Petrunic
ab86c5419d
Implement json tracer transport
2021-09-15 13:41:03 +02:00
Matija Petrunic
8e6a01de6d
Add configuration in pubsub to trace locally to json file
2021-09-15 13:40:54 +02:00
Matija Petrunic
d5a4b0637a
Add lotus tracer transport calls
2021-09-10 15:37:38 +02:00
Mak Muftic
c367533a3c
Add transport interface
2021-09-10 12:36:38 +02:00
Łukasz Magiera
3a3a4fc413
Merge pull request #7276 from filecoin-project/nonsense/reject-deal-too-many-staging-deals
...
introduce MaxStagingDealsBytes - reject new deals if our staging deals area is full
2021-09-06 10:01:44 -07:00
Anton Evangelatov
0b7793a927
GiB to Bytes
2021-09-06 15:52:25 +02:00
Anton Evangelatov
c69d1db1eb
introduce MaxStagingDealsGiB - reject new deals if our staging deals area is "full"
2021-09-06 15:01:06 +02:00
hannahhoward
b4e9bc50f8
feat(deps): update go-graphsync v0.8.0
...
Update to go-graphsync v0.8.0 with go-ipld-prime linksystem branch & trusted store.
2021-09-03 16:21:55 +02:00
Łukasz Magiera
95b128b7bc
chain: Cleanup consensus logic
2021-09-02 18:09:37 +02:00
Matija Petrunic
b1dafd81b8
Add peer score tracing on pubsub peer score inspect
2021-08-30 14:49:10 +02:00
Matija Petrunic
99fbd7039e
Update pubsub tracking to trace from lotus and lp2p tracers
2021-08-30 14:38:15 +02:00
Matija Petrunic
522858c871
Add lotus tracer interface
2021-08-30 14:35:15 +02:00
Dirk McCormick
7b7a5b0b21
revert: changes to OnDealExpiredOrChanged in #5431 #7201
2021-08-30 10:42:41 +02:00
dirkmc
77a19774cf
fix events API timeout handling for nil blocks ( #7184 )
2021-08-27 09:05:00 +02:00
Łukasz Magiera
1ba427f638
alerting: Address review
2021-08-26 16:09:18 +02:00
Łukasz Magiera
b094e0913d
untangle fsjournal dependencies
2021-08-26 15:44:45 +02:00
Łukasz Magiera
81b1dd12f8
Simple alert system; FD limit alerts
2021-08-26 15:44:45 +02:00
Jennifer Wang
7ff5844aa2
Merge branch 'releases' into jen/mas
2021-08-17 10:38:36 -04:00
Frrist
518b6f1d41
fix(miner): always create miner deal staging directory ( #7098 )
...
- fixes #7097
Co-authored-by: Raúl Kripalani <raul@protocol.ai>
Co-authored-by: Raúl Kripalani <raul@protocol.ai>
2021-08-17 00:16:06 +01: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
frrist
ca697c9aa2
feat(miner deals): create subdir to miner repo for staged deals
2021-07-29 21:08:38 -07:00
Raúl Kripalani
d8c90b91be
address nits.
2021-07-29 04:41:27 -04:00
Raúl Kripalani
c119ab6ed9
fix docs and nits.
2021-07-29 04:39:28 -04:00
Anton Evangelatov
9b7a7713a7
add RuntimeSubsystems API method; use it in lotus-miner info
2021-07-29 04:38:19 -04:00
Raúl Kripalani
d3742048f9
address nits.
2021-07-28 23:56:18 +01:00
Raúl Kripalani
07f40b9488
fix docs and nits.
2021-07-28 20:03:25 +01:00
Anton Evangelatov
de4a847078
add RuntimeSubsystems API method; use it in lotus-miner info
2021-07-28 16:02:05 +03:00
Jiaying Wang
d45b4a7a1f
Merge branch 'master' into chore/cleanup-chain
2021-07-27 17:11:36 -04:00
Łukasz Magiera
9bd312881d
VMSys doesn't belong in chainstore
2021-07-27 15:30:23 +02:00
vyzo
9d25464703
use functional options for hotstore gc, rename MovingGC to FullGC
2021-07-27 09:53:22 +03:00
vyzo
aa0bd51b2c
thread GCFrequency option into the splitstore config
2021-07-26 15:05:57 +03:00
Łukasz Magiera
da5aeda197
Merge branch 'master' into feat/splitstore-hot-messages
2021-07-22 12:58:06 +02:00
vyzo
839b00ab40
rename messagepool ProtectMessages to ForEachPendingMessage
2021-07-20 09:23:36 +03:00
vyzo
ebbaf23af8
support out-of-chain reference protection
2021-07-20 09:02:40 +03:00
vyzo
1b77361301
add option for hotstore message retention
2021-07-17 08:35:35 +03:00
vyzo
e003203bea
implement exposed splitstore
2021-07-15 13:12:10 +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
056136ef5a
rename argument from url to apiInfo
2021-07-12 11:36:22 +02:00
Anton Evangelatov
d89ddb9315
resolve conflicts
2021-07-12 11:34:37 +02:00
Anton Evangelatov
16784aa2cc
remove pieceProvider from DI; small refactors
2021-07-12 11:30:26 +02:00
vyzo
c0a1cfffa1
rename noopstore to discardstore
2021-07-09 19:19:37 +03:00
Łukasz Magiera
8f5c0c60f5
Config for deal publishing control addresses
2021-07-07 18:00:54 +02:00
Anton Evangelatov
82efe01c70
fixup
2021-07-07 18:00:28 +02:00
Anton Evangelatov
7a78527fde
remove not used sa; cleanup
2021-07-06 17:46:21 +02:00
Anton Evangelatov
10dc90f7fe
addressing comments
2021-07-06 17:33:47 +02:00
Anton Evangelatov
898687ea2e
Update node/modules/storageminer.go
...
Co-authored-by: Łukasz Magiera <magik6k@users.noreply.github.com>
2021-07-06 17:28:52 +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
5f7ae1f489
update splistore DI constructor
2021-07-04 18:38:28 +03:00
vyzo
68bc5d2291
skip moving cold blocks when running with a noop coldstore
...
it is a noop but it still takes (a lot of) time because it has to read all the cold blocks.
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
997f2c098b
keep headers hot when running with a noop splitstore
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
8a94ab676e
storage: Fix FinalizeSector with sectors in stoage paths
2021-07-02 19:54:45 +02:00
Anton Evangelatov
9e85492b85
fix test
2021-07-02 12:24:07 +02:00
Raúl Kripalani
1869de7662
unwire host from storage.Miner.
2021-07-01 13:53:20 +01: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
Anton Evangelatov
9ec7cd7239
enable libp2p options
2021-06-30 12:55:43 +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
Aayush Rajasekaran
616e5688fc
Remove MinPreCommitBatch
2021-06-23 12:30:32 -04:00
Anton Evangelatov
21b51328f9
adding TestDealWithMarketAndMinerNode
2021-06-23 12:44:52 +02:00
Anton Evangelatov
6720463799
resolve merge conflicts
2021-06-22 11:28:23 +02: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
aarshkshah1992
4419205b0e
fix compilation
2021-06-14 10:10:29 +05:30
Łukasz Magiera
ec06f086ef
sealing: Early finalization option
2021-06-11 11:41:28 +02:00
Anton Evangelatov
beb5bffaf6
fix log.Error; rename RemoteStore
2021-06-09 13:05:54 +02:00
Anton Evangelatov
9f3ec82cc1
initial resolution of conflicts
2021-06-08 13:01:22 +02:00
aarshkshah1992
16166504f4
merged master
2021-06-08 09:17:40 +05:30
Łukasz Magiera
fadc79a487
Merge pull request #6280 from filecoin-project/feat/pieceread-outside-scheduler
...
Bypass task scheduler for reading unsealed pieces
2021-06-07 18:11:44 +02:00
aarshkshah1992
4efaa8d688
unit tests for the remote store Reader
2021-06-07 15:02:52 +05:30
aarshkshah1992
65eb610ec3
docs, logs and green ci
2021-06-07 15:02:49 +05:30
aarshkshah1992
670835fca0
bypass task scheduler for reading unsealed pieces
2021-06-07 15:02:04 +05:30
Lion
e4588aed5c
Fix the doc errors of the sealing config funcs
2021-06-07 12:35:43 +08:00
Anton Evangelatov
8bd09e39ca
resolve merge conflicts
2021-06-04 16:17:00 +02:00
Łukasz Magiera
6d9779ecae
Merge remote-tracking branch 'origin/master' into feat/nv13-1.11
2021-06-02 15:07:13 +02:00
Dirk McCormick
8997ed508b
feat: update to markets-v1.4.0
2021-06-01 10:16:12 -06:00
Anton Evangelatov
e4136b0d42
add modules.StorageAuthWithURL to set correct token
2021-06-01 11:42:28 +02:00
Aayush Rajasekaran
9ceee6028b
More tweaking of context handling in the messagepool
2021-05-31 18:13:23 -04:00
Aayush Rajasekaran
1f03a618f9
Plumb contexts through
2021-05-31 18:13:23 -04:00
Anton Evangelatov
d195a12565
Merge branch 'master' into nonsense/split-market-miner-processes
2021-05-31 11:26:11 +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
aarshkshah1992
dc6dbc9a11
dpr changes and test based on new unsealing PR
2021-05-22 22:40:21 +05:30
aarshkshah1992
bd9959070e
unit tests for the remote store Reader
2021-05-20 15:25:46 -06:00
aarshkshah1992
73613ee883
docs, logs and green ci
2021-05-20 15:25:46 -06:00
aarshkshah1992
2a40c802ea
bypass task scheduler for reading unsealed pieces
2021-05-20 15:25:46 -06:00
Anton Evangelatov
4693c61305
re-arrange NodeBuilder and add storageminer_svc
2021-05-20 13:10:14 +02:00
Anton Evangelatov
cb603c62d9
update retrievaladapter ; add piece_provider
2021-05-20 12:49:53 +02:00
Anton Evangelatov
2aad7b6979
update sectorstorage.New (Manager) interface
2021-05-20 12:32:29 +02:00
Dirk McCormick
706fdcbb80
feat: increase data transfer timeouts
2021-05-19 12:56:07 -06:00
Łukasz Magiera
3a99f95f8e
Merge pull request #6149 from filecoin-project/feat/markets-1.3
...
Update to markets 1.3
2021-05-19 20:51:33 +02:00
Łukasz Magiera
a5677d1b7a
ffiwrapper: Separate Prover interface
2021-05-19 15:20:23 +02:00