Jakub Sztandera
5f672c2ed0
perf: add cache for gas permium estimation
...
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2021-03-22 18:06:14 +01:00
Łukasz Magiera
e5226412fb
builder: set modules.PaychAPI correctly
2021-03-12 11:27:00 +01:00
whyrusleeping
cbc7f1c244
fix paychmgr constructor to take an easier to implement interface
2021-03-12 00:39:20 -08:00
whyrusleeping
e0b650d4ec
make rpcstatemanager its own package, for easy reuse
2021-03-11 18:21:18 -08:00
whyrusleeping
bf42a3be5e
move DI stuff for paychmgr into modules
2021-03-11 17:35:31 -08: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
d11f2def6e
Merge branch 'feat/max-deal-collateral-multiplier' into next
2021-03-10 11:13:15 +01:00
Łukasz Magiera
ca7e70bf3a
Metadata datastore log
2021-03-09 22:33:01 +01:00
vyzo
dd0c308427
move Blockstore config to FullNode, rename to Chainstore and add default for HotStoreType
2021-03-05 14:46:18 +02:00
vyzo
6014273e69
storage miner doesn't need a splitstore
2021-03-05 14:46:18 +02:00
Raúl Kripalani
1b51c10d78
split off lmdb support to a different branch.
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
68b6f913c7
propagate useLMDB option to splitstore through DI
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
vyzo
622b4f7d9d
hook splitstore into DI
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
Raúl Kripalani
3795cc2bd2
segregate chain and state blockstores.
...
This paves the way for better object lifetime management.
Concretely, it makes it possible to:
- have different stores backing chain and state data.
- having the same datastore library, but using different parameters.
- attach different caching layers/policies to each class of data, e.g.
sizing caches differently.
- specifying different retention policies for chain and state data.
This separation is important because:
- access patterns/frequency of chain and state data are different.
- state is derivable from chain, so one could never expunge the chain
store, and only retain state objects reachable from the last finality
in the state store.
2021-02-28 22:49:44 +00:00
Łukasz Magiera
adeb4cefee
node builder: Cleanup and add some docstrings
2021-02-09 13:52:03 +01:00
Łukasz Magiera
332ea8a126
Merge remote-tracking branch 'origin/master' into feat/deal-batch-publish
2021-02-02 18:21:14 +01:00
Dirk McCormick
987f41011a
refactor: move publish msg config inside deals config
2021-02-01 10:23:05 +01:00
Steven Allen
8d3cc632ac
add support for running pre-migrations and caching their results
...
This can significantly speedup state migrations.
2021-01-27 12:55:53 -08:00
Dirk McCormick
adac340f3f
feat: batch publish deal messages
2021-01-25 14:25:57 +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
dc06d30f52
Merge pull request #5101 from filecoin-project/raulk/memory-watchdog
...
introduce memory watchdog; LOTUS_MAX_HEAP
2020-12-03 15:46:09 +01:00
Raúl Kripalani
e34a759889
avoid global ResourceConstraints.
2020-12-02 22:26:30 +00:00
Łukasz Magiera
7246ef273f
miner: Control address config for (pre)commits
2020-12-02 19:58:00 +01:00
Raúl Kripalani
e8a5e0d2fe
integrate memory watchdog; impose limits on badger caches.
2020-12-02 16:40:28 +00:00
Aayush Rajasekaran
370817eb60
Allow miners to filter (un)verified deals
2020-12-02 01:32:34 -05:00
Łukasz Magiera
2e544e3e6a
configure SimultaneousTransfers in node/builder
2020-11-25 19:57:38 +01:00
Łukasz Magiera
94763c2aaa
Merge pull request #4849 from filecoin-project/feat/conngater
...
Connection Gater support
2020-11-20 16:25:02 +01:00
Steven Allen
931979809f
get lotus building
2020-11-16 19:03:30 +01:00
vyzo
4b1d1b6540
connection gater for libp2p host
2020-11-13 11:44:29 +02:00
Peter Rabbitson
29817b6617
Remove all Chain GC wrappings/types
...
There is no practical way to do GC against the chainstore given the current
state of affairs: remove all GC-related types for the time being.
2020-11-12 06:49:53 +01:00
hannahhoward
9f7204ee26
feat(builder): finish new FundManager setup
...
Finish setup of new FundManager and provide a migration for previously reserved funds
2020-11-10 21:11:05 -08:00
Dirk McCormick
0d243bb824
refactor: integrate new FundManager
2020-11-10 21:11:05 -08:00
Łukasz Magiera
a1e1b03ca4
Optionally allow bitswap for chainstore
2020-11-03 23:44:44 +01:00
Raúl Kripalani
656ece06e5
fix metrics wiring.
...
Some components like go-ds-measure, go-ipfs-blockstore and go-bitswap
expose metrics via ipfs/go-metrics-interface, but Lotus never injects
the Prometheus exporter (ipfs/go-metrics-prometheus). Therefore, those
metrics never surface in instrumentation.
Instead, Lotus uses OpenCensus directly.
This commit injects the Prometheus exporter for go-metrics-interface, and
instructs the OpenCensus Prometheus exporter to use the DefaultRegistry.
This has the effect of exposing blending the metrics of both metrics
libraries.
With this patch, the datastore, cache utilisation, and bitswap metrics
are now exported via the /debug/metrics endpoint.
This commit also fixes an issue where the metrics scope was empty, making
go-metrics-interface default to "<no-scope>". Angle brackets are inadmissible
characters for Prometheus, so it was refusing to export the affected metrics.
(These were the ARC cache metrics.)
2020-11-02 17:56:49 +00: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
c3d00b0ac6
Merge pull request #4650 from jsign/jsign/offlinemode
...
make IPFS online mode configurable
2020-10-29 22:24:58 +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
660236b224
Merge remote-tracking branch 'origin/master' into feat/async-restartable-workers
2020-10-23 23:25:35 +02:00
Dirk McCormick
92942d44d1
feat: lite-mode - market storage and retrieval clients
2020-10-23 15:02:26 +02:00
Łukasz Magiera
7ac5dc55d0
Merge remote-tracking branch 'origin/master' into feat/async-restartable-workers
2020-10-17 13:45:11 +02:00
Ingar Shu
d0e4150cea
Use separate config for Retrieval Filter
2020-10-16 08:30:55 -07:00
Ingar Shu
0b7dc6971d
Rebasing
2020-10-15 09:33:01 -07:00
Łukasz Magiera
71b3b9075d
Merge remote-tracking branch 'origin/master' into feat/async-restartable-workers
2020-10-13 21:33:21 +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
a6d9b302fa
Merge pull request #3583 from filecoin-project/feat/signing-backends
...
Remote wallet backends
2020-10-10 02:58:02 +02:00
Steven Allen
748d2e82a7
unshare the journal
...
Motivation:
* Run lotus with the race detector enabled (primary motivation).
* Allow multiple lotus nodes in a process (not a high priority).
Previously, the journal was shared between all lotus instances, but it was
initialized for every new node. This caused safety problems in tests (at a
minimum).
This patch explicitly passes the journal to all services that need it.
2020-10-09 13:23:07 -07:00
Łukasz Magiera
fdaa9c14ad
Merge remote-tracking branch 'origin/master' into feat/signing-backends
2020-10-09 20:36:51 +02:00
Łukasz Magiera
ab8286fa38
Fix docsgen, lotus-soup build
2020-10-09 18:43:22 +02:00
Dirk McCormick
d69e4c7cf2
refactor: lite-mode - simplify organization of dep injection
2020-10-09 11:54:42 +02:00
Dirk McCormick
ef73b964fb
feat: add end-to-end test for lite mode
2020-10-09 11:48:35 +02:00
Dirk McCormick
b32d25c562
feat: add RPC for GasEstimateMessageGas
2020-10-09 11:45:16 +02:00
Dirk McCormick
be09a8a00a
feat: lite-mode - check that gateway API implements required chain, mpool, state methods
2020-10-09 11:43:03 +02:00
Dirk McCormick
2719adc1b1
feat: lite-mode - thin client for chan & state
2020-10-09 11:43:03 +02:00
Dirk McCormick
f1b1d8cec6
fix: MpoolAPI DI
2020-10-09 11:43:03 +02:00
Dirk McCormick
8fa4c0a970
feat: gateway - MpoolPush
2020-10-09 11:43:03 +02:00
Dirk McCormick
e19cd9ed01
feat: lotus-lite - replace wallet StateManager with thin client to gateway
2020-10-09 11:43:03 +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
0de3051821
Merge remote-tracking branch 'origin/master' into feat/async-restartable-workers
2020-10-08 13:10:41 +02:00
Łukasz Magiera
921d78f820
Merge remote-tracking branch 'origin/master' into feat/async-restartable-workers
2020-10-04 10:39:55 +02:00
Steven Allen
8292d60196
Merge branch 'master' into asr/spec-v1
2020-10-02 18:03:03 -07:00
Steven Allen
c5de617af6
decouple network version and upgrades
...
Not all upgrades require network version bumps.
2020-10-02 17:10:57 -07:00
Łukasz Magiera
8fe8a5df45
Cap market provider messages
2020-10-02 18:35:52 +02:00
Steven Allen
e865ba0c64
improve upgrade schedule configurable
...
Unfortunately, it looks like functional ops cannot be passed in via lotus's
di system.
2020-10-01 15:18:59 -07:00
Łukasz Magiera
5932f28519
Merge remote-tracking branch 'origin/master' into feat/async-restartable-workers
2020-10-01 02:39:48 +02:00
Łukasz Magiera
feecee310d
Merge pull request #4089 from filecoin-project/feat/update-markets-0.7.0
...
Markets 0.7.0 with updated data stores
2020-09-30 21:49:14 +02:00
Łukasz Magiera
2cfe22d4e5
Merge remote-tracking branch 'origin/master' into feat/async-restartable-workers
2020-09-30 20:48:16 +02:00
hannahhoward
be884e27be
feat(markets): update markets 0.7.0
2020-09-30 10:26:50 -07:00
Dirk McCormick
d1c10a61dd
fix: message signer - always compare with mpool nonce
2020-09-29 12:20:09 +02:00
Dirk McCormick
3c524ac0e0
refactor: move nonce generation from mpool to wallet
2020-09-24 14:09:42 +02:00
Łukasz Magiera
aa5bd7bc17
Merge remote-tracking branch 'origin/master' into feat/async-restartable-workers
2020-09-21 22:36:16 +02:00
zgfzgf
fa9be9a627
Replace fx.Extract with fx.Populate
2020-09-16 09:14:56 +08:00
Łukasz Magiera
03cf6cca40
Merge remote-tracking branch 'origin/master' into feat/async-restartable-workers
2020-09-15 17:47:03 +02:00
Łukasz Magiera
692027f625
Merge pull request #3819 from zgfzgf/zgfzgf
...
optimize Settings.nodeType
2020-09-15 10:42:23 +02:00
Łukasz Magiera
6665a9ca69
Merge pull request #3845 from filecoin-project/sync-manager
...
syncer: make SyncManager an interface.
2020-09-15 10:28:48 +02:00
Raúl Kripalani
dd841f32db
syncer: make SyncManager an interface.
2020-09-14 21:58:59 +01:00
Łukasz Magiera
381a6cdfac
Merge remote-tracking branch 'origin/master' into feat/async-restartable-workers
2020-09-14 19:11:50 +02:00
Raúl Kripalani
05aa5f2d38
allow customizing disabled journal events + tests.
2020-09-14 13:01:03 +01:00
Raúl Kripalani
6d29d75724
Merge branch 'master' into inmem-journal
2020-09-14 12:17:45 +01:00
zgfzgf
45a5eaf913
optimize Settings.nodeType
2020-09-14 11:00:08 +08:00
Jakub Sztandera
64fa6fd9e5
Draw the rest of the owl
...
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-09-10 17:41:55 -04:00
Łukasz Magiera
5f08fe7ead
Merge remote-tracking branch 'origin/master' into feat/async-restartable-workers
2020-09-10 17:30:54 +02:00
Raúl Kripalani
878ffafb51
rename other Chain{Exchange=>Bitswap}; fix ChainBlock{s=>S}ervice().
2020-09-07 20:20:23 +01:00
Raúl Kripalani
453e826a0f
rename p2p protocol to /fil/chain/xchg/0.0.1 (backwards-compatible); rename more.
2020-09-07 19:45:34 +01:00
Raúl Kripalani
55b1456d45
blocksync: introduce interfaces; rename to chainexchange.
2020-09-07 19:31:43 +01:00
Łukasz Magiera
9e6f974f3c
storage: Fix build
2020-09-07 16:12:55 +02:00
Łukasz Magiera
780f6dba34
Remote wallet backends
2020-09-05 21:39:09 +02:00
Łukasz Magiera
f90cfda2e6
wallet: Add interface layer
2020-09-04 22:18:03 +02:00
Raúl Kripalani
1ec534d607
Merge branch 'master' into inmem-journal
2020-09-04 10:55:40 +01:00
whyrusleeping
a59dadccc9
add apis and command to inspect bandwidth usage
2020-09-02 15:25:53 -07:00
Raúl Kripalani
0b6a182a44
move InitJournalKey to the top; add godcs on invoke order.
2020-09-02 19:15:07 +01:00
Raúl Kripalani
efdfd3ee3e
Merge branch 'master' into inmem-journal
2020-08-26 16:38:23 +01:00
Raúl Kripalani
4e1ef09751
make journal a global var.
2020-08-26 16:09:37 +01:00
Steven Allen
5733c71c50
Lint everything
...
We were ignoring quite a few error cases, and had one case where we weren't
actually updating state where we wanted to. Unfortunately, if the linter doesn't
pass, nobody has any reason to actually check lint failures in CI.
There are three remaining XXXs marked in the code for lint.
2020-08-20 20:46:36 -07:00
vyzo
92faf5c5f9
don't prefer TLS over NOISE
2020-08-20 11:33:19 +03:00