Commit Graph

3938 Commits

Author SHA1 Message Date
Greg Fitzgerald 50d3fa7437 Move RpcSubscriptions into its own module 2019-02-17 12:20:05 -07:00
Greg Fitzgerald 9f7fc5f054 Boot unused trait
Some ambitious unit-testing plans unimplemented?
2019-02-17 12:20:05 -07:00
Michael Vines a27e9cb3c2
Add -u option 2019-02-17 10:45:25 -08:00
Michael Vines 10270dcbad Add an API node to non-perf testnets 2019-02-17 10:39:27 -08:00
Michael Vines 4ff4fb6c38 Add support for an API node that hosts the block explorer 2019-02-17 10:39:27 -08:00
anatoly yakovenko c8c794e340
Use the accounts and status cache from parents up to finalized bank for calls. (#2798)
* Use the accounts list from parents up to finalized bank for Account::load apis.

* Borrow checker

* query the previous parents accounts

* cleanup!

* s/tree/parents

* Tests!  Last_ids need to be inherited as well otherwise nothing works.
2019-02-17 08:01:31 -08:00
carllin 97a1e950ef
write entries in blocktree now sets parent slot properly (#2800) 2019-02-17 04:36:49 -08:00
Greg Fitzgerald 9fa8105ae8 Add a way to make a DAG of checkpointed Banks 2019-02-16 21:49:06 -07:00
Michael Vines d68b6ea7b1
Default entry stream socket to location used by the block explorer 2019-02-16 19:14:19 -08:00
Michael Vines 58f4709362
Reduce log severity of entry stream errors 2019-02-16 19:10:00 -08:00
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 8ec1f6ea2e Applied review feedback 2019-02-16 17:15:31 -07:00
Greg Fitzgerald d63c8ae1ae Add PR guidelines 2019-02-16 17:15:31 -07: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
dependabot[bot] e42c95a327 Bump bincode from 1.1.1 to 1.1.2
Bumps [bincode](https://github.com/TyOverby/bincode) from 1.1.1 to 1.1.2.
- [Release notes](https://github.com/TyOverby/bincode/releases)
- [Commits](https://github.com/TyOverby/bincode/compare/v1.1.1...v1.1.2)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2019-02-16 13:58:37 -07:00
Michael Vines 473af78368 Support --entry-stream argument 2019-02-16 10:40:47 -08:00
Michael Vines ab6c7f6ca3 /it/ti/ 2019-02-16 10:40:47 -08:00
Michael Vines 599516473a Add top-level run.sh for easy local cluster startup 2019-02-16 10:40:47 -08:00
Michael Vines 83ac075b22 Use full app name for better cli help text 2019-02-16 10:40:47 -08:00
Michael Vines 3548c6c43a Add support for locally built programs 2019-02-16 10:40:47 -08: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
dependabot[bot] 38aed0c886 Bump serde_derive from 1.0.87 to 1.0.88
Bumps [serde_derive](https://github.com/serde-rs/serde) from 1.0.87 to 1.0.88.
- [Release notes](https://github.com/serde-rs/serde/releases)
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.87...v1.0.88)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2019-02-16 04:57:32 -08:00
dependabot[bot] 02801b3e75 Bump serde from 1.0.87 to 1.0.88
Bumps [serde](https://github.com/serde-rs/serde) from 1.0.87 to 1.0.88.
- [Release notes](https://github.com/serde-rs/serde/releases)
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.87...v1.0.88)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2019-02-16 05:02:10 -07:00
Michael Vines b79d361e6c
Add --entry-stream support 2019-02-15 22:52:27 -08:00
Michael Vines 9eb8b67b5c
Install blockexplorer dependencies 2019-02-15 20:17:46 -08:00
Greg Fitzgerald 132c664e18 No longer modify external userdata 2019-02-15 18:36:55 -07:00
Greg Fitzgerald 288645aeb7 Add rewards integration test 2019-02-15 18:36:55 -07:00
Greg Fitzgerald 55f06f5bad Make vote_program available to reward_program tests
Making `solana_vote_program` is not an option because
then vote_program's entrypoint conflicts with reward_program's
entrypoint.

This unfortunately turns the SDK into a dumping ground for all
things shared between vote_program and other programs. Better
would be to create a solana-vote-api crate similar to the
solana-rewards-api crate.
2019-02-15 18:36:55 -07:00
Greg Fitzgerald a2cb18bfe9 Only require voting account to be signed 2019-02-15 18:36:55 -07:00
Greg Fitzgerald d35b3754a2 Reorg
Now clients can use all the libraries to create transactions
and disect account data without needing to be constrained about
what can be compiled into a shared object or BPF.

Likewise, program development can move forward without being
concerned with bloating the shared object.
2019-02-15 18:36:55 -07:00
Greg Fitzgerald 7f3aca15dd Add a library for creating Rewards transactions
And move out of the SDK
2019-02-15 18:36:55 -07:00
Greg Fitzgerald 2c5cbaff25 Add unit-test for Rewards program 2019-02-15 18:36:55 -07:00
Greg Fitzgerald 134cd7ab04 Add Rewards program 2019-02-15 18:36:55 -07:00
anatoly yakovenko c74b8b6df3
Add a design for leader schedule rotation and genesis. (#2714)
Leader schedule rotation.
2019-02-15 16:34:34 -08: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 c4125b80ec Reduce max_tick_height to speed up CI 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 5333bda234
test_3_partitions is unstable, ignore 2019-02-14 17:30:42 -08:00