ce934a547e
Storage RFC validator incentive clarification
2018-10-23 09:46:38 -06:00
16b19d35dd
Disable test_boot_validator_from_file ( #1576 )
2018-10-23 00:47:15 -07:00
45cfa5b574
Add instruction to transfer account ownership
2018-10-20 21:54:25 -05:00
df9ccce5b2
Remove hostname() from calls to metrics as it's expensive operation ( #1557 )
2018-10-20 06:38:20 -07:00
f8516b677a
Load program data in chunks ( #1556 )
...
Load program data in chunks
2018-10-19 18:28:38 -07:00
dfde83bdce
Wildcard early OOM deb package revision ( #1554 )
2018-10-19 14:17:19 -07:00
cb0f19e4f1
Shield rerun-if-changed under the feature flags so
...
that cargo watch doesn't cause re-build every iteration.
2018-10-19 12:07:29 -07:00
26b99d3f85
Ensure witness and timestamp keys are signed
...
Before this patch, an attacker could point Budget instructions to
unsigned keys, and authorize a transaction from an unauthorized
party.
2018-10-19 10:06:59 -06:00
2f9c0d1d9e
Add method to lookup signed keys
2018-10-19 10:06:59 -06:00
0423cafbeb
Cleanup and update Smart Contracts Engine RFC to what is currently in the code ( #1539 )
...
* Cleanup and update to the state of the code
* update
* render
* render
* comments on memory allocation
2018-10-19 06:08:49 -07:00
0bd1412562
Switch leader scheduler to use PoH ticks instead of Entry height ( #1519 )
...
* Add PoH height to process_ledger()
* Moved broadcast_stage Leader Scheduling logic to use Poh height instead of entry_height
* Moved LeaderScheduler logic to PoH in ReplicateStage
* Fix Leader scheduling tests to use PoH instead of entry height
* Change is_leader detection in repair() to use PoH instead of entry height
* Add tests to LeaderScheduler for new functionality
* fix Entry::new and genesis block PoH counts
* Moved LeaderScheduler to PoH ticks
* Cleanup to resolve PR comments
2018-10-18 22:57:48 -07:00
0339642e77
Added TicTacToe Dashboard and tests ( #1547 )
...
* Add tictactoe dashboard and tests
2018-10-18 14:19:25 -07:00
37a0b7b132
Initial validator code for rust side hooks for chacha cuda parallel encrypt
2018-10-18 13:50:19 -07:00
c30b605047
Actually submit the storage mining proof
...
Get an aidrop so replicator can submit mining transaction
Some other minor type cleanup.
2018-10-18 13:50:19 -07:00
76076d6fad
move last_id age checking into the HashMap
...
* allows for simpler chaining of banks
* looks 1.5-2% faster than looping through a VecDequeue
TODO: remove timestamp()?
2018-10-18 11:07:00 -07:00
0a819ec4e2
Programs were not spawned by SystemProgram ( #1533 )
...
* SystemProgram spawns programs
2018-10-18 10:33:30 -07:00
57a717056e
Delegate accounts now record the original approved amount
2018-10-18 08:53:25 -07:00
856c48541f
Restore elaborate attack
...
The test is showing how you can sneak by verify_plan() but not
verify_signature().
2018-10-18 08:46:02 -06:00
2045091c4f
Add SystemProgram::Move ix to Budget tx
2018-10-18 08:46:02 -06:00
03ac5a6eef
Move all source tokens into Budget account
...
Budget now assumes the source account holds all tokens the program
should spend.
Note: the static guarantees implied by verify_plan() are meaningless
under the new contract engine. The bank no longer calls it. This
serves as a nice example of where comparing code coverage between
integration tests and unit tests would have shown us where a
change rendered unit tests meaningless.
2018-10-18 08:46:02 -06:00
32fadc9c30
Merge debits and credits
...
Debits no longer need to be applied before credits. Instead, we
lock any accounts we'd debit and so error out on the second attempt
to lock the same account.
2018-10-18 08:46:02 -06:00
15a89d4f17
Boot Contract type from Budget
...
In the old bank (before the contract engine), Contract wasn't specific
to Budget. It provided the same service as what is now called
SystemProgram::Move, but without requiring a separate account.
2018-10-18 08:46:02 -06:00
d0f43e9934
consolidate tmp ledgers
2018-10-18 08:45:31 -06:00
31e779d3f2
Added counters to track more metrics on dashboard ( #1535 )
...
- Total number of IP packets TX/RX from all nodes in the testnet
- Last consumed index on validator
- Last transmitted index on leader
2018-10-17 17:32:50 -07:00
30c79fd40d
Change validator node machine type ( #1537 )
...
- The current nodes are using lower RAM compared to leader/clients
2018-10-17 17:16:50 -07:00
639c93460a
Write stage optimizations ( #1534 )
...
- Testnet dashboard shows that channel pressure for write stage
is incrementing on every iteration of write.
- This change optimizes ledger writing by removing cloning of map
and reducing calls to flush
2018-10-17 13:02:32 -07:00
7611730cdb
move off /tmp
2018-10-17 12:15:30 -07:00
9df9c1433a
remove another use of /tmp
2018-10-17 12:15:30 -07:00
4ea422bcec
run integration tests serially
2018-10-17 11:37:10 -07:00
6074e4f962
Attempt to stabilize the test suite
...
The integration tests are allowed to open sockets, so running them
in parallel may cause "Too many open files" errors. This patch
runs the unit tests in parallel and the integration test serially.
2018-10-17 11:37:10 -07:00
d52e6d01ec
typo in readme
2018-10-17 02:04:05 -06:00
63caca33be
SystemProgram test was failing due to expected panic
2018-10-16 18:02:44 -07:00
64efa62a74
enable logging in loaders
2018-10-16 16:55:11 -07:00
912eb5e8e9
remove bank.is_leader, dead code ( #1516 )
2018-10-16 15:26:44 -07:00
bb628e8495
Rename loaders
2018-10-16 14:27:08 -07:00
d0c19c2c97
cargo fmt
2018-10-16 14:11:04 -07:00
926fdb7519
Rename dynamic_program.rs to native_loader.rs
2018-10-16 14:11:04 -07:00
c886625c83
Move from solana/rbpf fork to qmonnet/rbpf ( #1511 )
2018-10-16 13:13:54 -07:00
f6c10d8a2e
Add channel pressure for validator TVU stages ( #1509 )
2018-10-16 12:54:23 -07:00
2bd877528f
Par process entries ( #1499 )
...
* Parallel entry processor.
2018-10-16 12:09:48 -07:00
d09889b1dd
Program bank integration ( #1462 )
...
Native, BPF and Lua loaders integrated into the bank
2018-10-16 09:43:49 -07:00
1b2e9122d5
Pubsub listen on random open port when rpc does (quiet some test errors)
2018-10-16 00:11:26 -06:00
7424388924
Fix session drop
2018-10-16 00:11:26 -06:00
537436bd5e
RPC PubSub now uses a well-known socket
2018-10-16 00:11:26 -06:00
32fc0cd7e9
Fix bug introduced during RUST_LOG escaping ( #1507 )
...
* Fix bug introduced during RUST_LOG escaping
- remote node configuration should not be quoted
* shellcheck disable SC2090
2018-10-15 16:49:22 -07:00
fb99494858
Improve rpc code coverage ( #1487 )
2018-10-15 11:01:40 -06:00
5b4d4b97bc
Upgrade to latest stable Rust, 1.29.2
2018-10-15 09:54:24 -06:00
c5180c8092
Permit RUST_LOG overrides
2018-10-14 12:40:37 -07:00
515c200d86
Refactor and add test for new Entry::serialized_size()
2018-10-14 10:53:47 -06:00
32aab82e32
Don't allocate to see if transactions will fit in a blob
2018-10-14 10:53:47 -06:00