Commit Graph

309 Commits

Author SHA1 Message Date
Parth 11e6197a83
require stake, vote and executable accounts to be rent exempt (#5928)
* require vote account to be exempt

* make stake account rent exempt

* add rent exempted system instruction

* use rent exemption instruction in vote and stake api

* use rent exempted account while creating executable account

* updating chacha golden hash as instruction data has changed

* rent will be initialized for genesis bank too
2019-09-20 16:52:17 +05:30
Jack May 0d16db2d1b
Remove bloat due to test symbols (#5965) 2019-09-18 19:54:10 -07:00
Rob Walker ffdf36c65b
remove grants from inflation (#5936) 2019-09-17 18:52:39 -07:00
Parth de4f564780
fix test name (#5932) 2019-09-18 01:14:44 +05:30
Parth d63518a835
Rent tangential stuff (#5910)
* rename rent.rs to rent_calculator.rs

* add rent sysvar

* integrate rent_calculator with bank

* rent_calculator integration with genesis

* add test for rent sysvar
2019-09-17 17:12:55 +05:30
Justin Starry 8f5a1535af
Add mnenomic keypair generation and recovery to cli (#5889)
* Add mnenomic keypair generation and recovery to cli

* Use password input to retrieve mnemonic phrase

* Direct users without keypair file to use solana-keygen
2019-09-12 18:37:29 -07:00
Jack May 1853771930
Add support for SDK sysvar types (#5876) 2019-09-10 18:53:02 -07:00
Jack May 61fe1aa9cf
SDK cleanup to reduce featurization (#5856) 2019-09-09 16:38:52 -07:00
Jack May a18cd29411
Remove unsigned division from FeeCalculator (#5851) 2019-09-09 15:07:32 -07:00
Jack May a317e9513f
Add sysvar support (#5838) 2019-09-09 10:55:35 -07:00
sakridge b35c022629 More types (#5846)
automerge
2019-09-08 11:13:59 -07:00
Rob Walker affcb5ec43
remove hashmap from stake_history (#5834) 2019-09-07 10:33:06 -07:00
Jack May 1833db51a5
Cleanup program account def (#5833) 2019-09-06 17:32:14 -07:00
Justin Starry 81c36699c4
Add support for BPF program custom errors (#5743)
* Add support for BPF program custom errors

* Rename SOL_SUCCESS -> SUCCESS
2019-09-06 16:05:01 -07:00
Jack May d3052d094c
fmt does not work with cfg_if (#5829) 2019-09-06 15:33:58 -07:00
Jack May 4c4b7d39b8
Cleanup program's ProcessInstruction (#5828) 2019-09-06 14:44:41 -07:00
Jack May e8d88f3237
Split SDK's timing.rs (#5823) 2019-09-06 14:30:56 -07:00
Jack May d9817c153a
Switch programs to use Pubkey from SolPubkey (#5821) 2019-09-06 12:40:01 -07:00
Rob Walker 4a20c2aa1b
add stake and vote errors (#5814)
* add stake errors

* remove self from type_of

* sheesh

* better

* add stake errors

* update wallet error handling

* fixup
2019-09-06 10:55:03 -07:00
Jack May e5f902369c
Rust BPF programs depend on Solana SDK (#5819) 2019-09-06 09:20:14 -07:00
Michael Vines 1f9fde5f7b
ThinClient internal name grooming (#5800) 2019-09-06 09:07:40 -07:00
Rob Walker 933e835838
add stake lockup (#5782)
* add stake lockup

* fixup
2019-09-04 13:34:09 -07:00
Rob Walker e2ecacc141
runtime checks for rent_epoch (#5629)
* runtime checks for rent_epoch

* add actual test

* bigger timeout

* backout 90 min timeout

* new noop
2019-08-26 11:04:20 -07:00
Rob Walker 0ffe7a9c8f
plumb some rent (#5610)
* plumb some rent

* nits

* fixups

* fixups

* fixups
2019-08-23 14:04:53 -07:00
Rob Walker 93ae98812b
change DEFAULT_NUM_TICKS_PER_SECOND to DEFAULT_TICKS_PER_SECOND (#5559) 2019-08-19 23:22:56 -07:00
Michael Vines 8258532791
System program is now registered like all other native programs (#5526) 2019-08-15 21:07:00 -07:00
Rob Walker 07d11be6ab
add global stake warmup (#5483)
* add global stake warmup

* integrate stake history into runtime

* fixup core tests

* fixup

* remove existing cooldown tests for now
2019-08-12 20:59:57 -07:00
Rob Walker ed093f86f9
harmonize percentage members (#5459)
* harmonize percentage members

* update tests

* update capitalization when burning fees

* verify capitalization in fee burn

* fixup
2019-08-09 13:58:46 -07:00
Rob Walker 7b77fbd525
add stake_history sysvar (#5475) 2019-08-09 12:31:56 -07:00
Jack May 68eff230f0
Fix name-id reporting dependency (#5354) 2019-07-30 16:22:20 -07:00
Michael Vines c78db6a94b
ledger path reform: use Path/PathBuf instead of strings (#5344) 2019-07-30 15:53:41 -07:00
Rob Walker 50a991fdf9
add executable checks to verify_instruction (#5326) 2019-07-29 15:29:20 -07:00
Rob Walker b766ac0899
rent (#5205) 2019-07-20 16:28:17 -07:00
Rob Walker 027ebb6670
no more OUT_DIR (#5139)
* no more OUT_DIR

* no more OUT_DIR

* more information about failure
2019-07-17 14:27:58 -07:00
Greg Fitzgerald 77ea8b9b3e
Add LoaderInstruction::InvokeMain (#5116)
* Remove unreachable, untested runtime check

* tx_data -> ix_data

* Add LoaderInstruction::InvokeMain

* Add test and allow loaders to be registered statically.

* Fix clippy error
2019-07-16 10:45:32 -06:00
TristanDebrunner 6b86f85916
Add C API (#5072) 2019-07-15 13:17:17 -06:00
sakridge 9b54528c8e
Fix some nightly warnings (#5093)
ONCE_INIT => Once::new
Box<Error> => Box<dyn Error>
2019-07-14 13:37:55 -07:00
Rob Walker 259a5130a8
whoops (#5083) 2019-07-12 19:08:51 -07:00
Rob Walker 0d27515d09
tmp dirs target to farf (#5079) 2019-07-12 18:28:42 -07:00
Rob Walker d2b6c2e0ce
syscall work, rename syscall to sysvar, rename current to clock (#5074)
* syscall work, rename syscall to sysvar, rename current to clock

* missed one

* nit
2019-07-12 16:38:15 -07:00
Sagar Dhawan 7c12ecbe81
Fix unnecessary computation (#5055) 2019-07-12 11:30:37 -07:00
Sagar Dhawan 0a36a78133
Fix replicator segment selection (#5046) 2019-07-11 18:31:41 -07:00
Jack May 5b95685e12
Add rewards to is_syscall_id() (#5035) 2019-07-11 13:47:22 -08:00
Sagar Dhawan 35ec7a5156
Decouple turns from segments in PoRep (#5004)
* Decouple Segments from Turns in Storage

* Get replicator local cluster tests running in a reasonable amount of time

* Fix unused imports

* Document new RPC APIs

* Check for exit while polling
2019-07-10 13:33:29 -07:00
Sagar Dhawan b8e7736af2 Move SLOTS_PER_SEGMENT to genesis (#4992)
automerge
2019-07-09 16:48:40 -07:00
Pankaj Garg f551b34725
Fix issue in polling for transaction signatures (#4923)
- Specifically if multiple confirmation for the signature is requested
2019-07-02 20:56:10 -07:00
TristanDebrunner 091999a17e
fix Instruction and CompiledInstruction field names (#4895)
* s/program_ids_index/program_id for Instruction

* s/program_ids_index/program_id_index for CompiledInstruction
2019-07-01 18:34:22 -06:00
carllin 0c8f187993
remove syscall tick height (#4891) 2019-07-01 16:21:51 -07:00
Pankaj Garg 38b44f2496
Reduce slot duration and consecutive leader slots (#4838)
* change consecutive leader slots to 4

* reduce polling frequency for transaction signature confirmation

* adjust wait time for transaction signature confirmation

* fix nominal test

* fix flakiness in wallet pay test
2019-07-01 13:21:00 -07:00
Tyera Eulberg 66552d7047
Credit-Only Accounts: Cache account balance for thread-safe load/store (#4691)
* Implement CreditOnlyLocks

* Update credit-only atomic on account load

* Update credit-only atomic after bank.freeze_lock; store credits if all credit-only lock references are dropped

* Commit credit-only credits on bank freeze

* Update core to CreditAccountLocks

* Impl credit-only in System Transfer

* Rework CreditAccountLocks, test, and fix bugs

* Review comments: Pass CreditAccountLocks by reference; Tighten up insert block

* Only store credits on completed slot

* Check balance in bench_exchange funding to ensure commit_credits has completed

* Add is_debitable info to KeyedAccount meta to pass into programs

* Reinstate CreditOnlyLocks check on lock_account

* Rework CreditAccountLocks to remove strong_count usage

* Add multi-threaded credit-only locks test

* Improve RwLocks usage

* Review comments: panic if bad things happen; tighter code

* Assert lock_accounts race does not happen

* Revert panic if bad things happen; not a bad thing
2019-06-27 17:25:10 -04:00