58887c591b
Add and update tests ( #9566 )
2020-04-18 17:04:13 -07:00
ad0482be73
Revert "Add native loader entry points ( #9275 )" Breaks genesis_config abi ( #9377 )
...
This reverts commit ed86d8d1fc
.
2020-04-08 14:36:18 -07:00
ed86d8d1fc
Add native loader entry points ( #9275 )
2020-04-03 17:40:59 -07:00
130c0b484d
Enforce an executable's rent exemption in the runtime ( #9134 )
2020-03-31 10:07:38 -07:00
88ba8439fc
Add frozen account support ( #8989 )
...
automerge
2020-03-22 11:10:04 -07:00
947a339714
Add snapshot hash of full accounts state ( #8295 )
...
* Add snapshot hash of full accounts state
* Use normal hashing for the accounts delta state
* Add merkle
2020-02-22 13:46:40 -08:00
0e6aca5a7e
Reorganize message processor in prep for cross-program-invocation ( #8338 )
2020-02-21 11:30:00 -08:00
ab361a8073
Rename KeypairUtil to Signer ( #8360 )
...
automerge
2020-02-20 13:28:55 -08:00
83718a3b3e
Cleanup runtime use syntax ( #8002 )
2020-01-28 17:03:20 -08:00
c95e5346a4
Boot the mut ( #7926 )
2020-01-22 17:54:06 -08:00
023074650f
Allow the same account to be passed multiple times to a single instruction ( #7795 )
2020-01-22 09:11:56 -08:00
87598c7612
Consolidate tx error counters and update metrics dashboard ( #7724 )
...
automerge
2020-01-16 23:26:50 -08:00
3c361eb759
Check account hashes in snapshot ( #7559 )
...
* Check for incorrect hash value
* Finish up checking for incorrect hash value
* Fix comment a bit
Co-authored-by: sakridge <sakridge@gmail.com >
2019-12-20 09:39:30 +09:00
b7d4330dd4
Fail fast if account paths cannot be canonicalized ( #7300 )
...
* Canonicalize account paths to avoid symlink issues
* fixes
2019-12-05 21:41:29 -05:00
c09469fa3a
Rename verify_instruction() to verify_account_changes() ( #7020 )
2019-11-18 15:01:14 -07:00
9807f47d4e
Rename genesis block to genesis config ( #6816 )
2019-11-08 23:56:57 -05:00
b9d8e3e55a
Only copy whats needed to verify an instruction after processing ( #6669 )
2019-11-05 10:57:32 -08:00
5416c114cf
SDK: Add sysvar to expose recent block hashes to programs ( #6663 )
...
* SDK: Add sysvar to expose recent block hashes to programs
* Blockhashes is one word
* Missed one
* Avoid allocs on update
* unwrap_or_else
* Use iterators
* Add microbench
* Revert "unwrap_or_else"
This reverts commit a8f8c3bfbe
.
* Revert "Avoid allocs on update"
This reverts commit 486f01790c
.
2019-11-04 10:51:15 -07:00
c9cea2152b
optimize verify_instruction ( #6539 )
2019-10-25 21:47:16 -07:00
d68e2c4d06
Revert "Make instruction data opaque to runtime ( #6470 )" ( #6564 )
...
This reverts commit 6eeca9c6f1
.
2019-10-25 16:22:41 -07:00
6eeca9c6f1
Make instruction data opaque to runtime ( #6470 )
2019-10-24 22:38:57 -07:00
f46a2cec3c
owner and executable checks ( #6526 )
...
* owner_checks
* only system program may assign owner, and only if pre.owner is system
* moar coverage!
* moar coverage, allow re-assignment IFF data is zeroed
2019-10-24 11:06:00 -07:00
35ed432d1a
Make benchmark useful ( #6440 )
...
function is verify_hash_internal_state
2019-10-18 12:59:47 -07:00
fb39bd45d7
Revert "Rename solana-runtime to sealevel ( #6239 )" ( #6247 )
...
This reverts commit 2e921437cd
.
2019-10-04 19:33:29 -06:00
2e921437cd
Rename solana-runtime to sealevel ( #6239 )
...
automerge
2019-10-04 15:02:44 -07:00
19ae556857
hash account state on store ( #5573 )
2019-09-20 13:21:12 -07:00
6657312f44
dyn for runtime benches ( #5983 )
2019-09-19 14:21:09 -07:00
7dfb735db9
randomize tx ordering ( #4978 )
...
Summary of Changes:
This change adds functionality to randomize tx execution for every entry. It does this by implementing OrderedIterator that iterates tx slice as per the order specified. The order is generated randomly for every entry.
2019-08-28 21:08:32 +05:30
58d4e32c97
Remove serialization of future AppendVecs and serialize AccountStorage correctly ( #5510 )
2019-08-13 16:05:37 -07:00
a43922ccbf
Boot hashbrown ( #5505 )
...
As of Rust 1.36.0, hashbrown now implements the HashMap in std (which
implements HashSet).
https://blog.rust-lang.org/2019/07/04/Rust-1.36.0.html#a-new-hashmapk,-v%3E-implementation
2019-08-12 16:46:49 -06:00
9dcf3347f5
Refactor status cache and remove complex serialize/deserialize ( #5335 )
...
automerge
2019-08-06 18:47:30 -07:00
8d243221f0
Ignore flaky local cluster tests ( #5347 )
...
* Add logging to local_cluster tests
* Ignore flaky test_leader_failure_4, test_repairman_catchup
And crashing banking benchmarks.
2019-07-30 13:48:46 -07:00
264a3d7dde
Increase ticks_per_slot for banking benchmark ( #5221 )
2019-07-22 13:57:28 -07:00
111d0eb89b
runtime: Add bench for accounts::hash_internal_state ( #5157 )
...
* runtime: Add bench for accounts::hash_internal_state
* fixup! cargo fmt
* fixup! cargo clippy
* fixup! Use a more representitive number of accounts
* fixup! More descriptive name for accounts creation helper
2019-07-19 10:32:29 -06:00
04649de6a6
Boot remote native loads, take 2 ( #5106 )
...
* Drop dependencies on remote native loads
* Remove remote native loads
2019-07-15 13:16:09 -06:00
966b6999d1
Accounts index opt ( #4621 )
...
* Add accounts_index bench
* Don't take the accounts index lock unless needed
* Accounts_index remove insert return vec and add capacity stats
* Use hashbrown hashmap for accounts_index
2019-06-10 18:15:39 -07:00
64e8a21d73
Add tick height syscall ( #4497 )
...
* Remove tick_height from entrypoint signature
* Impl tick_height syscall and use in storage program
* Properly remove tick height from bpf handling
2019-05-31 16:29:21 -06:00
182096dc1a
Create bank snapshots ( #4244 )
...
* Revert "Revert "Create bank snapshots (#3671 )" (#4243 )"
This reverts commit 81fa69d347
.
* keep saved and unsaved copies of status cache
* fix format check
* bench for status cache serialize
* misc cleanup
* remove appendvec storage on purge
* fix accounts restore
* cleanup
* Pass snapshot path as args
* Fix clippy
2019-05-30 21:31:35 -07:00
a2e3a92b01
Extend GetBlockHash RPC API to include the fee scehdule for using the returned blockhash ( #4222 )
2019-05-13 12:49:37 -07:00
69eeb7cf08
Fix parent record locks usage in child banks ( #4159 )
...
* Introduce record locks on txs that will be recorded
* Add tests for LockedAccountsResults
* Fix broken bench
* Exit process_entries on detecting conflicting locks within same entry
2019-05-07 15:51:35 -07:00
8e400fc4bd
rework genesis (passive staking groundwork) ( #4187 )
...
* rework genesis
* fixup
2019-05-07 11:16:22 -07:00
c545e812d0
Expand bank benches to include async/sync and native_loader ( #4026 )
2019-04-29 13:09:11 -07:00
5fb8baed04
Process async BankClient transactions in batches ( #3738 )
...
* Process async transactions in batches
This aims to process transactions at least as fast as LocalCluster
* Add benchmark
2019-04-19 07:29:07 -06:00
0ff2bfdd0c
Fewer unsafe hacks for AppendVec ( #3801 )
...
* storage account changes
* cleanup
* checks
* comments
* clippy
* tests
* woot!
* comments
* benches
2019-04-16 08:50:05 -07:00
8b08fe265a
AppendVec PR with using "/tmp" as the default directory and a random file ( #3743 )
...
* AppendVec with raw pointers
* fixed test target directory
2019-04-12 04:30:17 -07:00
485013b7ce
Revert "AppendVecs that can return references and read/append without locks ( #3713 )"
...
This reverts commit f669ae5868
.
2019-04-11 14:47:30 -07:00
f669ae5868
AppendVecs that can return references and read/append without locks ( #3713 )
...
* AppendVec with raw pointers
* appendvecs
* imports
* review
* review comments
* clippy
2019-04-11 13:16:56 -07:00
878a842611
Move append_vec bench to the crate with append_vec ( #3650 )
...
* Move append_vec bench to the crate with append_vec
* Use black_box to tell the compiler not to optimize away test data
```
pub fn black_box<T>(dummy: T) -> T {
unsafe {
let ret = std::ptr::read_volatile(&dummy);
std::mem::forget(dummy);
ret
}
}
```
* Revert "Use black_box to tell the compiler not to optimize away test data"
This reverts commit 5610b8ee95
.
* Use black_box to tell the compiler not to optimize away test data
* Create bench directories
2019-04-06 07:18:56 -06:00
35298e01a8
Remove Instruction wrapper structs and name functions after enum fields
2019-04-03 13:34:27 -07:00
867f6f107b
Rename SystemInstruction::Move to SystemInstruction::Transfer
2019-04-03 08:35:57 -06:00