Benjamin Canou
fdc6bf6b44
Baker, Endorser, exit on lost connection to node
2018-06-19 03:06:21 +02:00
Pierre Chambart
ce926e575a
Teamwork: Prevent leaks with never_ending
...
Lwt_utils.never_ending is a global variable, hence a GC root. A promise
created by binding it cannot ever be garbage collected. This fixes the
known leak in the baker an endorser by allocating a fresh one for each
use (by turning it into a function). This porbably fix other slower
leaks.
High five Klakplok and Vincent.
2018-06-19 03:06:21 +02:00
Benjamin Canou
a09f2cc53e
Alpha: drop old tests
2018-06-19 03:06:21 +02:00
Grégoire Henry
ec6db686d9
Alpha: remove block from endorsements
2018-06-19 03:06:21 +02:00
Galfour
392f6cec46
Tests: fix double_endorsement tests
2018-06-19 03:06:21 +02:00
Marco Stronati
b5c275c5fa
Alpha: reintroduce duplicate endorsement error
2018-06-19 03:06:21 +02:00
Grégoire Henry
1ab9a7a72c
Alpha: remove slots from endorsements
2018-06-19 03:06:21 +02:00
Benjamin Canou
41707f58d8
Baker: do not generate empty endorsements
2018-06-19 03:06:21 +02:00
Benjamin Canou
7500743a4d
Baker: record max level at each block, not each nonce revelation
2018-06-19 03:06:21 +02:00
Benjamin Canou
93a72ca28d
Baker: avoid infinite sleep to the past
2018-06-19 03:06:21 +02:00
Vincent Botbol
cf36510431
Docker: update docker configuration and fix wallet names
2018-06-19 03:06:21 +02:00
MBourgoin
4c65317681
Alpha/Baker: Use state_module to avoid double baking
2018-06-19 03:06:21 +02:00
MBourgoin
7d0c526644
Alpha/Endorser: Refactor State Module
2018-06-19 03:06:21 +02:00
Vincent Botbol
bea2344c3c
Storage: clean up leveldb artifacts
2018-06-19 03:06:21 +02:00
Raphaël Proust
8b73e812ac
Alpha/Baker: load protocol constants lazily
...
This avoids the baker refusing to start when the protocol alpha is not
yet activated.
2018-06-19 03:06:21 +02:00
Vincent Botbol
0fb25db95b
Alpha/Baker: add quota checks and fee sorted manager operations inclusion + quick fix in simulator
2018-06-19 03:06:21 +02:00
Vincent Botbol
ea9b3ae68c
Baker: add client-side validation
2018-06-19 03:06:21 +02:00
Vincent Botbol
0512ff55ce
Baking: split daemons into 3 different binaries
2018-06-19 03:06:21 +02:00
Vincent Botbol
efee9df1c7
Baking: fix baking daemon error when run on genesis
2018-06-19 03:06:21 +02:00
Raphaël Proust
904103496d
Alpha/Delegate: fix ci
2018-06-19 03:06:21 +02:00
Raphaël Proust
cb64c85d00
Alpha/Baker: keeping future slot for each delegate
2018-06-19 03:06:21 +02:00
MBourgoin
1d1bd2f7d1
Alpha/Endorser: less RPC calls
2018-06-19 03:06:21 +02:00
MBourgoin
669b1b02e7
Alpha/Endorser: Log timeout errors
2018-06-19 03:06:21 +02:00
MBourgoin
b9d97a7a94
Alpha/Endorser: typos
2018-06-19 03:06:21 +02:00
Raphaël Proust
ac20391c62
Alpha/daemons: some factorisation
2018-06-19 03:06:21 +02:00
Raphaël Proust
f221e21444
Alpha/Baker: keeping future slot for each delegate
2018-06-19 03:06:21 +02:00
Raphaël Proust
470a1e91f1
Alpha/Endorser: minor æsthetics
2018-06-19 03:06:21 +02:00
Raphaël Proust
a78eabda37
Alpha/Baker: Remember delegates
2018-06-19 03:06:21 +02:00
Raphaël Proust
3e71d21713
Alpha/Baker: better naming for error management
2018-06-19 03:06:21 +02:00
Raphaël Proust
99f3b8446c
Alpha/Baker: more client messages
2018-06-19 03:06:21 +02:00
Raphaël Proust
41a6c7f9b5
Alpha/Baker: clean up timeouts in main loop
2018-06-19 03:06:21 +02:00
Raphaël Proust
46de116fe7
Alpha/baker: wait for first block instead of error
2018-06-19 03:06:21 +02:00
Raphaël Proust
34aeaadb73
Alpha/Baker: major æsthetics
...
- decompose long functions into small sub-functions
- add comments
- factor some code
- polish out some unecessary bits and bobs
2018-06-19 03:06:21 +02:00
Raphaël Proust
397d011ed9
Alpha/endorser: one upcoming endorsment per key
2018-06-19 03:06:21 +02:00
Raphaël Proust
97fe3f5ca9
Alpha/Endorser: clean-up state after endorsment
...
Remove endorsment slot once it is used. This avoids repeated injection
of the same endorsment operation.
2018-06-19 03:06:21 +02:00
Raphaël Proust
b0e9e44673
Alpha/Endorser: wait for first block
2018-06-19 03:06:21 +02:00
Raphaël Proust
f4cadd37a5
Alpha/endorser: send client messages on success
2018-06-19 03:06:21 +02:00
Raphaël Proust
a63584ad63
Alpha/endorser: minor simplifications and cosmetics
2018-06-19 03:06:21 +02:00
Raphaël Proust
28abac0fb9
Alpha/endorser: bugfix
...
The `max_past` parameter, supposed to stop endorsing of blocks that are
too old, compared absolute times rather than relative times.
Specifically, it would check whether the block timestamp or the current
time was more recent than 110 seconds after epoch.
The new version checks whether the difference between the block
timestamp and the current time is greater than 110seconds.
2018-06-19 03:06:21 +02:00
Raphaël Proust
ac06ccf935
Alpha/Endorser: bugfix
...
When removing old endorsments from the wallet (to avoid it growing),
only old endorsments were kept, or no endorsments at all were kept.
In addition, that function relied on the endorsments being sorted by
level.
2018-06-19 03:06:21 +02:00
Raphaël Proust
16ea7da81d
client base: spacing
2018-06-19 03:06:21 +02:00
Vincent Botbol
cbcc808abc
rebase modifications
2018-06-19 03:06:21 +02:00
MBourgoin
f63b96dbd8
Baker: re-add endorsement delay
2018-06-19 03:06:21 +02:00
Pietro
c98fba3eef
alpha-baker: rename lib_baking -> lib_delegate
2018-06-19 03:06:21 +02:00
MBourgoin
589096680a
Baker: fix cherry-picking
2018-06-19 03:06:21 +02:00
Pietro
9d4be9caba
alpha-baker: Rename client_baking -> delegate
2018-06-19 03:06:21 +02:00
Vincent Botbol
5a3492ea8b
Baker: typos & refactoring
2018-06-19 03:06:21 +02:00
Mathias
a5bb58e146
Client/Endorser: use 'Data_encoding.assoc Raw_level.encoding'
2018-06-19 03:06:21 +02:00
Mathias
fcd29a36f3
Client/Endorser: remove endorsing scheduler
2018-06-19 03:06:21 +02:00
Vincent Botbol
852acc4710
Baking/Test: fix ci
2018-06-19 03:06:21 +02:00