anatoly yakovenko
f71cd2c6f3
Status cache runs out of space in the bloom filter ( #2796 )
...
The cache is designed for 1m statuses, about 1 second worth of transactions at full capacity. Refresh the cache every 1 second worth of ticks.
2019-02-16 16:41:03 -08:00
Greg Fitzgerald
e39094ac37
Hoist Slot Leader dependencies up to BankingStage
2019-02-16 15:36:31 -07:00
Greg Fitzgerald
b539389741
Move all Validator dependencies from Bank to blocktree_processor
2019-02-16 15:01:26 -07:00
Greg Fitzgerald
ac35fe9ed1
Flip the dependency; Create bank before scheduler
2019-02-16 14:16:48 -07:00
Greg Fitzgerald
3d70afc578
Boot leader scheduler from the bank
...
Functional change: the leader scheduler is no longer implicitly
updated by PohRecorder via register_tick(). That's intended to
be a "feature" (crossing fingers).
2019-02-16 14:16:48 -07:00
Greg Fitzgerald
b919b3e3b2
Bank no longer updates a leader scheduler by default
2019-02-16 14:16:48 -07:00
Greg Fitzgerald
7a7349f2ff
Don't update the leader scheduler in bank's default constructor
2019-02-16 14:16:48 -07:00
Greg Fitzgerald
07b57735b1
Move leader scheduler test out of bank
2019-02-16 14:16:48 -07:00
Greg Fitzgerald
3bfe2e75b5
Boot new_with_leader_scheduler_config
...
Only used in one place. Easy enough to use the one with the shared
leader scheduler.
2019-02-16 10:55:58 -07:00
Greg Fitzgerald
97c93629a5
Don't use the Bank's LeaderScheduler
2019-02-16 10:55:58 -07:00
Greg Fitzgerald
643384e1ec
Add LeaderScheduler constructor to Bank
...
By passing a config and not a Arc'ed LeaderScheduler, callers
need to use `Bank::leader_scheduler` to access the scheduler.
By using the new constructor, there should be no incentive to
reach into the bank for that object.
2019-02-16 10:55:58 -07:00
Greg Fitzgerald
1809277e05
Encapsulate Bank accounts
...
That way we don't need to TODOs saying "don't forget to iterate
over checkpoints too". It should be assumed that when the bank
references its previous checkpoint all its methods would
acknowledge it.
2019-02-16 08:41:35 -07:00
Greg Fitzgerald
7981865fd2
Boot unused confirmation-time from Bank
...
This broken metric is already submitted to influx. Why make it
available via RPC too? If so, why store it in the bank and not
in the RPC service?
2019-02-16 08:11:43 -07:00
Greg Fitzgerald
4467d5eb4c
Extract process_ledger from Bank
...
Fullnode was the only real consumer of process_ledger and it was
only there to process a Blocktree. Blocktree is a tree, and a
ledger is a sequence, so something's clearly not right here.
Drop all other dependencies on process_ledger (only one test) so
that it can be fixed up in isolation.
2019-02-16 08:07:26 -07:00
Stephen Akridge
573116e259
Remove count_last_ids API
2019-02-15 11:05:41 -08:00
Michael Vines
71ab030ea4
Fiddle with timeouts to make CI happy
2019-02-14 18:40:31 -08:00
Michael Vines
626a381ddc
Collect and re-forward packets received while TpuForwarder is shutting down
2019-02-14 18:40:31 -08:00
Michael Vines
cceeb8e52d
On leader rotation forward any unprocessed transaction packets to the new leader
2019-02-14 14:49:48 -08:00
Michael Vines
3f6aba23dd
Add custom BlocktreeConfig for bad tests that break with the default
2019-02-14 14:49:48 -08:00
Michael Vines
cd9dac4c7e
Use a reasonable max_tick_height
2019-02-14 14:49:48 -08:00
Michael Vines
f478894729
Revert "Set DEFAULT_TICKS_PER_SLOT = 32 to stabilize integration tests"
...
This reverts commit 2d2572d2cb
.
2019-02-14 14:49:48 -08:00
Michael Vines
97790480c9
Increase poll_for_signature retry timeout
2019-02-14 14:49:48 -08:00
Tyera Eulberg
9643c39bf6
Fix slot in block event
2019-02-14 14:25:54 -08:00
Carl
0a08d40237
fix repair service to support multinode tests that depend on repairs
2019-02-14 13:37:55 -08:00
Carl
d029997aef
add parent slot to broadcast
2019-02-14 13:37:55 -08:00
Carl
ceb27b431e
Add tree test to test multiple chaining children
2019-02-14 13:37:55 -08:00
Carl
b25d8ce764
Comment out repair service tests, to be fixed in another PR
2019-02-14 13:37:55 -08:00
Carl
34da362ee6
fix blocktree tests
2019-02-14 13:37:55 -08:00
Carl
de6109c599
replace num_blocks with parent block
2019-02-14 13:37:55 -08:00
carllin
736f08815e
Add protocol request for requesting the highest blob in a slot ( #2759 )
2019-02-14 12:47:21 -08:00
Sunny Gleason
106645d9bd
add message terminator (newline) to socket writer output to ease client integration
2019-02-14 12:27:53 -08:00
Greg Fitzgerald
4a0009365e
Use Account::owner as loader for executable accounts
2019-02-14 13:26:46 -07:00
Greg Fitzgerald
48671a1728
Let native_loader own native executable accounts
2019-02-13 20:55:36 -08:00
Greg Fitzgerald
72b6ec4aa8
Add native program account constructor
2019-02-13 20:55:36 -08:00
Michael Vines
8790a92f07
Adjust create_counter to avoid imposing an AtomicUsize import on users
2019-02-13 20:24:04 -08:00
Michael Vines
0f8ff07b51
tpu now hangs on to its cluster_info
2019-02-13 16:16:18 -08:00
Tyera Eulberg
be73db13e0
Improve EntryStream trait and struct names
2019-02-13 13:07:30 -08:00
Tyera Eulberg
cbaba5cbf3
Review comments
2019-02-13 13:07:30 -08:00
Tyera Eulberg
c1447b2695
Add block event logic to EntryStreamStage
2019-02-13 13:07:30 -08:00
Sunny Gleason
e58f08b60f
Refactor EntryStream
...
Co-authored-by: Sunny Gleason <sunny.gleason@gmail.com >
Co-authored-by: Tyera Eulberg <tyera@solana.com >
2019-02-13 13:07:30 -08:00
Stephen Akridge
ddc8bfed29
Fix bad window_send_test channel logic
...
Test could hang if the blobs are not sent in the right order.
2019-02-13 11:23:54 -08:00
Stephen Akridge
f1221d724d
Consolidate logic with entry helper function
...
Creates an entry and updates the hash.
Also cleanup blobs creation in test_replay
2019-02-13 11:23:54 -08:00
Michael Vines
863956d09c
Add multinode test for two nodes rotating at 1 tick per slot
2019-02-12 21:17:06 -08:00
Michael Vines
7118178e2c
Correctly compute max_tick_height when starting up a node
2019-02-12 21:17:06 -08:00
Michael Vines
1eabe66c85
setup_leader_validator: remove unnecessary ticks_per_slot parameter
2019-02-12 21:17:06 -08:00
Michael Vines
2de0a9e453
Log on bogus blobs
2019-02-12 21:17:06 -08:00
Stephen Akridge
0bb6940c1a
Faster exit for storage_stage client
...
Shorten the timeout and check for exit on every iteration
of fetching a last id.
2019-02-12 20:45:22 -08:00
Michael Vines
e341b33f21
Remove ticks_per_slot from Blocktree::write_entries(), it already knows
2019-02-12 15:52:27 -08:00
Michael Vines
6abdd6401d
clippy: passing BlocktreeConfig by ref is ok
2019-02-12 15:52:27 -08:00
Michael Vines
6632c7026d
Pass a BlocktreeConfig into all ledger helper functions
2019-02-12 15:52:27 -08:00