Jakub Sztandera
483b33acd1
Move SelectMessages to its own file
...
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-07-31 14:27:28 +02:00
whyrusleeping
4bbe5abf81
improve slow block production logs
2020-07-29 14:20:07 -07: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
fb59b40507
Fix some tests
2020-07-28 18:16:56 +02:00
whyrusleeping
cd00b0090b
mitigate epoch boundary attacks by randomizing cutoff
2020-07-21 11:42:38 -07:00
Anton Evangelatov
69ebd2bb85
move mutex before select
2020-07-20 17:45:46 +02:00
Jakub Sztandera
399c171f03
Update gas limits, update storage-fsm
...
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-07-15 21:21:53 +02:00
Jakub Sztandera
7b14d445b4
Update message gas limits
...
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-07-15 20:01:57 +02:00
Raúl Kripalani
a44e80c829
Merge branch 'next' into mock-clock
2020-07-15 15:51:11 +01:00
Raúl Kripalani
86457e5201
fix flaky test (miner#TestMessageFiltering). ( #2411 )
2020-07-15 15:50:32 +01:00
Raúl Kripalani
55d88440eb
refine block timing log statements.
2020-07-14 17:12:00 +01:00
Raúl Kripalani
13de81b3b2
introduce the ability to mock time.
2020-07-10 15:51:45 +01:00
Łukasz Magiera
18199ff323
Merge pull request #2223 from filecoin-project/feat/miner-msg-select-use-gas-price-is-more-better
...
miner: Use gas price when selecting messages
2020-07-09 21:53:16 +02:00
Yusef Napora
ea5dc461a1
pass error into waitFunc callback
2020-07-03 17:15:43 -04:00
Yusef Napora
d6d68b9096
call waitFunc callback on mining error
2020-07-03 09:56:40 -04:00
Łukasz Magiera
70cac6ce08
miner: Use gas price when selecting messages
2020-07-01 20:35:19 +02:00
Łukasz Magiera
e949a458ec
miner: Fix mpool too-high-nonce-msgs log
2020-07-01 12:53:27 +02:00
Raúl Kripalani
1ef490feea
rename build.PropagationDelay{=>Secs}.
2020-06-30 15:01:30 +01:00
Raúl Kripalani
4f9c907248
rename build.{BlockDelay=>BlockDelaySecs}.
...
Since this global is not typed as a time.Duration,
rather as an int, it makes sense to clarify the unit.
2020-06-30 14:26:49 +01:00
Raúl Kripalani
0fddf3e114
make system constants configurable as vars.
...
This configurability is unlocked through the `testground`
build tag, which Project Oni will uses.
Changes in the usage places of these relaxed constants
were required due to the fact that Golang constants are
untyped, but vars aren't.
Read https://blog.golang.org/constants for more info.
2020-06-30 14:18:26 +01:00
waynewyang
8d51a20143
fix: mining logic
2020-06-28 18:20:56 +08:00
Jakub Sztandera
008a2969b2
Fix two races in events
...
Also race fix: depends on https://github.com/ipfs/go-blockservice/pull/65
Resolves #2092 , #2099 , #2108 , #1930 , #2110
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-06-24 17:05:24 +02:00
Raúl Kripalani
c8104a03e6
some initial godocs. ( #2118 )
2020-06-23 18:51:25 -03:00
Jeromy
c7e3a5cff4
fix null incrementing
2020-06-12 02:28:17 +02:00
Jakub Sztandera
c90d35869b
Add gas tracing
...
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-06-11 21:59:39 +02:00
Jeromy
9d49c6861f
don't update the mining base if mining fails for some reason
2020-06-08 09:51:47 -07:00
Łukasz Magiera
7003960fdd
Merge remote-tracking branch 'origin/master' into next
2020-06-01 18:52:06 +02:00
Howard Yeh
1cabecedee
Fix block production timing to avoid mining old tipset
2020-05-29 18:13:58 +08:00
Jakub Sztandera
4604b60fb1
Remove drand on miner side, MinerGetBaseInfo provides the same info
...
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-05-27 20:24:26 +02:00
Jeromy
eaf69b160c
having power below the minimum means not having power
2020-05-18 14:51:42 -07:00
Łukasz Magiera
b90666b293
miner: optimize SelectMessages
2020-05-15 19:30:31 +02:00
Jeromy
88fa9726cc
use chainmsg type instead of unsigned message for gas price checking
2020-05-14 12:44:26 -07:00
Jeromy
881b0517b1
reuse logic between message selection and validation
2020-05-14 12:29:11 -07:00
Jeromy
1d8c8b9a8e
check gas limits on messages more places
2020-05-12 22:36:43 -07:00
Jeromy
368fff246b
replace outdated comment
2020-05-05 12:39:43 -07:00
Jeromy
8b58f22c2e
block producers should have only one address
2020-05-05 12:01:44 -07:00
Jeromy
be2a357102
winning post wants the actual epoch of the block, not the previous
2020-05-01 12:42:59 -07:00
Jeromy
bee25d221f
fix mining base randomness
2020-04-30 15:11:14 -07:00
Jeromy
c4852e04c9
Use miner address in randomness mixing
2020-04-30 13:21:46 -07:00
Jeromy
4b3cc2ca7e
fix winning post inputs
2020-04-30 11:27:22 -07:00
Jeromy
d73b369fa5
implement latest changes to randomness
2020-04-29 16:50:45 -07:00
Whyrusleeping
b2dda08368
respect shutdown signals when sleeping in miner code ( #1617 )
2020-04-27 15:54:41 -07:00
Łukasz Magiera
c137b0cf73
Merge remote-tracking branch 'origin/testnet/3' into feat/newminer
2020-04-23 23:53:23 +02:00
Łukasz Magiera
86e7f5914b
testing: test 2-miner mining
2020-04-23 23:20:02 +02:00
Whyrusleeping
faa9002cce
working on sector pledge requirements after specs-actors 1.0.0 ( #1584 )
...
* WIP: working on sector pledge requirements after specs-actors 1.0.0
* update storage-fsm with pledge collateral logic
* Set bigger balances for miners
* Return only additional required pledge
* split collateral methods into two methods
Co-authored-by: Łukasz Magiera <magik6k@gmail.com>
2020-04-23 12:39:34 -07:00
Jeromy
91f56742c4
Use lookback to get sector set and power for miners
2020-04-17 16:44:18 -07:00
Łukasz Magiera
712e2683d6
miner: proving info commands
2020-04-18 00:02:18 +02:00
Łukasz Magiera
93b2b6d65d
Merge branch 'testnet/3' into feat/windowed-post
2020-04-17 18:38:20 +02:00
Jeromy
708988244d
WIP: working on winning post integration
2020-04-16 22:39:55 -07:00
Łukasz Magiera
dc2a67f13f
Fix worker key resolving
2020-04-16 22:38:42 +02:00
Łukasz Magiera
afdfc8807d
api: Single method for static miner info
2020-04-16 19:36:36 +02:00
Jeromy
674be39af1
real drand network integration
2020-04-13 20:06:10 -07:00
Łukasz Magiera
613e61222b
mostly wire up WindowedPoSt
2020-04-10 23:07:18 +02:00
Jeromy
83416e2758
remove deadcode
2020-04-09 10:34:54 -07:00
Jeromy
ac271b021d
finish addressing review
2020-04-09 10:13:09 -07:00
Jeromy
c5c18659a4
address some review
2020-04-08 17:24:10 -07:00
Jeromy
ef6fb1b756
rename beacon to randombeacon
2020-04-08 16:10:08 -07:00
Jakub Sztandera
1bd28bdb6a
Fix lint errors
...
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-04-08 21:37:04 +02:00
Jakub Sztandera
ce4978d8c3
Reintroduce correct ticket randomness alongside ElectionProof
...
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-04-08 21:06:41 +02:00
Jakub Sztandera
f1c890ca54
Tests pass
...
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-04-08 18:31:16 +02:00
Jeromy
8e0ca306d2
more wiring up of drandomness
2020-04-08 08:11:42 -07:00
Jakub Sztandera
9fd1b95fd5
Fix build errors
...
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-04-07 15:32:23 -07:00
Jakub Sztandera
9c250f24fa
Nex wip
...
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-04-07 15:32:23 -07:00
Jakub Sztandera
afdb1db529
drand wip
...
,
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-04-07 15:32:23 -07:00
Jeromy
7075eaba26
WIP: random beacon interface
...
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-04-07 15:32:23 -07:00
Jakub Sztandera
326490be86
Fix miner
...
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-03-26 17:26:48 +01:00
Jeromy
90f43d99ca
cbor marshal address for ticket generation
2020-03-20 14:56:05 -07:00
whyrusleeping
ddf1beac6c
change gas limit to be a normal int64
2020-03-18 13:45:37 -07:00
whyrusleeping
baca881473
dont panic when replay fails to find a message
2020-03-10 12:44:50 -07:00
Łukasz Magiera
d787aa5007
Merge branch 'testnet/3' into feat/specs-actors
2020-02-24 18:32:02 +01:00
Łukasz Magiera
917df9a5b8
More unified randomness handling
2020-02-23 21:00:47 +01:00
Aayush Rajasekaran
60970008c8
Re: #1250 : API methods should receive TipSetKeys, not TipSets, as input
2020-02-17 19:53:43 -05:00
Łukasz Magiera
255f511abd
storageminer: Updates to new types
2020-02-12 23:12:11 +01:00
Łukasz Magiera
13435aebdc
Spec Actors integration
2020-02-08 03:18:32 +01:00
Łukasz Magiera
11a6bff416
miner: Handle stop signal when sleeping
2020-01-23 11:10:42 +01:00
whyrusleeping
6ccf24ce6c
Fix miner tests, push back fork time
2020-01-16 23:10:47 -08:00
whyrusleeping
c6186a03f1
quick mechanism to prevent miners from submitting slashable blocks
2020-01-16 22:58:10 -08:00
whyrusleeping
0c227e89b2
fix last miner test, go mod tidy
2020-01-16 22:39:23 -08:00
whyrusleeping
611dd77442
properly filter messages during compute state
2020-01-16 19:36:54 -08:00
Łukasz Magiera
7da41f0fdc
miner: Don't fail on actor not found in selectMessages
2020-01-14 16:12:26 +01:00
Jakub Sztandera
1ed62628a7
Update go-log to v2
...
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-01-08 20:22:31 +01:00
whyrusleeping
a109ae1490
introduce a limit on the number of messages a block can have
2020-01-07 12:41:26 -08:00
hannahhoward
8418464d91
refactor(address): use extracted address library
...
Switch to using extracted address library
2020-01-07 14:53:27 +01:00
whyrusleeping
42074ff041
add command to get sector size of a miner
2019-12-12 12:31:22 +01:00
whyrusleeping
d64f8a38d1
implement a minimum miner size
...
License: MIT
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2019-12-09 21:30:04 +01:00
Łukasz Magiera
3673a9110f
Merge pull request #743 from filecoin-project/feat/static-check-2
...
more of that sweet staticcheck goodness
2019-12-05 12:21:43 +01:00
marco-storswift
c337a5b728
bugfix haspower meaning
2019-12-05 13:49:11 +08:00
whyrusleeping
613a0a05a0
more of that sweet staticcheck goodness
2019-12-04 18:04:09 -08:00
whyrusleeping
99dfb8df68
dont add too many messages to a block
2019-12-03 22:18:02 -08:00
whyrusleeping
2d15e925cd
WIP: improve timing of mining
2019-12-03 18:53:49 -08:00
Łukasz Magiera
9bb054a767
slightly cleaner IsRoundWinner
2019-12-03 22:27:07 +01:00
whyrusleeping
569bcce878
sorting is not necessary
2019-12-03 12:23:56 -08:00
whyrusleeping
d0448287a9
remove unnecessary code
2019-12-03 12:05:54 -08:00
Łukasz Magiera
0e4c59d6a7
miner: Don't deduce balance twice per msg in actorLookup
2019-12-03 20:47:17 +01:00
Łukasz Magiera
9c6e9212a2
mining: get pending messages early
2019-12-03 19:25:56 +01:00
Łukasz Magiera
5810922441
This helps for some reason
2019-12-03 17:39:47 +01:00
whyrusleeping
9ad4a00cda
fix miner message filter nonce checking
2019-12-03 13:38:50 +01:00
Łukasz Magiera
8e09fd6ca8
Merge pull request #696 from filecoin-project/fix/propagation-delay
...
fix propagation delay to be a sane number
2019-12-03 13:35:25 +01:00
whyrusleeping
84f07cee35
fix null block mining
2019-12-02 23:58:38 -08:00
whyrusleeping
1b8aa2c2b4
fix propagation delay to be a sane number
2019-12-02 20:34:41 -08:00
whyrusleeping
4500a36ec6
some useful log messages
2019-12-02 16:08:08 -08:00
whyrusleeping
8da3cc875e
Fix message nonce tracking during head changes
2019-12-02 14:33:11 -08:00
Łukasz Magiera
b255b57de8
Demote BestMiningCandidate error to wanning
2019-12-02 21:04:04 +01:00
Łukasz Magiera
28ddc904b4
Miner can have no power without being slashed
2019-12-02 20:52:15 +01:00
whyrusleeping
422e25c8e6
self review: some cleanup
2019-11-30 22:02:52 -06:00
whyrusleeping
59d9c681ad
Rework miner test setups to fix tests
2019-11-30 17:21:11 -06:00
whyrusleeping
3b533ed76c
Genesis miner config actually sets the created miner address now
2019-11-29 22:31:26 -06:00
Łukasz Magiera
703bc7e774
Fix slashing / power recovery issues
2019-11-29 21:18:34 +01:00
Łukasz Magiera
d2412f4f00
Fix pond
2019-11-27 15:18:51 +01:00
Łukasz Magiera
23e0008b81
Merge remote-tracking branch 'origin/master' into feat/election-post
2019-11-27 13:31:44 +01:00
Łukasz Magiera
871c30d2a0
WIP trying to get election post to compute
2019-11-26 16:15:41 +01:00
whyrusleeping
a0588d513d
Add lotus-gen, rewire genesis mining
2019-11-24 22:45:13 -06:00
Łukasz Magiera
c7b34153fb
more mpooland post sched fixes
2019-11-24 17:35:50 +01:00
whyrusleeping
f03198c8a0
sync tests passing, still no vm integration
2019-11-22 10:41:09 -06:00
Jakub Sztandera
36b7c5a32a
Swtich to xerrors
...
License: MIT
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2019-11-22 10:20:56 -06:00
whyrusleeping
96482f456a
WIP: election post restructuring
2019-11-21 16:21:45 -06:00
whyrusleeping
c4564c0597
use proper round number, allow block signature to be nil
2019-11-20 10:54:10 -06:00
whyrusleeping
f8eabd3db4
Refactor mining logic to match specs ticket chain
2019-11-20 10:52:36 -06:00
Jakub Sztandera
fe8a700a4f
Fix race in miner
...
License: MIT
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2019-11-19 17:21:54 -06:00
Jakub Sztandera
463cdbb499
Make extra extra sure that we won't get slashed
...
License: MIT
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2019-11-19 13:36:03 -06:00
Jakub Sztandera
6e1bee3f8a
fix typo
...
License: MIT
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2019-11-18 19:05:51 -06:00
Jakub Sztandera
bf556e2c99
Support multiple miners
...
License: MIT
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2019-11-18 15:59:31 -06:00
Łukasz Magiera
29778cd653
Mostly fix TestDealFlow
2019-11-07 01:18:06 +01:00
Jakub Sztandera
1bf713cb0a
Cleanup imports after rename
...
License: MIT
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2019-10-18 13:47:41 +09:00
Łukasz Magiera
6a50f23cd7
pond: storage miner method updates
2019-10-15 14:31:34 +02:00
Łukasz Magiera
29f26cb8d1
Compiling with the new weight func
2019-10-15 14:31:34 +02:00
Łukasz Magiera
fb80d75b07
Almost building weight function
2019-10-15 14:31:34 +02:00
Łukasz Magiera
2ce338e162
wip weight function
2019-10-15 14:31:34 +02:00
whyrusleeping
7c26e3c35f
WIP: ensure blocks make it into repo before pushing to pubsub
2019-10-14 23:21:37 +09:00
Jakub Sztandera
4ff717e881
Make the mined block in the past
structured
...
License: MIT
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2019-10-14 15:51:51 +02:00
whyrusleeping
f478267fd1
fix tests
2019-10-14 13:32:55 +09:00
whyrusleeping
62057a8929
reject messages with bad 'To' addresses
2019-10-14 12:28:19 +09:00
Jakub Sztandera
49e3fe39f8
Structure logs
...
License: MIT
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2019-10-11 02:00:04 +02:00
Łukasz Magiera
14d88d27b4
miner: Alos check lastbase ticket
2019-10-10 04:03:42 +02:00
Łukasz Magiera
30d7a714a9
miner: don't mine on the same base twice
2019-10-10 02:39:53 +02:00
Łukasz Magiera
3fd2f3da7a
miner: Log late blocks
2019-10-10 02:22:32 +02:00
whyrusleeping
8a374232fb
if we mine a null round, wait until end of current round before attempting to continue
2019-10-09 18:23:43 +09:00
whyrusleeping
a6f6674468
don't sleep if no block mined
2019-10-09 18:11:41 +09:00
whyrusleeping
19b16077fe
remove VDFs from tickets
2019-10-09 13:38:59 +09:00
whyrusleeping
d82a1f8184
fix nonce checking and also check cumulative balance
2019-09-26 13:47:34 -07:00
whyrusleeping
8337dd52fe
handle messages with invalid nonces after balance filtering
2019-09-25 20:53:52 -07:00
whyrusleeping
f5ae64bf94
filter out messages that have insufficient funds from block production
2019-09-25 20:48:53 -07:00
Łukasz Magiera
a6dafed486
tests: Basic mining integration test
2019-09-23 19:50:15 +02:00
whyrusleeping
b1e77748e7
scaffolding and refactoring to make post scheduler work
2019-09-17 19:50:03 -07:00
whyrusleeping
75b343a54a
miner code needs to pass all tickets to create block
2019-09-13 14:12:23 -07:00
whyrusleeping
ed45d1c2b4
refactor state utilities into StateManager package, implement proper election proofs
2019-09-09 19:14:00 -07:00
whyrusleeping
6e21372ccb
initial refactor for creating tipsets with multiple parents
2019-09-09 19:12:32 -07:00
Łukasz Magiera
4a5aa680ae
deals: Address review
2019-09-09 21:21:37 +02:00
Łukasz Magiera
314141e4ea
Set timestamp in miner
2019-09-07 00:42:01 +02:00