Greg Fitzgerald
29698fcd38
Cleanup stragglers from move-to-transfer rename ( #3947 )
2019-04-23 13:30:42 -06:00
Rob Walker
5406d82d89
fix race in get_exclusive_storage() and load() ( #3941 )
...
* Revert "Revert "account storage is not in sync with the index after gc (#3914 )" (#3936 )"
This reverts commit 4f47fc00bc
.
* fix get_exclusive_storage
* clippy
2019-04-23 09:56:36 -07:00
Pankaj Garg
4f47fc00bc
Revert "account storage is not in sync with the index after gc ( #3914 )" ( #3936 )
...
This reverts commit 101d6b92ee
.
2019-04-22 17:14:41 -07:00
anatoly yakovenko
101d6b92ee
account storage is not in sync with the index after gc ( #3914 )
...
* account storage is not in sync with the index after gc
* builds
* clippy fmt
* test
* purge dead forks on store
* rm println
* also fixed count_stores
* comments
2019-04-20 20:50:50 -05:00
Tyera Eulberg
e0acd48944
Write bench-tps in terms of client ( #3904 )
...
* Write bench-tps in terms of client
* Add transactions_addr method for logging
* Move cluster config outside do_bench_tps
* Add BankClient test
2019-04-19 15:04:36 -06:00
Jack May
afb00432d4
Add BankClient support to bench-exchange ( #3902 )
2019-04-19 13:18:20 -07:00
Greg Fitzgerald
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
carllin
512bfc93cb
Add a cache for leader schedules ( #3841 )
...
* Add a cache for leader schedules
2019-04-19 02:39:44 -07:00
Greg Fitzgerald
51a2988bb2
Revert "Rename programs to instruction_processors ( #3789 )" ( #3824 )
...
This reverts commit 34344982a9
.
2019-04-17 15:05:49 -06:00
carllin
083090817a
Fix DuplicateSignatures caused by races on frozen banks ( #3819 )
...
* Duplicate parent account locks into children in new_from_parent, check parent locks in lock_account()
2019-04-17 13:45:33 -07:00
anatoly yakovenko
1e20d449ce
`bank_height / slot` is the block drop rate ( #3816 )
...
* bank_height/slot would give is the block drop rate
* use metrics
2019-04-16 19:35:38 -07:00
Amr Ali
34344982a9
Rename programs to instruction_processors ( #3789 )
...
* Rename programs to instruction_processors
* Updates around the code base to support instruction_processors rename
* Kabab instruction_processors
* Update Cargo.toml files and scripts to use instruction-processors
* Update Cargo.toml to use instruction-processors
* Update CI scripts to use instruction-processors
2019-04-16 22:39:00 +02:00
anatoly yakovenko
f73d38739a
Split AccountsDB from Accounts ( #3808 )
...
Split AccountsDB from Accounts
2019-04-16 13:32:22 -07:00
anatoly yakovenko
a4b5493ba1
Document unsafe usage in AppendVec ( #3804 )
...
* document unsafe usage
* clippy
2019-04-16 10:53:37 -07:00
anatoly yakovenko
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
Dan Albert
8638b3bb19
Update Cargo.toml files for version = 0.14.0
2019-04-16 02:50:20 +00:00
anatoly yakovenko
68fc303b9b
Rework Accounts for fast squash, hashing state and checkpoint recovery. ( #3613 )
...
* accounts rewrite
* ignore grow tests
* skip duplicate roots
* allow for a root race
* logger
* accounts_index tests
* tests
* tests
2019-04-15 17:15:50 -07:00
Greg Fitzgerald
80f3568062
Upgrade to Rust 1.34.0 ( #3781 )
...
* Upgrade to Rust 1.34.0
* Remove redundant closures
Thanks Clippy!
2019-04-15 15:56:08 -06:00
Rob Walker
de52747950
remove max_tick_height replicode ( #3765 )
2019-04-14 19:15:31 -07:00
Sagar Dhawan
1e8f83a74a
Use a better name for new api
2019-04-12 14:58:22 -07:00
Sagar Dhawan
1db80d79fc
Update get recent blockhashes to return confirmed blockhashes only
2019-04-12 14:58:22 -07:00
anatoly yakovenko
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
Greg Fitzgerald
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
Tyera Eulberg
d31989f878
CustomError from Vec->u32
2019-04-11 13:59:48 -07:00
anatoly yakovenko
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
Greg Fitzgerald
a28c3b0e9a
Consume Bank in BankClient
...
This will allow BankClient to spin up a thread to use the Bank.
It'll also ease the transaction from BankClient to ThinClient since
it won't let you depend on Bank.
Drawback, you the transition from Bank to BankClient will be harder
because the Bank methods are inaccessible.
2019-04-11 12:16:33 -07:00
carllin
787dc5748a
Fixed DuplicateSigs ( #3727 )
...
* Fixed DuplicateSigs by not recording errors in signature cache of bank
2019-04-11 11:51:34 -07:00
Greg Fitzgerald
8ada4bfd1f
Remove test now covered by Vote crate
2019-04-11 10:53:11 -07:00
Greg Fitzgerald
5d4624e75f
Use Bank::add_instruction_processor to bypass manual build step
2019-04-11 10:53:11 -07:00
Jack May
d0f46d6a8a
Cleanup client traits and create super trait ( #3728 )
2019-04-11 00:25:14 -07:00
Rob Walker
f1e7237c09
vote_api cleanup ( #3710 )
...
* vote_api cleanup
* fixups
* fixup
* remove unused code
* revert removal of serialize and deserialize
* ...
* increase coverage, bootstrap staking
* Sagar's STAKE to my VOTE
2019-04-10 17:52:47 -07:00
Sagar Dhawan
c0808d01f8
Add tests
2019-04-10 15:51:00 -07:00
Sagar Dhawan
7fd5e51168
Make sure bank 0 is votable and correctly designate signer
2019-04-10 15:51:00 -07:00
Sathish
7b2abf2087
Update count for the right store ( #3683 )
2019-04-09 13:48:13 -07:00
Greg Fitzgerald
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 5610b8ee957f1d8bf6e270e392859e8b23b1e472.
* Use black_box to tell the compiler not to optimize away test data
* Create bench directories
2019-04-06 07:18:56 -06:00
Rob Walker
d30049b8eb
test for debit of TX fees on full process_transaction() ( #3643 )
...
* fix double debit of TX fees
* add test that fails when removing that line
* put that line back in
* comments
2019-04-05 16:55:58 -07:00
Rob Walker
a5b5248a09
move vote_accounts up ( #3647 )
2019-04-05 14:23:00 -07:00
Rob Walker
9f046a023e
move transaction_count up ( #3618 )
...
* move transaction_count up
* fixup
2019-04-05 10:42:25 -07:00
Greg Fitzgerald
46e6911ec1
Add get_signature_status() to SyncClient
...
And move bank::Result to transaction module.
2019-04-05 10:22:05 -07:00
Greg Fitzgerald
d3844ef32a
Add AsyncClient
2019-04-05 10:22:05 -07:00
Greg Fitzgerald
1598a02a7a
Wrap all client errors with TransportError
2019-04-04 12:00:19 -06:00
Greg Fitzgerald
167f5bdc58
Add get_balance() and get_account_data() to SyncClient
...
Migrate tests to use them.
2019-04-04 12:00:19 -06:00
Greg Fitzgerald
5cd7bccdf3
Add SyncClient and use from BankClient
2019-04-04 12:00:19 -06:00
Greg Fitzgerald
35298e01a8
Remove Instruction wrapper structs and name functions after enum fields
2019-04-03 13:34:27 -07:00
Greg Fitzgerald
867f6f107b
Rename SystemInstruction::Move to SystemInstruction::Transfer
2019-04-03 08:35:57 -06:00
Greg Fitzgerald
43bb813cbe
Rename 'new_account' to 'new_user_account'
...
And 'new_program_account' to 'new_account'
2019-04-02 21:24:42 -06:00
Greg Fitzgerald
4c0bc1fd88
Add program_ids() methods
...
Added CompiledInstruction::program_id() so that we don't need to pass
around instruction indexes just for Message::program_id().
Also added Message.program_ids() that returns a slice so that we
can move those pubkeys into Message::account_keys.
2019-04-02 19:00:35 -06:00
Greg Fitzgerald
20189c5d45
Bump hashbrown to 0.2.0
2019-04-02 16:37:21 -06:00
Greg Fitzgerald
a0041cec97
Rename Runtime to MessageProcessor
2019-04-02 12:49:26 -06:00
Greg Fitzgerald
fa1c1e3734
Rename native programs to native instruction processors
2019-04-02 10:36:19 -06:00
Greg Fitzgerald
947cdd8748
Rename system_program to system_instrution_processor
2019-04-02 10:36:19 -06:00
Greg Fitzgerald
0a9f063d3e
Rename native_program.rs to instruction_processor_utils.rs
...
Prefer the term "instruction processor" over "program". Reserve
the term "native" for the loader and shared object it loads.
Compiling an instruction processor to BPF shouldn't imply changing
to a non-native entrypoint.
2019-04-02 10:36:19 -06:00
carllin
d228b6467c
Implement finalizer so that all locked accounts are dropped ( #3585 )
...
* Implement finalizer so that all locked accounts are dropped when finalizer goes out of scope
* Add test for tx error with lock conflict
* Fix double unlock from destructor running after a call to unlock
2019-04-02 03:55:42 -07:00
Sathish Ambley
3152090a66
update with review comments
2019-04-01 15:54:53 -06:00
Sathish Ambley
9a0f9b910e
add bench tests for squash operations
2019-04-01 15:54:53 -06:00
Sathish Ambley
f853c39169
remove unused member
2019-04-01 15:54:53 -06:00
Sathish Ambley
75ad1305c0
Cache vote accounts and optimize squash
2019-04-01 15:54:53 -06:00
Greg Fitzgerald
fcef54d062
Add a constructor to generate random pubkeys
2019-03-31 16:23:18 -06:00
carllin
8660c3581e
Add squashing metrics ( #3573 )
2019-03-29 21:21:59 -07:00
Greg Fitzgerald
5646daa820
Delete lots of fee parameters
...
So many zeros!
2019-03-29 19:21:51 -06:00
Greg Fitzgerald
7896e8288d
Replace Transaction::fee with a FeeCalculator
2019-03-29 19:21:51 -06:00
Greg Fitzgerald
3b516c0710
Fix build
2019-03-29 14:56:29 -06:00
Greg Fitzgerald
8e04fadb05
Cleanup magic numbers
...
Rename `num_signatures` to `num_required_signatures` to
disambiguate it from `tx.signatures.len()`.
2019-03-29 13:03:29 -07:00
Greg Fitzgerald
31f8b6d352
Integrate Message into Transaction
2019-03-29 13:03:29 -07:00
anatoly yakovenko
10239c3b3c
Replace recursive status cache with a single global fast status cache ( #3541 )
...
Fast Status Cache
2019-03-29 10:03:55 -07:00
Stephen Akridge
0482f153d0
Lower a bunch of debug
...
Can't afford to be printing on every transaction error, it will slow
the system down.
2019-03-28 12:24:47 -07:00
Jack May
92e1c4c531
Report which account is in use ( #3539 )
2019-03-28 08:17:49 -07:00
Greg Fitzgerald
3fc09fb23f
Remove keypairs from BankClient
...
Bring its interface closer to the other clients.
2019-03-27 09:37:19 -06:00
Greg Fitzgerald
cecdb7061e
Remove blockhash parameter from Bank::transfer
...
That parameter is an artifact from the Loom days, when I thought
Bank should implement the same interace as ThinClient.
2019-03-27 08:51:10 -06:00
Greg Fitzgerald
0ac865f08c
Remove BankClient::process_instructions
2019-03-27 08:51:10 -06:00
Greg Fitzgerald
55115d0eeb
Add process_message() to BankClient
2019-03-27 08:51:10 -06:00
Greg Fitzgerald
8c69c40834
Make space for a new Transaction::new
2019-03-26 20:06:05 -06:00
Greg Fitzgerald
ca2ac1e5ea
Remove a mostly unused Transaction constructor
2019-03-26 15:46:58 -07:00
Rob Walker
215b07c1a9
remove status_cache.freeze ( #3506 )
2019-03-26 11:56:25 -07:00
Greg Fitzgerald
df333e8b6e
Move new_move_many to SystemInstruction
2019-03-26 09:22:29 -07:00
Greg Fitzgerald
573dec63da
Fix runtime benches
2019-03-25 14:32:01 -06:00
Greg Fitzgerald
b53cbdd9e6
Punt on the Script abstraction
...
Low ROI
2019-03-24 14:52:06 -06:00
Greg Fitzgerald
acedf4ca5a
Move Instruction into its own module
2019-03-23 20:31:55 -07:00
Rob Walker
31b8743052
delay freeze of status_cache until squash ( #3453 )
2019-03-22 22:14:56 -07:00
Sathish
06b0c98c75
Remove accounts when the fork is removed ( #3384 )
...
* Fix test
* Cleanup accounts when the fork is removed
* Update test to check for deleted accounts
2019-03-21 17:36:10 -07:00
Greg Fitzgerald
d2415613de
Migrate loader tests to BankClient
2019-03-21 09:19:24 -06:00
anatoly yakovenko
148e08a8a5
Enable cluster tests ( #3372 )
...
* Cluster tests
* stable!
* fixup! stable!
* fixup! fixup! stable!
* fixup! fixup! fixup! stable!
* fixup! fixup! fixup! fixup! stable!
* fixed space
* add getNumBlocksSinceSignatureConfirmation entry for the json rpc docs
* Check in upcoming epochs for potential leadership slots in next_leader_slot()
2019-03-21 07:43:21 -07:00
Stephen Akridge
bcb190a12a
Remove erroneous comment
2019-03-20 16:15:25 -07:00
Stephen Akridge
4126461f87
Fix dupe port on cluster_info
...
and remove unintended grow file
2019-03-20 14:17:21 -07:00
Rob Walker
3048de18bb
add doc that should have been copy-pasta'd from bench ( #3389 )
2019-03-20 11:10:42 -07:00
Rob Walker
df9fd2bc0b
stop copying Blooms ( #3379 )
...
* stop copying Blooms
* fixup
* clippy
2019-03-20 11:06:39 -07:00
Michael Vines
0dc364c17a
Relocate transaction reference verification to join the other validity checks
2019-03-20 07:46:01 -07:00
Michael Vines
da77789881
Revert "Drop 'unchecked' from get_subset_mut()"
...
This reverts commit 70b21b3795
.
2019-03-19 17:52:02 -07:00
Greg Fitzgerald
94b5835738
Make AccountMeta a traditional struct instead of a tuple struct
2019-03-19 17:22:39 -06:00
Greg Fitzgerald
a4652a9aaf
Label tuple with AccountMeta
2019-03-19 17:22:39 -06:00
Michael Vines
70b21b3795
Drop 'unchecked' from get_subset_mut()
2019-03-19 16:12:53 -07:00
Carl
5e21268ca0
PR comments
2019-03-18 20:46:11 -07:00
Carl
b38e3bef01
Modify bank_forks to support squashing/filtering new root and also don't remove parents from bank_forks when inserting, otherwise we lose potential fork points when querying blocktree for child slots
2019-03-18 20:46:11 -07:00
Greg Fitzgerald
f16f88873d
Add multiple signer support to BankClient
2019-03-18 16:07:45 -06:00
Greg Fitzgerald
8d032aba9d
Merge InstructionError and ProgramError
...
From the user's perspective, it's just an instruction error.
For program-specific errors, we still have
InstructionError::CustomError.
2019-03-18 10:39:20 -06:00
Greg Fitzgerald
122c7bc2ef
Rename TransactionCompiler to Script and use it to replace the type alias
2019-03-18 08:22:54 -07:00
Greg Fitzgerald
0c0716abfb
Move Bank-based tests into unit-tests
2019-03-18 08:22:54 -07:00
Greg Fitzgerald
c09accb685
Rename StaticEntrypoint to ProcessInstruction
2019-03-18 08:22:54 -07:00
Greg Fitzgerald
ae4d14a2ad
Introducing Scripts
...
A sequence of instructions. A client compiles the script and then uses
the compiled script to construction a transaction. Then it adds a
adds a blockhash, signs the transaction, and sends it off for
processing.
2019-03-18 08:22:54 -07:00
Greg Fitzgerald
55cdbedb52
Allow tests to add instruction processors
...
Make runtime a private module again.
2019-03-18 08:22:54 -07:00
Greg Fitzgerald
ee39f31d81
Add Runtime object. Allow any number of static loaders.
2019-03-18 08:22:54 -07:00
Greg Fitzgerald
70b45de012
Get access to runtime errors in Budget unit-tests
2019-03-18 08:22:54 -07:00
Sathish
9566a5cc68
Organize accounts on a per fork basis ( #3336 )
...
* Organize accounts by fork
* Keep track of vote accounts in account info
* update comments
2019-03-16 23:42:32 -07:00
Greg Fitzgerald
24d9138067
Abandon Builder pattern
2019-03-15 14:46:44 -06:00
Greg Fitzgerald
aca739b800
Boot fees from TransactionBuilder
2019-03-15 14:46:44 -06:00
Greg Fitzgerald
e091aa87ea
More precise constructor names
2019-03-15 14:46:44 -06:00
Greg Fitzgerald
968022a1b0
Instruction name swap
...
* Instruction -> GenericInstruction
* Instruction<u8, u8> -> CompiledInstruction
* Instruction<Pubkey, (Pubkey, bool)> -> Instruction
2019-03-15 14:46:44 -06:00
Greg Fitzgerald
42d5dde5b1
new_singleton -> new_with_instruction
2019-03-15 09:06:54 -06:00
Greg Fitzgerald
142eeffe5d
Add BankClient to minimize copypasta
2019-03-15 09:06:54 -06:00
Greg Fitzgerald
73bd396dfb
Rewrite system integration test
...
Create Client helpers instead of Bank helpers.
2019-03-15 09:06:54 -06:00
Greg Fitzgerald
7b4568b9bf
Migrate to sign_checked()
2019-03-15 09:06:54 -06:00
Sagar Dhawan
3f2fc21bb3
Rename hash_queue and fix boundary condition ( #3289 )
2019-03-14 11:56:36 -07:00
Greg Fitzgerald
c1eec0290e
Rename userdata to data ( #3282 )
...
* Rename userdata to data
Instead of saying "userdata", which is ambiguous and imprecise,
say "instruction data" or "account data".
Also, add `ProgramError::InvalidInstructionData`
Fixes #2761
2019-03-14 10:48:27 -06:00
Greg Fitzgerald
e58220282a
Move TransactionError into the SDK
2019-03-13 21:26:57 -06:00
Greg Fitzgerald
4ca4038d54
Rename BankError to TransactionError
2019-03-13 21:26:57 -06:00
Greg Fitzgerald
150cd31ec0
Blur the line between Bank and Runtime
2019-03-13 21:26:57 -06:00
Greg Fitzgerald
6fd0d4dcf5
Boot error piggybacking on BankError
2019-03-13 21:26:57 -06:00
Greg Fitzgerald
296415945a
Generalize error codes
2019-03-13 21:26:57 -06:00
Greg Fitzgerald
1de5ae1ef0
Remove SystemError from ProgramError
2019-03-13 21:26:57 -06:00
Greg Fitzgerald
6a89c68a1d
Add utility function to help get System error out of ProgramError
2019-03-13 21:26:57 -06:00
Greg Fitzgerald
c14cce4c85
Add InstructionError for runtime instruction errors
2019-03-13 21:26:57 -06:00
carllin
af03df38b9
Don't vote for empty leader transmissions ( #3248 )
...
* Don't vote for empty leader transmissions
* Add is_delta flag to bank to detect empty leader transmissions
* Plumb new is_votable flag through replay stage
* Fix PohRecorder tests
* Change is_delta to AtomicBool to avoid making Bank references mutable
* Reset start slot in poh_recorder when working bank is cleared, so that connsecutive TPU's will start from the correct place
* Use proper max tick height calculation
* Test for not voting on empty transmission
* tests for is_votable
2019-03-13 14:06:12 -07:00
Rob Walker
9f916f9d47
remove Option<> wrapper for accounts
2019-03-12 15:03:26 -07:00
Michael Vines
1ee43a7633
Remove non-essential programs from runtime/
2019-03-12 15:11:59 -05:00
Michael Vines
3d2b7dd1ef
Move programs/system into runtime/
2019-03-12 11:30:58 -05:00
Michael Vines
6899bd7099
0.13.0
2019-03-11 16:21:19 -07:00
Tyera Eulberg
fe1676bc3a
Review comments
2019-03-11 16:58:43 -06:00
Tyera Eulberg
804378e8f7
Add ProgramError::CustomError and truncate value to 32 bytes
2019-03-11 16:58:43 -06:00
Sagar Dhawan
78bb96ee51
Reduce bootstrap leader stake ( #3218 )
2019-03-11 13:29:44 -07:00
Rob Walker
195a880576
pass Pubkeys as refs, copy only where values needed ( #3213 )
...
* pass Pubkeys as refs, copy only where values needed
* Pubkey is pervasive
* fixup
2019-03-09 19:28:43 -08:00
Greg Fitzgerald
3dc22e7323
Simulate auto-creation of system accounts
2019-03-07 19:18:53 -07:00
Greg Fitzgerald
17dcd1f62a
Resurrect the tests
2019-03-07 19:18:53 -07:00
Tyera Eulberg
259c820f15
Review comments
2019-03-07 17:21:32 -07:00
Tyera Eulberg
b053bc2790
Load accounts by program owner for program subscriptions
2019-03-07 17:21:32 -07:00
Stephen Akridge
8d80da6b46
Fix picking account store paths
...
Store the set of accounts paths in AccountsDB and choose with an rng
when we need to create a new one. Remove path from AccountStorageEntry object.
2019-03-07 14:58:52 -08:00
Stephen Akridge
22855def27
Fix race condition in store.
...
Multiple threads can enter the read lock and
all store the new empty set to account_maps.
Check again after taking write lock to make sure
only one thread actually inserts the new entry.
2019-03-07 14:58:52 -08:00
Greg Fitzgerald
505f77b108
Move a more generic process_transaction to runtime.rs
2019-03-07 12:42:13 -07:00
Greg Fitzgerald
5b672f8921
Generalize Budget tests to work on multi-ix txs
2019-03-07 12:42:13 -07:00
Stephen Akridge
61fbea3ee4
Cleanup AccountStorage apis
...
Remove duplicate code
2019-03-06 18:30:36 -08:00
Rob Walker
01fb76f4bd
add epoch warmup ( #3166 )
...
add epoch warmup
2019-03-06 16:32:23 -08:00
Rob Walker
63a4ed74a4
consolidate logic for epoch and slot_index into Bank ( #3144 )
2019-03-06 14:44:21 -08:00
Pankaj Garg
9163e5b004
Fix sorting order of stakes in confirmation time calculations
2019-03-06 13:11:04 -08:00
Stephen Akridge
b850f3c1dd
Remove unnecessary cleanup_paths
...
drop handles it
2019-03-06 11:17:37 -07:00
Michael Vines
53f09c44f3
Rename tokens to lamports in sdk/
2019-03-05 17:28:06 -08:00
Rob Walker
cb0560df92
remove dead code
2019-03-05 15:35:24 -08:00
Rob Walker
b9e878ee80
slot_height considered harmful ( #3135 )
...
* slot_height considered harmful
* fix test_tick_slot_epoch_indexes
2019-03-05 14:18:29 -08:00
Michael Vines
1997640094
Remove prints
2019-03-05 14:09:40 -08:00
Sagar Dhawan
9349f90a59
Inherit transaction count from parent ( #3134 )
2019-03-05 12:34:21 -08:00
Sathish Ambley
6e9d803091
Remove usage of unsafe for Accounts
2019-03-05 10:13:03 -08:00
Tyera Eulberg
b4084c6298
Fix random comment typo
2019-03-05 09:33:27 -07:00
Greg Fitzgerald
885eeec3ed
Boot storage program from the SDK
2019-03-05 07:16:33 -07:00
Greg Fitzgerald
5e9f802d7d
Boot token_program from the SDK
2019-03-05 07:16:33 -07:00
Rob Walker
43bab23651
remove duplicate child creation ( #3100 )
...
* remove duplicate child creation
* resurrect test for partial slot
* simplify blocktree_processor some more (no tick_height, yay!)
* ensure frozen
2019-03-04 19:22:23 -08:00
Rob Walker
794e961328
use Bank's notion of leader_id where possible ( #3119 )
2019-03-04 18:40:47 -08:00
Sagar Dhawan
dc42c12f2b
Revert to more consistent naming ( #3114 )
2019-03-04 17:50:19 -08:00
Stephen Akridge
97274030b9
Add test with transaction with no signatures
...
Add checks for no signature
2019-03-04 16:42:52 -08:00
Stephen Akridge
a3016aebaf
Put accounts test data files in target directory
...
And gitignore it so those aren't added accidentally.
2019-03-04 10:17:02 -08:00
carllin
de1d7ce312
Cleanup staking utils to divide functionality between delegate and normal node utitliites. Also replaces vote_states() with more generalized vote_accounts() in Bank. ( #3070 )
2019-03-03 18:04:13 -08:00
Rob Walker
e4dba03e12
accounts shedding ( #3078 )
...
* accounts shedding
* fixup
2019-03-03 16:04:04 -08:00
Greg Fitzgerald
fc5fcd6cd4
Move native_loader into solana_runtime
2019-03-03 10:59:08 -07:00
Greg Fitzgerald
41b5899856
Move programs/Cargo.toml into bpf/
2019-03-02 22:11:48 -08:00
Greg Fitzgerald
b830449f23
Move top-level native program tests to their respective crates
2019-03-02 22:11:48 -08:00
Greg Fitzgerald
037fcf6b3d
Bump all native programs up a level
...
Don't categorize programs by a single backend.
2019-03-02 22:11:48 -08:00
Stephen Akridge
e1a1296b9b
Fix cleanup_paths
...
Add back remove of parent in Accounts::drop, but
remove that in the cleanup_paths helper
for the account tests which do not use
make_default_dir.
2019-03-02 20:24:57 -08:00
Michael Vines
a9a7fc56eb
Purge MAX_RECENT_TICK_HASHES
2019-03-02 17:04:42 -08:00
Greg Fitzgerald
1edf6c361e
Move Vote program out of the SDK
2019-03-02 16:44:36 -08:00
Sagar Dhawan
b99e3eafdd
Fix stakes not being setup correctly
2019-03-02 16:44:36 -08:00
Greg Fitzgerald
e6486b2824
Move Budget out of the SDK
2019-03-02 16:44:36 -08:00
Sagar Dhawan
d22a13257e
Refactor bank get vote accounts ( #3052 )
2019-03-02 16:44:36 -08:00
Rob Walker
f4c5b9ccb0
remove remove_dir_all() of paths' parents (which we didn't make to begin with)
2019-03-02 12:36:41 -08:00
Michael Vines
a94880574b
block_hash => blockhash
2019-03-02 12:13:30 -07:00
Michael Vines
0f1582c196
cargo fmt
2019-03-02 12:13:30 -07:00
Michael Vines
258cf21416
Purge remaining last_id (now called block_hash)
2019-03-02 12:13:30 -07:00
Michael Vines
2bfad87a5f
Rename Bank.last_id() to Bank.last_block_hash()
2019-03-02 12:13:30 -07:00
Michael Vines
0743f54dfe
Rename LastIdNotFound to BlockHashNotFound
2019-03-02 12:13:30 -07:00
Michael Vines
176d5e0d37
Rename Transaction last_id field to recent_block_hash
2019-03-02 12:13:30 -07:00
Stephen Akridge
16b71a6be0
Cleanup fork id generation
...
Accounts could end up with id collision depending on how
banks are created, this shouldn't happen.
2019-03-02 10:34:41 -08:00
Michael Vines
d5de5bec4f
Register a new last_id once per slot
2019-03-02 08:47:31 -08:00
Michael Vines
61beb42797
Decouple tick counting from hash queue
2019-03-02 08:47:31 -08:00
Michael Vines
e5be3e1dca
HashQueue no longer hard codes max_entries
2019-03-02 08:47:31 -08:00
Greg Fitzgerald
49b7e67585
Return program error from process_transaction()
...
Our unit-test helper `process_transaction()` wasn't returning
program errors, which made testing programs tedious and
counter-intuitive.
2019-03-02 07:50:32 -07:00
Rob Walker
54417acfba
changed vote_states to vote_accounts, more useable ( #3047 )
2019-03-01 17:22:49 -08:00
Rob Walker
29d12d9ff1
remove new_bank_from_parent_with_id() ( #3039 )
2019-03-01 16:39:23 -08:00
Stephen Akridge
4ee857ab7d
More vote account fixes
...
vote_index not being maintained correctly during a squash.
The tokens==0 shielding accounts were being inserted with
owner=default Pubkey so they didn't know they are vote accounts
and should update the vote accounts set.
2019-03-01 16:25:14 -08:00
Rob Walker
a7c18cc0b4
Fnbool_to_FnOptionT
2019-03-01 14:12:50 -08:00
Michael Vines
e30e4cc603
Remove get_confirmation_timestamp() from HashQueue
2019-03-01 13:38:17 -08:00
Michael Vines
fdc31e99df
Clean up type casts
2019-03-01 13:38:17 -08:00
Michael Vines
a72325dbc2
entry_id -> entry
2019-03-01 13:38:17 -08:00
Michael Vines
67b6be66c8
Rename MAX_ENTRY_IDS
2019-03-01 13:38:17 -08:00
Michael Vines
8ec13d557f
Generalize tick_height to hash_height
2019-03-01 13:38:17 -08:00
Michael Vines
31f570a9f4
Remove unused functions
2019-03-01 13:38:17 -08:00
Rob Walker
38273427ad
have banks save vote_state by epoch to support stable leader schedules ( #3019 )
...
have banks save vote_state by epoch to support stable leader schedules
2019-03-01 11:54:28 -08:00
Michael Vines
46fb0b1b94
Rename last_id to last_hash within HashQueue
2019-03-01 11:48:09 -08:00
Michael Vines
224b705f8d
Rename genesis_block.last_id() to genesis_block.hash()
2019-03-01 11:48:09 -08:00
Michael Vines
a57fb00584
Rename last_id_queue.rs to hash_queue.rs
2019-03-01 09:50:51 -08:00
Michael Vines
360055ad70
Rename LastIdQueue to HashQueue
2019-03-01 09:50:51 -08:00
Greg Fitzgerald
c53c351759
Rename erc20 to token-program
...
Everything it uses already had that name, just the crate was never
renamed.
2019-03-01 10:47:38 -07:00
Pankaj Garg
b41286919d
Rename bank.id to bank.slot ( #3018 )
2019-02-28 18:02:45 -08:00
Sagar Dhawan
20e4edec61
Refactor Vote Program Account setup ( #2992 )
2019-02-28 17:08:45 -08:00
Stephen Akridge
1c44b738fe
Fix vote_accounts test
2019-02-28 15:22:47 -08:00