Steven Allen
d3594835c4
[WIP] Network upgrade support
...
This patch starts adding support for network upgrades.
* It adds an actors abstraction layer for loading abstract (cross-version) actors.
* It starts switching over to a shared deadline type.
* It adds an abstraction for ADTs (hamt/amt).
* It removes the callback-based API in the StateManager (difficult to abstract
across actor versions).
* It _does not_ actually add support for actors v2. We can do that in a followup
patch but that should be relatively easy.
This patch is heavily WIP and does not compile. Feel free to push changes
directly to this branch.
Notes:
* State tree access now needs a network version, because the HAMT type will change.
* I haven't figured out a nice way to abstract over changes to the _message_
types. However, many of them will be type aliased to actors v0 in actors v2 so
we can likely continue using the v0 versions (or use the v2 versions
everywhere). I've been renaming imports to `v0*` to make it clear that we're
importing types from a _specific_ actors version.
TODO:
* Consider merging incremental improvements? We'd have to get this compiling
again first but we could merge in the new abstractions, and slowly switch over.
* Finish migrating to the new abstractions.
* Remove all actor state types from the public API. See `miner.State.Info()` for
the planned approach here.
* Fix the tests. This is likely going to be a massive pain.
2020-09-11 20:16:29 -07:00
whyrusleeping
8b9a3ea6c3
implement initial lotus-gateway program
2020-09-11 20:01:37 -07:00
Łukasz Magiera
aeb3437a9f
lint, docsgen
2020-09-11 10:55:10 +02:00
Albert·Gou
6e7de3c8d9
optimize definition of state_heights
...
In the same parentstateroot, the one with the smallest height should be selected
2020-09-11 16:52:48 +08:00
whyrusleeping
0e3dd3cb3b
Add faster and slimmer option to chain export via lotus-shed
2020-09-10 17:28:25 -07:00
Steven Allen
7a46c5ff31
[WIP] Fix ticket randomness
...
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
Łukasz Magiera
890e6280df
Merge pull request #3669 from filecoin-project/feat/independent-version-numbers
...
build: Separate API versions per node type
2020-09-10 17:00:32 +02:00
Whyrusleeping
767341b279
Merge pull request #3437 from filecoin-project/feat/mpool-stats-cmd
...
add a simple command to watch messages sitting in the mempool
2020-09-09 18:29:42 -07:00
whyrusleeping
c73916b4e7
fix the linter
2020-09-09 17:37:49 -07:00
whyrusleeping
0361ca1c39
add some bits about windowed post
2020-09-09 17:18:55 -07:00
frrist
f2b238f50a
fix(chainwatch): compare prev miner with cur miner
...
- bug was comparing cur miner with cur miner
2020-09-09 15:30:30 -07:00
whyrusleeping
09194aa613
print better error when losing connection
2020-09-09 15:19:54 -07:00
whyrusleeping
e58327d4ed
rename LE tag to quantile
2020-09-09 15:19:54 -07:00
whyrusleeping
8414aa6e4b
more metrics!
2020-09-09 15:19:54 -07:00
whyrusleeping
7d1d690eb7
lets get some metrics
2020-09-09 15:19:54 -07:00
whyrusleeping
47ad7ccb5f
some more stats
2020-09-09 15:19:54 -07:00
whyrusleeping
679c4183e7
add a simple command to watch messages sitting in the mempool
2020-09-09 15:19:53 -07:00
Łukasz Magiera
38863d3025
build: Separate API versions per node type
2020-09-08 21:14:53 +02:00
whyrusleeping
26ec0716b9
fix lint errors
2020-09-07 16:12:44 -07:00
whyrusleeping
97af576f6a
Implement faucet funds reallocation logic
...
use all committed sectors instead of power
give all miners who had at least a sector on friday a base amount
include genesis miner in redistribution
drop back to 1,000,000
2020-09-07 16:06:13 -07:00
Aayush Rajasekaran
d678fe4bfa
Fix tests
2020-09-07 15:48:42 -04:00
Aayush Rajasekaran
39755a294a
Update to specs v0.9.6
2020-09-07 15:48:41 -04:00
Łukasz Magiera
231a9e4051
Fix sealing sched tests
2020-09-07 17:55:31 +02:00
Łukasz Magiera
9e6f974f3c
storage: Fix build
2020-09-07 16:12:55 +02:00
Łukasz Magiera
5d73943929
storage: Fix import cycle
2020-09-06 18:54:00 +02:00
Łukasz Magiera
70da2b7b4d
Merge pull request #3568 from filecoin-project/feat/lotus-shed-math
...
lotus-shed: add math command
2020-09-05 21:47:06 +02:00
Travis Person
bf3466f3cb
lotus-pcr: use current tipset during refund
...
Using the tipset which is being processed might lead to incorrect gas
estimations or balance checking for the wallet.
2020-09-05 02:38:24 +00:00
Travis Person
eebd2efcbf
lotus-shed: add math command
2020-09-05 00:50:56 +00:00
Travis Person
d6691fe9d8
lotus-pcr: add tipset aggregation
2020-09-04 22:28:13 +00:00
Raúl Kripalani
1ec534d607
Merge branch 'master' into inmem-journal
2020-09-04 10:55:40 +01:00
Łukasz Magiera
d81feb05d1
Merge pull request #3527 from filecoin-project/feat/watch-option-miner-storage-deals-list
...
Add watch option to storage-deals list
2020-09-04 04:13:01 +02:00
Mike Greenberg
abaef98fd8
fix(chainwatch): Stop SyncIncomingBlocks from leaking into processing
...
The SQL query was anchoring data from the `blocks` table, which includes
all blocks seen from SyncIncomingBlocks which isn't always available in
the chainstate via the API. In order to prevent these blocks from
leaking into normal processing (which errors anyway), the join was
changed to allow `blocks_synced` to anchor the set as we originally
intended.
2020-09-03 19:15:25 -04:00
Mike Greenberg
ddc5e57d4d
fix(chainwatch): Error instead of panic during processing
2020-09-03 19:15:19 -04:00
Ingar Shu
1608cd2d53
Add watch option to "lotus-miner storage-deals list"
2020-09-03 10:14:30 -07:00
Raúl Kripalani
4554c4bda9
fix lotus-bench stale import.
2020-09-02 19:54:13 +01:00
Raúl Kripalani
3206f92063
Merge branch 'master' into inmem-journal
2020-09-02 19:50:52 +01:00
Jakub Sztandera
59f765f7be
Rename to import-snapshot, require more than finality for state export
...
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-09-02 17:15:36 +02:00
Łukasz Magiera
528e39fcb3
docsgen, fix snapshot flag name
2020-09-02 17:15:10 +02:00
whyrusleeping
2b16e69e90
allow snapshot importing
2020-09-02 17:15:10 +02:00
Łukasz Magiera
351313523c
Merge pull request #3470 from filecoin-project/feat/toggle-message-processing
...
lotus-pcr: add toggle for message processing
2020-09-02 14:26:40 +02:00
Aayush Rajasekaran
8417f516e5
Check error in advance-block
2020-09-02 02:41:12 -04:00
Travis Person
9532441ed4
lotus-pcr: add toggle for message processing
2020-09-02 03:50:16 +00:00
Mike Greenberg
2b83089da8
fix(chainwatch): Add important documentation
2020-08-31 22:55:11 -04:00
Mike Greenberg
7290431cb0
fix(chainwatch): Restore IncomingBlockSync listening
2020-08-31 22:46:28 -04:00
Mike Greenberg
95a75daf9f
fix(chainwatch): Remove useless logging
2020-08-31 22:32:34 -04:00
Mike Greenberg
80ed6b8c25
fix(chainwatch): Process chain waitout waiting for update via ChainNotify
2020-08-31 22:31:25 -04:00
Łukasz Magiera
0e6ff668eb
worker: Cli to attach storage paths
2020-08-30 20:33:02 +02:00
Aayush Rajasekaran
5095e6f07b
Fix chain import
2020-08-28 22:15:43 -04:00
Łukasz Magiera
e86f90fe8d
Merge pull request #3380 from filecoin-project/fix/chainwatch/perf
...
perf(chainwatch): parallelize miner processing
2020-08-29 02:51:46 +02:00
frrist
0185090cbb
perf(chainwatch): parallelize miner processing
2020-08-28 13:26:11 -07:00
Łukasz Magiera
11b11e416b
sectorstorage: Compact assigned windows
2020-08-28 18:26:38 +02:00
Łukasz Magiera
20ffce5c0d
Merge remote-tracking branch 'origin/master' into fix/some-fsm-issues
2020-08-28 16:47:25 +02:00
Łukasz Magiera
932ab61c2d
Merge pull request #3275 from filecoin-project/fix/chainwatch/sync
...
fix(chainwatch): use height to determine unsynced blocks and fix deadlock in sector deal table
2020-08-28 12:16:00 +02:00
Mike Greenberg
ff5ac51c54
fix(chainwatch): Upsert on chain_economics
...
This table may get multiple updates depending on how many blocks get
added into a tipset. Each new block affects the tipset state, but the
parent state root will remain the same. This allows the very latest
value to be applied.
2020-08-27 23:21:20 -04:00
Mike Greenberg
9e130af9e7
feat(chainwatch): Add more complete power and reward metrics
2020-08-27 23:00:12 -04:00
Aayush Rajasekaran
bed7158212
Use beacon entries in advance-block
2020-08-27 21:38:51 -04:00
Łukasz Magiera
59f554b658
sealing sched: Show waiting tasks assigned to workers in sealing jobs cli
2020-08-27 23:14:33 +02:00
frrist
0ad38fe38f
lint
2020-08-27 14:09:03 -07:00
frrist
5c4db23da4
polish(chainwatch): accept lotus api and token
2020-08-27 14:05:39 -07:00
Łukasz Magiera
d8e58e67c6
storagefsm: Treat PackingFailed sectors as expired
2020-08-27 22:41:35 +02:00
frrist
f934ebd429
fix(chainwatch): sync based on height
2020-08-27 11:47:53 -07:00
frrist
fccdd70524
polish(chainwatch): relax scheduler refresh
2020-08-27 11:47:53 -07:00
frrist
5e40dda3bc
fix(chainwatch): fix deadlock in sector deals
2020-08-27 11:47:53 -07:00
frrist
fb8340acb2
polish(chainwatch): clean up logging
2020-08-27 11:47:53 -07:00
Łukasz Magiera
df635579c4
storagefsm: Handle sectors with expired deals better
2020-08-27 13:51:38 +02:00
Łukasz Magiera
788c7dbf48
storagefsm: Separate satte for submitting commit message
2020-08-27 12:57:28 +02:00
Łukasz Magiera
51ca460f18
miner: Fix sorting of some sector states in miner-info
2020-08-27 12:41:12 +02:00
Łukasz Magiera
e236173417
miner: Print (pre)commit message cids in sector status
2020-08-27 12:40:19 +02:00
Raúl Kripalani
cb8e105a94
reduce diff noise.
2020-08-26 16:44:06 +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
Whyrusleeping
0009f7c8dc
Merge pull request #3300 from filecoin-project/fix/set-peer-id
...
fix parsing of peerID in input to set-peer-id
2020-08-25 17:26:05 -07:00
Whyrusleeping
cd2e794d3f
Merge pull request #3299 from filecoin-project/steb/update-deps
...
update deps for bug fixes
2020-08-25 17:18:02 -07:00
whyrusleeping
9bb862d025
fix parsing of peerID in input to set-peer-id
2020-08-25 17:10:06 -07:00
Steven Allen
7fb4851eb9
update deps for bug fixes
...
* updates bitswap to include _many_ perf enhancements and bug fixes.
* updates go-fs-lock because the version here is pretty old.
* updates go-libp2p
* updates bbloom _just_ in case, because the version we were depending on had bugs (looks like we're not actually using it).
2020-08-25 17:06:07 -07:00
frrist
0d61e0d717
refactor(ctx): update to latest go-jsonrpc
2020-08-25 15:20:41 -07:00
Steven Allen
f84bbd4520
Fix more lint warnings.
...
This way we can keep CI green.
2020-08-25 12:56:30 -07:00
Travis Person
fb033a3719
lotus-fountain: remove make miner workflow
2020-08-25 05:10:12 +00:00
whyrusleeping
90337995ff
print out genesis cid
2020-08-24 22:48:48 +02:00
whyrusleeping
aa2cad1a66
small usability tweak, fix lint
2020-08-24 22:48:47 +02:00
whyrusleeping
4f6dc0748d
print out genesis block accounts
2020-08-24 22:48:11 +02:00
whyrusleeping
6b8191121c
add lotus-shed command to verify some stuff about the genesis car
2020-08-24 22:48:11 +02:00
Łukasz Magiera
ecc3ff4a5c
Merge pull request #3254 from filecoin-project/fix/chainwatch/independent-processor-subtasks
...
fix(chainwatch): Make processor failures independent of each other
2020-08-24 22:45:02 +02:00
Łukasz Magiera
71a2dc06d7
Merge pull request #3259 from GFZRZK/master
...
Bugfix: fix some typo and correct recoveries datasource
2020-08-24 22:44:36 +02:00
Łukasz Magiera
6a7cb669ac
Merge pull request #3250 from filecoin-project/fix/miner-info-avail
...
miner info: Fix avail calc, print aggregate deal info
2020-08-24 18:10:07 +02:00
WC
119f6ff2e6
Bugfix: fix some typo and correct recoveries datasource
...
Bugfix: fix some typo and correct recoveries data source
2020-08-24 14:56:44 +08:00
Mike Greenberg
80f8f71a96
fix(lint): Cleanup unneeded error returns; go mod tidy
2020-08-23 16:51:12 -04:00
Mike Greenberg
7e0ba4aa32
fix(chainwatch): Reduce default max-batch to 50
2020-08-23 13:01:10 -04:00
Mike Greenberg
da8dbc8ffe
fix(chainwatch): Make processor failures independent of each other
2020-08-23 01:59:15 -04:00
Łukasz Magiera
a236957538
Merge pull request #3232 from filecoin-project/asr/marked-for-upgrade
...
Indicate whether a sector has been marked for upgrade
2020-08-22 21:48:45 +02:00
Łukasz Magiera
12af420d7e
mod tidy
2020-08-22 19:16:45 +02:00
Łukasz Magiera
88016c17e4
miner info: Fix avail calc, print aggregate deal info
2020-08-22 19:15:08 +02:00
Aayush Rajasekaran
984e52acbc
Indicate whether a sector has been marked for upgrade
2020-08-21 15:53:39 -04: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
Whyrusleeping
af3fe206d6
Merge pull request #3122 from filecoin-project/feat/cmd-improvements
...
sorted deal listings
2020-08-20 13:29:01 -07:00
Aayush Rajasekaran
93e566d7e0
Change docs.lotu.sh links to lotu.sh
2020-08-20 12:45:41 -04:00
Łukasz Magiera
364e3229b9
Merge pull request #3178 from filecoin-project/feat/miner-init-from-flag
...
add a from flag for miner init
2020-08-20 17:09:03 +02:00
Łukasz Magiera
0acc461cb1
Merge pull request #3185 from filecoin-project/fix/chainwatch/fix-nil-smoothing-estimate
...
fix(chainwatch): Handle RewardState.EpochSmoothingEstimate == nil
2020-08-20 11:20:58 +02:00
Łukasz Magiera
cd82f79d35
Merge pull request #3191 from filecoin-project/feat/miner-data-transfers
...
Add data transfer list command to miner
2020-08-20 11:18:56 +02:00
hannahhoward
0086f76a90
feat(lotus-miner): add data transfer list cmd
...
add equivalent command to list data transfers on miner side, extract common functionality for reuse
2020-08-20 01:35:48 -07:00
Travis Person
3eeec8d438
lotus-pcr: fix refund math
2020-08-20 08:28:53 +00:00
Mike Greenberg
bf10de82df
fix(chainwatch): Handle RewardState.EpochSmoothingEstimate == nil
2020-08-20 01:55:17 -04:00
whyrusleeping
2675ffb128
add a from flag for miner init
2020-08-19 17:34:58 -07:00
Łukasz Magiera
885f357c59
Merge pull request #3175 from filecoin-project/feat/control-addersses-control
...
Wire up miner control addresses, use for PoSt
2020-08-20 02:24:33 +02:00
Łukasz Magiera
de41f63fa4
miner info: Also print locked pledge
2020-08-20 02:03:42 +02:00
Łukasz Magiera
a4807b18bc
gofmt, api docstring
2020-08-20 01:26:13 +02:00
Łukasz Magiera
5ea61abfe1
Wire up miner control addresses, use for post
2020-08-20 01:17:03 +02:00
Łukasz Magiera
f943ea7d5d
Merge pull request #3170 from filecoin-project/frrist/chainwatch-SectorOnChainInfo-ext
...
refactor(cw): add new values to sector_info table and smoothing estimate
2020-08-19 23:58:22 +02:00
Łukasz Magiera
ed098390cb
Merge pull request #3172 from filecoin-project/feat/lotus-shed-jwt
...
lotus-shed: add simple jwt creation support
2020-08-19 23:32:01 +02:00
frrist
05f1a23c94
feat(chainwatch): power actor smoothing estimate
2020-08-19 13:34:58 -07:00
frrist
fecaeda382
feat(chainwatch): reward actor smoothing estimate
2020-08-19 13:05:07 -07:00
frrist
3df85ca784
refactor(chainwatch): add new values to sector_info table
2020-08-19 13:05:07 -07:00
whyrusleeping
2ab202a03d
fixup ID allocation and a few other things
2020-08-19 12:54:33 -07:00
Travis Person
f1632376e7
lotus-shed: add simple jwt creation support
2020-08-19 19:21:36 +00:00
Łukasz Magiera
e47e51275a
Merge pull request #3138 from filecoin-project/feat/remainder
...
place the remainder of unallocated funds in a 'remainder' account
2020-08-18 23:52:19 +02:00
whyrusleeping
916bebadef
setup proper template defaults
2020-08-18 14:34:35 -07:00
Łukasz Magiera
19be380b53
Merge pull request #3152 from filecoin-project/fix/chainwatch/rpc-peer-id-bug
...
fix(api): Filter malformed peer ID before RPC marshaling
2020-08-18 23:07:55 +02:00
Mike Greenberg
8675ca561d
fix(api): Filter malformed peer ID before RPC marshaling
2020-08-18 16:29:21 -04:00
Łukasz Magiera
3fd4921ea3
Merge pull request #3147 from filecoin-project/feat/fsm-seal-limits
...
fsm: Config for limiting max sealing sectors
2020-08-18 21:54:41 +02:00
Łukasz Magiera
d1cb60bdee
Merge pull request #3118 from filecoin-project/feat/improve-pcr
...
lotus-pcr: refund provecommit sectors
2020-08-18 21:18:45 +02:00
Łukasz Magiera
2570712a29
Merge pull request #3135 from filecoin-project/feat/genesis-block-linkage
...
proper genesis block history
2020-08-18 19:28:55 +02:00
Łukasz Magiera
e7d65be90a
gofmt
2020-08-18 18:27:28 +02:00
Mike Greenberg
fabf26cc21
fix(chainwatch): Actually capture human actor names
2020-08-18 00:22:01 -04:00
Mike Greenberg
94e4f8d116
fix(chainwatch): Ignore blocks missing from local blockstore during processing
2020-08-18 00:22:01 -04:00
Mike Greenberg
6734287789
fix(chainwatch): Change tmp table names to not collide
2020-08-18 00:22:01 -04:00
whyrusleeping
13e5b72cdb
proper genesis block history
...
Commit hash originally stamped into the ethereum blockchain:
https://etherscan.io/tx/0xe8f51c9eefb682cd866f059462577b6dd3d2685ff4b6437f6c940ff4f4aaf067
2020-08-17 21:13:43 -07:00
Aayush Rajasekaran
4ef5a58b36
strip peerid when setting on-chain addrs
2020-08-17 21:18:26 -04:00
Aayush Rajasekaran
01b5118a08
Add a CLI method to set peerid
2020-08-17 20:53:02 -04:00
whyrusleeping
ef8b9eae93
add lotus keygen utility
2020-08-17 17:29:26 -07:00
whyrusleeping
f05cff478f
sorted deal listings
2020-08-17 14:48:49 -07:00
Travis Person
5040623a12
lotus-pcr: refund provecommit sectors
2020-08-17 21:29:59 +00:00
Łukasz Magiera
2e78ed685f
Merge pull request #3113 from filecoin-project/fix/chainwatch/calibration-improvements
...
Chainwatch Improvements
2020-08-17 19:06:05 +02:00
Łukasz Magiera
29db7047a3
Merge pull request #3112 from filecoin-project/fix/sched-hang
...
Fix sealing sched hands on unclean worker disconnect
2020-08-17 18:43:25 +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
Mike Greenberg
80fef50b90
feat(chainwatch): Include detailed economic data per epoch
2020-08-17 12:22:34 -04:00
Łukasz Magiera
f31473c4cf
Update jsonrpc to fix sealing sched hangs
2020-08-17 17:36:21 +02:00
Łukasz Magiera
09dbd12638
Merge pull request #3107 from yaohcn/feat/addpiece-configurable
...
make addpiece configurable
2020-08-17 17:35:09 +02:00
Mike Greenberg
b37a39588e
feat(chainwatch): Add full version to help/startup log via build param
2020-08-17 11:31:59 -04:00
Mike Greenberg
0b498d25f6
fix(chainwatch): Actor code are human readable
2020-08-17 11:18:35 -04: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
Łukasz Magiera
7595b1d8d4
cli: pprof goroutines command
2020-08-17 11:49:11 +02:00
yaohcn
39bcfab37c
make addpiece configurable
2020-08-17 17:39:50 +08:00
yaohcn
aded4b4199
add missing restart flag
2020-08-17 16:04:50 +08:00
Łukasz Magiera
c5c819afca
Merge pull request #3098 from filecoin-project/feat/config-cmd
...
Add config command that prints the default config file for a storage …
2020-08-17 08:36:51 +02:00
lanzafame
0d3aaabd2c
Add config command that prints the default config file for a storage miner
2020-08-17 13:51:04 +10:00
Raúl Kripalani
3c17cd655e
integrate extern/sector-storage into lotus proper.
2020-08-16 11:09:58 +01:00
Raúl Kripalani
fb0ccc9260
integrate extern/storage-fsm into lotus proper.
2020-08-16 10:42:13 +01:00
vyzo
7f27c80a6a
move sleep into the select
...
as it is it simply slows down the writer if there are many messages
2020-08-15 21:20:02 +03:00