Lucas Molas
9b4cac9612
fix(sync state): set state height to actual tipset height
2020-10-12 21:14:16 -03:00
Łukasz Magiera
00620aac57
Merge pull request #4296 from filecoin-project/feat/sync-unmarkbad-all
...
sync unmark-bad --all
2020-10-10 22:35:56 +02:00
Steven Allen
7245ac2b69
fix a race in the sync manager
...
1. SyncerState contains a mutex and should never be copied. Honestly, this case
was probably fine but it's just as easy to create a separate snapshot type and
easier to reason about.
2. We need to initialize the syncStates array once at start, before accessing
it. By each syncer state inside each worker, we were racing with calls to
`State()`. Again, this was probably benign, but I don't trust optimizing
compilers.
2020-10-10 08:31:04 -07:00
Łukasz Magiera
18e58467f8
sync unmark-bad --all
2020-10-10 10:26:42 +02:00
Steven Allen
c0182f8301
return the correct err from iterFullTipset
2020-10-09 13:59:56 -07:00
Jakub Sztandera
973f61bc10
Optimize chain and message sync
...
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-10-08 23:10:07 +02:00
whyrusleeping
cdc2f86f5a
add more info to chain sync lookback failure
2020-10-08 09:45:07 -05:00
Lucas Molas
7e3339820f
fix(sync): remove checks bypass when we submit the block
2020-10-06 15:12:03 -03:00
Aayush Rajasekaran
4a9155ba85
Use new MinerEligibleToMine method post-v2 actors
2020-10-06 04:43:55 -04:00
Steven Allen
4989b1cc90
Merge branch 'master' into asr/spec-v1
2020-09-30 09:19:12 -07:00
Aayush Rajasekaran
c45c8f34a1
Parametrise whether sync validators should use cache
2020-09-30 01:39:06 -04:00
Łukasz Magiera
237c8c4deb
Merge pull request #3868 from austinabell/async/stransition
...
Make state transition in validation async
2020-09-29 16:50:52 +02:00
Aayush Rajasekaran
be9d23b329
Centralize some params in builtin
2020-09-29 02:25:43 -04:00
Steven Allen
233d8a9b72
update even more imports
2020-09-28 14:25:58 -07:00
Łukasz Magiera
2867b31d2b
Merge pull request #3208 from austinabell/extratsload
...
Update beacon entry load error message
2020-09-24 14:19:00 +02:00
whyrusleeping
b4e03d1759
batch blockstore copies after block validation
2020-09-23 18:53:28 -07:00
Aayush Rajasekaran
e09d291e5d
Merge pull request #3939 from filecoin-project/fix/chain-sync-validation
...
Validate chain sync response indices when fetching messages
2020-09-23 17:35:14 -04:00
Łukasz Magiera
a2278e26af
Merge pull request #3887 from filecoin-project/feat/parallel-sync
...
Parallel fetch for chain sync
2020-09-23 19:24:54 +02:00
Aayush Rajasekaran
a876a0ba44
Use actor state addresses
2020-09-23 02:32:40 -04:00
vyzo
5663b2d697
change GetChainMessages api to include tipsets for validation
2020-09-21 18:58:52 +03:00
vyzo
f135ec8468
fix handling of end of sync
2020-09-21 09:21:25 +03:00
Łukasz Magiera
70faa36b7f
Merge remote-tracking branch 'origin/master' into refactor/net-upgrade
2020-09-18 19:29:06 +02:00
vyzo
6dfc40abc1
error is nil at end, so return batch, nil
2020-09-17 18:23:50 +03:00
vyzo
2946561dec
clean up return code
2020-09-17 18:07:01 +03:00
vyzo
d7948fcbcd
fix log; we want to log time when we succeed!
2020-09-17 18:07:01 +03:00
vyzo
fb605f6d7f
refactor parallel fetch logic into a separate function
2020-09-17 18:07:01 +03:00
vyzo
2a428f09e6
increase exchange ShufflePeersPrefix to 16, use that as the value of concurrent sync requests
2020-09-17 18:07:01 +03:00
vyzo
8a4b629f40
increase sync request batch size to 8
2020-09-17 18:07:01 +03:00
vyzo
b984e94a87
fix bug
2020-09-17 18:07:01 +03:00
vyzo
05a233f84d
add some more logging
2020-09-17 18:07:01 +03:00
vyzo
35f6e10646
parallel chain sync
2020-09-17 18:07:01 +03:00
austinabell
ca956ca57e
Merge branch 'master' of github.com:filecoin-project/lotus into async/stransition
2020-09-16 11:23:55 -04:00
Aayush Rajasekaran
90853e24cf
Add a boolean HasMinPower to return of GetPower
2020-09-16 01:47:24 -04:00
Aayush Rajasekaran
b4ee519282
Partial progress towards switching to miner and power interfaces
2020-09-16 01:37:49 -04:00
jennijuju
5c69249ba3
Use window post
for window PoSt related log messages.
2020-09-15 21:22:29 -04:00
austinabell
e53aee26a3
Make state transition in validation async
2020-09-15 18:36:06 -04: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
Steven Allen
cc4d5306eb
Progress
2020-09-14 15:43:12 -07:00
Steven Allen
02dcb5e182
Merge branch 'master' into refactor/net-upgrade
2020-09-14 14:53:57 -07:00
Steven Allen
9804310cc8
Update specs-actors to 0.9.10
...
Moves the Keyer type (and helpers) into go-state-types.
2020-09-14 14:32:57 -07:00
Raúl Kripalani
dd841f32db
syncer: make SyncManager an interface.
2020-09-14 21:58:59 +01:00
Łukasz Magiera
06ec571c20
Merge remote-tracking branch 'origin/master' into refactor/net-upgrade
2020-09-14 15:09:52 +02:00
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
db6bd890d9
condition randomness changes on fork height
...
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-09-10 17:41:55 -04:00
Steven Allen
7a46c5ff31
[WIP] Fix ticket randomness
...
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-09-10 17:41:55 -04:00
Jakub Sztandera
2d3f92aeed
Introduce beacon Schedule
...
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-09-10 17:41:55 -04:00
Aayush Rajasekaran
f0554676dd
Explicitly check tipsetkeys when considering checkpoint
2020-09-09 14:34:05 -04:00
Aayush Rajasekaran
5c852e26c2
Add a SyncUnmarkBad API
2020-09-09 14:34:05 -04:00
Aayush Rajasekaran
35aa78dad9
Allow marking a certain tipset as checkpointed
2020-09-09 14:34:00 -04:00
Łukasz Magiera
cb3b0ab2bb
Merge remote-tracking branch 'origin/master' into blocksync-refactor
2020-09-09 19:19:05 +02:00
Jakub Sztandera
44f4372ca3
Add StageFetchingMessages to sync status
...
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-09-08 20:42:20 +02:00
Raúl Kripalani
b33db9c1ab
Merge branch 'master' into blocksync-refactor
2020-09-08 14:22:43 +01: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
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
f6f5405a2c
Fix lint
2020-09-07 18:21:45 +02:00
Travis Person
f7b52d16f5
metrics: add expected height metric
2020-09-07 02:57:12 +00:00
austinabell
485f13de12
Remove load check
2020-09-02 16:45:23 -04:00
austinabell
7f3ba0e6eb
Merge branch 'master' of github.com:filecoin-project/lotus into extratsload
2020-09-02 16:44:06 -04:00
vyzo
806f7dd15f
windowSize should not exceed blocksync.MaxRequestLength
2020-08-28 23:18:06 +03:00
vyzo
63a60cdd75
be more conservative in increasing the window size, check that we actually had more messages
2020-08-28 23:09:48 +03:00
vyzo
3935fd77ac
remember syncer windowSize
2020-08-28 22:52:40 +03:00
vyzo
4e7fd5b6d7
sync: increase window size when successful fetching messages
2020-08-28 22:03:06 +03:00
vyzo
1f660c9e04
sync: half window size and retry when fetching messages fails
2020-08-28 18:45:20 +03:00
whyrusleeping
a33784c434
print block 'age' when validating blocks during sync
2020-08-26 14:48:53 -07:00
whyrusleeping
a553db4b82
Add some tracing and the ability to tweak message fetch window size
2020-08-25 12:39:17 -07:00
austinabell
e4daadbfcf
Remove extra tipset load from checking beacon entries
2020-08-20 17:54:59 -04: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
Raúl Kripalani
3c17cd655e
integrate extern/sector-storage into lotus proper.
2020-08-16 11:09:58 +01:00
Jakub Sztandera
bf774fc29b
Simplify sync logic around tipset expansions, ff and forking
...
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-08-07 23:02:13 +02:00
Aayush Rajasekaran
88f677e891
Fix error message
2020-08-07 14:36:24 -04:00
Łukasz Magiera
e0b86782e9
Merge pull request #2895 from filecoin-project/feat/fix-tests
...
Fix
2020-08-07 18:37:40 +02:00
Anton Evangelatov
9fa42680fe
rationalise annoying logs.
2020-08-07 15:53:55 +02:00
Łukasz Magiera
b216785071
sync: Revert #2858
2020-08-07 14:46:46 +02:00
Łukasz Magiera
07bf155295
Merge remote-tracking branch 'origin/next' into feat/dyn-base-fee
2020-08-06 23:41:54 +02:00
Whyrusleeping
2212c10f3a
Merge pull request #2858 from filecoin-project/asr/sync-fix
...
Fix collectHeaders when incoming is partially built on latest tipset
2020-08-06 13:46:44 -07:00
Jakub Sztandera
722d6e8ffb
Introduce base fee
...
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-08-06 21:14:38 +02:00
Jakub Sztandera
a625943fc3
Fix Weight issue
...
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-08-06 21:14:38 +02:00
Łukasz Magiera
e2d5451ffb
Merge pull request #2715 from filecoin-project/schomatis/blocksync/review
...
Rewrite internal logic of block sync client
2020-08-06 19:46:58 +02:00
Aayush Rajasekaran
6e8d51af02
Fix collectHeaders when incoming is partially built on latest tipset
2020-08-06 02:24:29 -04:00
Lucas Molas
7982ab52a7
check connection between fetched segments during sync
2020-08-04 15:06:30 -03:00
Jakub Sztandera
a58edeb96f
Tighten up timestamp check
...
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-08-03 18:39:27 +02:00
Lucas Molas
76d40ec408
first pass, ready for review
2020-08-03 12:20:04 -03:00
Łukasz Magiera
4cb4e7c2c2
Merge remote-tracking branch 'origin/master' into next
2020-07-31 14:02:04 +02:00
Aayush Rajasekaran
b51e2a868b
Merge branch 'next' into feat/cid-builder
2020-07-28 21:02:30 -04:00
Aayush Rajasekaran
859168015a
Use specs actor's MinerNominalPowerMeetsConsensusMinimum
2020-07-28 17:21:05 -04:00
Łukasz Magiera
09b90773d8
Merge remote-tracking branch 'origin/next' into feat/cid-builder
2020-07-28 16:06:06 +02:00
Simon Peffers
78739d9417
Fixes for failed CI tests
2020-07-26 00:46:23 -04:00
Simon Peffers
0f3105a01f
Integrate blst signature library: https://github.com/supranational/blst
2020-07-25 21:38:18 -04:00
Steven Allen
b7a4dbb07f
Support inline CIDs
...
And use the new CidBuilder from the spec actors.
This patch does not switch over to inline CIDs by default, but paves the way.
2020-07-23 23:12:32 -07:00
lanzafame
9207315b25
Change block validation aggregation type from sum to distribution
2020-07-24 15:47:41 +10:00
Steven Allen
5fc83f4d05
Refactor to use actor adt types instead of directly using HAMTs and AMTs
...
This way there's a single source of truth. Preparation for fixing
https://github.com/filecoin-project/specs-actors/issues/517 (requires changing
HAMT parameters).
2020-07-23 09:34:57 -07:00
Jakub Sztandera
8fb3f7e40e
Fix bls verification when there are no messages
...
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-07-22 21:59:05 +02:00
whyrusleeping
75b9fdc0a0
return multierror after creation
2020-07-22 11:53:56 -07:00
Jakub Sztandera
02631155dc
Add block gas limit verification
...
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-07-16 01:00:03 +02:00
Raúl Kripalani
a44e80c829
Merge branch 'next' into mock-clock
2020-07-15 15:51:11 +01:00
Lucas Molas
0313ab4e49
debug: standard PoSt tag
2020-07-14 19:22:25 -03:00
Raúl Kripalani
0484496d92
Merge branch 'next' into mock-clock
2020-07-14 18:08:26 +01:00
Łukasz Magiera
2e4ed57363
Merge remote-tracking branch 'origin/master' into next
2020-07-13 13:34:56 +02:00