Kristofer Peterson
e23340d89e
Clippy cleanup for all targets and nighly rust (also support 1.44.0) ( #10445 )
...
* address warnings from 'rustup run beta cargo clippy --workspace'
minor refactoring in:
- cli/src/cli.rs
- cli/src/offline/blockhash_query.rs
- logger/src/lib.rs
- runtime/src/accounts_db.rs
expect some performance improvement AccountsDB::clean_accounts()
* address warnings from 'rustup run beta cargo clippy --workspace --tests'
* address warnings from 'rustup run nightly cargo clippy --workspace --all-targets'
* rustfmt
* fix warning stragglers
* properly fix clippy warnings test_vote_subscribe()
replace ref-to-arc with ref parameters where arc not cloned
* Remove lock around JsonRpcRequestProcessor (#10417 )
automerge
* make ancestors parameter optional to avoid forcing construction of empty hash maps
Co-authored-by: Greg Fitzgerald <greg@solana.com>
2020-06-09 09:38:14 +09:00
Ryo Onodera
caa7f7a0c9
Support opening an in-use rocksdb as secondary ( #10209 )
...
automerge
2020-06-02 21:32:44 -07:00
Kristofer Peterson
58ef02f02b
9951 clippy errors in the test suite ( #10030 )
...
automerge
2020-05-15 09:35:43 -07:00
Jack May
eb1acaf927
Remove archiver and storage program ( #9992 )
...
automerge
2020-05-14 18:22:47 -07:00
Michael Vines
2521f75c18
Advertise node software version in gossip ( #9981 )
...
* Advertise node version in gossip
* Remove solana_clap_utils::version! macro
2020-05-11 15:02:01 -07:00
Ryo Onodera
a91236012d
Pass around --max-genesis-archive-unpacked-size ( #9161 )
...
automerge
2020-04-29 18:53:34 -07:00
Jack May
efad193180
Make default programs static ( #9717 )
2020-04-27 21:05:12 -07:00
Justin Starry
87096f13d2
Update outdated solana-genesis cli help text ( #9020 )
...
automerge
2020-03-23 08:16:31 -07:00
Michael Vines
29fb79382c
Rework validator vote account defaults to half voting fees
2020-03-13 20:13:33 -07:00
Grimes
44fde2d964
genesis: Add support for multiple bootstrap validators ( #8656 )
...
automerge
2020-03-04 23:42:01 -08:00
Trent Nelson
90bedd7e06
Split signature throughput tracking out of `FeeCalculator` ( #8447 )
...
* SDK: Split new `FeeRateGovernor` out of `FeeCalculator`
Leaving `FeeCalculator` to *only* calculate transaction fees
* Replace `FeeCalculator` with `FeeRateGovernor` as appropriate
* Expose recent `FeeRateGovernor` to clients
* Move `burn()` back into `FeeCalculator`
Appease BPF tests
* Revert "Move `burn()` back into `FeeCalculator`"
This reverts commit f3035624307196722b62ff8b74c12cfcc13b1941.
* Adjust BPF `Fee` sysvar test to reflect removal of `burn()` from `FeeCalculator`
* Make `FeeRateGovernor`'s `lamports_per_signature` private
* rebase artifacts
* fmt
* Drop 'Recent'
* Drop _with_commitment variant
* Use a more portable integer for `target_signatures_per_slot`
* Add docs for `getReeRateCalculator` JSON RPC method
* Don't return `lamports_per_signature` in `getFeeRateGovernor` JSONRPC reply
2020-02-28 13:27:01 -07:00
Michael Vines
73063544bd
Move shred_version module to sdk/
2020-02-24 14:46:12 -07:00
Michael Vines
223f9707ca
\
2020-02-21 18:09:36 -07:00
Michael Vines
ea5b00364f
Add --enable-warmup-epochs flag
2020-02-21 16:59:43 -07:00
Tyera Eulberg
ab361a8073
Rename KeypairUtil to Signer ( #8360 )
...
automerge
2020-02-20 13:28:55 -08:00
Michael Vines
8c19b6268c
Add Preview operating mode, rename SoftLaunch operating mode to Stable ( #8331 )
...
automerge
2020-02-19 16:48:58 -08:00
Michael Vines
3975c7f8c9
Add --fee-burn-percentage
2020-02-18 17:43:08 -07:00
Michael Vines
8a2d4e2f72
Add storage rewards pools in development mode only
2020-02-14 21:12:38 -07:00
Michael Vines
8b5598fabd
Surface shred version more in tools ( #8163 )
...
automerge
2020-02-07 08:57:54 -08:00
Greg Fitzgerald
3aabeb2b81
Rename bootstrap leader ( #7906 )
...
* Rename bootstrap leader to bootstrap validator
It's a normal validator as soon as other validators enter the
leader schedule.
* cargo fmt
* Fix build
Thanks @CriesofCarrots!
2020-01-22 09:22:09 -07:00
Michael Vines
50c1c08235
Set bootstrap leader and net/ validator vote account commission to 100%
2020-01-15 00:25:26 -07:00
Greg Fitzgerald
b5dba77056
Rename blocktree to blockstore ( #7757 )
...
automerge
2020-01-13 13:13:52 -08:00
Michael Vines
4b3bc587ab
Add input validation for --creation-time/--lockup-date args ( #7646 )
...
automerge
2019-12-30 21:57:47 -08:00
Rob Walker
3f405d8908
Add unix_timestap to stake lockups ( #7569 )
2019-12-19 14:37:47 -08:00
Rob Walker
777ae3c215
Add time since genesis to sysvar::clock ( #7289 )
...
* genesis timestamp
* remove clock::create_account()
* ..
* add configure-able creation time
* dividing by 1T, should be dividing by 1B
2019-12-12 14:03:43 -08:00
Rob Walker
39cd6dff7d
turn on rent ( #7368 )
...
* turn on rent
* add rent exempt balances for bootstrap accounts
* use Rent::free() when not testing rent
2019-12-09 21:56:43 -08:00
Rob Walker
0d6fca5abc
500M SOL ( #7361 )
...
* 500_000_000MM SOL
* fixup
2019-12-08 14:36:09 -08:00
Michael Vines
48a085c28f
Add argument to configure the authorized pubkey for the bootstrap leader's stake ( #7362 )
...
automerge
2019-12-08 13:08:35 -08:00
Rob Walker
e2f07a5220
bs58 ( #7252 )
2019-12-03 22:18:12 -08:00
Rob Walker
369f37a0a4
genesis validators ( #7235 )
...
* genesis validators
* slp1 nodes get 500SOL
* no commission
2019-12-03 20:44:02 -08:00
Parth
ba688cf629
enforce proper range for rent burn_percent ( #7217 )
...
* enforce proper range for burn_percent
2019-12-04 00:54:01 +05:30
Rob Walker
8d75efdc58
genesis config hashmaps ( #7107 )
2019-11-26 19:23:37 -08:00
Tyera Eulberg
58c144ee55
Add getBlockTime rpc api ( #7130 )
...
* Add getBlockTime rpc api
* Add getBlockTime to docs
* Fix duration rounding for common tick/slot durations; add slot duration calculation
* Expose slots_per_year
* Use genesis values instead of clock defaults to calculate block offset
* Add get-block-time cli subcommand
* Fix test_rent: decrease magic number usage
2019-11-26 00:40:36 -07:00
Rob Walker
ef64f00cbb
Revert "Revert "add genesis stake placeholders ( #6969 )" ( #7109 )" ( #7124 )
...
This reverts commit 702f7cc51d
.
2019-11-25 15:11:55 -08:00
anatoly yakovenko
702f7cc51d
Revert "add genesis stake placeholders ( #6969 )" ( #7109 )
...
* Revert "add genesis stake placeholders (#6969 )"
This reverts commit 8a879faac7
.
* fixup! Revert "add genesis stake placeholders (#6969 )"
* fixup! fixup! Revert "add genesis stake placeholders (#6969 )"
* fixup! fixup! fixup! Revert "add genesis stake placeholders (#6969 )"
* fixup! fixup! fixup! fixup! Revert "add genesis stake placeholders (#6969 )"
* fmt
2019-11-23 23:15:21 -07:00
Rob Walker
8a879faac7
add genesis stake placeholders ( #6969 )
...
* add investor stake placeholders
fixups
fixups
review comments, fixups
make more data-looky for easier management
rent may be zero
rework with more tables, derived keys
fixups
rebase-fix
fixups
fixups
* genesis is now too big to boot in 10 seconds
2019-11-21 12:05:31 -08:00
Ryo Onodera
8cbc450192
Create genesis.tar.bz2 in solana-genesis ( #7039 )
...
* Use clap_utils
* Create genesis.tar.bz2 in solana-genesis
* Remove shell-based genesis.tar.bz2 generation
* Make Option=>Result conv more rusty
* stop using solana_logger
* Simplify by just using vec!
* clean up abit
2019-11-21 10:57:27 -07:00
Jack May
3415db9739
Merge api/program into single units ( #7061 )
2019-11-20 16:32:19 -08:00
Jack May
d184d3a732
Merge native programs parts into one unit ( #7047 )
2019-11-20 10:12:43 -08:00
Michael Vines
f8e4bdd23d
--bootstrap-storage-pubkey is now optional ( #7049 )
...
automerge
2019-11-19 14:35:56 -08:00
sakridge
c1b06817a2
Add non-dev value for slots_per_epoch and use that as default ( #6984 )
...
When --dev flag is not passed.
2019-11-16 20:53:54 -08:00
Michael Vines
5ab70c4e97
genesis: rename mint account to faucet account and make it optional ( #6990 )
2019-11-15 14:50:26 -07:00
Dan Albert
946e937549
Create development vs softlaunch environment hooks into net scripts ( #6974 )
2019-11-15 15:18:45 -05:00
Michael Vines
892ca196f1
Improve error message when unable to read a file ( #6978 )
2019-11-15 10:39:05 -07:00
Michael Vines
e7f63cd336
Upgrade to rust 1.39.0 ( #6939 )
...
* Upgrade to rust 1.39.0
* 1.39.0 clippy
2019-11-14 12:27:01 -07:00
Ryo Onodera
4fc767b3f6
Move version! from core:: to clap_utils:: ( #6944 )
...
* Move version! from core to clap-utils
* Completely move version! from core:: to clap_utils::
* rustfmt
* Do remaining transition after rebase
2019-11-14 13:10:38 +09:00
Rob Walker
bb00904fc8
add rent reserve for bootstrap stakes ( #6876 )
...
* genesis investor stakes
* assert rent is sufficient for these bootstrappers
2019-11-12 12:33:40 -08:00
Justin Starry
9807f47d4e
Rename genesis block to genesis config ( #6816 )
2019-11-08 23:56:57 -05:00
Sagar Dhawan
80a89b5e6d
Revert "Revert "Add inflation to epoch phases ( #6787 )" ( #6802 )" ( #6806 )
...
automerge
2019-11-07 18:33:14 -08:00
Sagar Dhawan
d89271528e
Revert "Add inflation to epoch phases ( #6787 )" ( #6802 )
...
automerge
2019-11-07 16:43:09 -08:00
Jack May
a9c4cd6cbe
Add inflation to epoch phases ( #6787 )
2019-11-07 10:53:04 -08:00
Rob Walker
a1fe6265fd
use pubkeys in genesis ( #6750 )
2019-11-06 11:18:25 -08:00
Greg Fitzgerald
fb12136975
Add genesis_accounts module ( #6708 )
2019-11-04 13:46:33 -07:00
Rob Walker
fa12a5f70b
kill rent calculator ( #6625 )
2019-10-30 16:25:12 -07:00
Michael Vines
68acfd36d0
Bootstrap leader's stake is now authorized to the bootstrap leader's identity key ( #6571 )
2019-10-25 22:58:35 -07:00
Michael Vines
35cc74ef25
Add GenesisBlock::OperatingMode to control how cluster features are activated ( #6430 )
2019-10-23 11:50:10 -07:00
Michael Vines
621c67a8cb
Adjust default cluster signature fees ( #6436 )
2019-10-18 17:00:51 -07:00
Greg Fitzgerald
5468be2ef9
Add solana-ledger crate ( #6415 )
...
automerge
2019-10-18 09:28:51 -07:00
Greg Fitzgerald
ae41c88eb2
Boot the Builder pattern from GenesisBlock ( #6364 )
2019-10-15 13:52:44 -06:00
Trent Nelson
9cde67086f
solana-keygen - Poor mans keypair encryption ( #6259 )
...
* SDK: Refactor (read|write)_keypair
Split file opening and data writing operations
Drop filename == "-" stdio signal. It is an app-level feature
* keygen: Move all non-key printing to stderr
* keygen: Adapt to SDK refactor
* keygen: Factor keypair output out to a helper function
2019-10-10 17:01:03 -06:00
carllin
1960ea8ed7
Add benches for shredding and poh ( #6307 )
...
* Add benches for shredding and poh
* ignore poh bench
* Factor out Poh bench as separate function
2019-10-10 14:00:24 -07:00
Sagar Dhawan
de82e60c64
Fix unrealistic hash rate expectations in genesis ( #6295 )
2019-10-09 15:47:48 -07:00
Rob Walker
7cf90766a3
add epoch_schedule sysvar ( #6256 )
...
* add epoch_schedule sysvar
* book sheesh!
2019-10-08 22:34:26 -07:00
Rob Walker
a964570b1a
add authorities to stake init ( #6104 )
...
* add authorities to stake init
* fixups
* code review
2019-09-26 13:29:29 -07:00
Michael Vines
d7e4c8e3cf
Support primordial accounts with no data ( #6053 )
2019-09-24 10:42:33 -07:00
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
Parth
468095ede2
Update project to use new account serialization format ( #5848 )
2019-09-09 16:17:10 -07:00
Jack May
e8d88f3237
Split SDK's timing.rs ( #5823 )
2019-09-06 14:30:56 -07:00
Parth
6057768fdc
Support arbitrary account creation in genesis ( #5799 )
2019-09-06 23:45:23 +05:30
Rob Walker
0ffe7a9c8f
plumb some rent ( #5610 )
...
* plumb some rent
* nits
* fixups
* fixups
* fixups
2019-08-23 14:04:53 -07:00
Michael Vines
3450b9a44d
Rename solana to solana-core ( #5583 )
2019-08-21 10:23:33 -07:00
Rob Walker
94f1132fb6
fix single node testnet, remove bootstrap vote ( #5534 )
2019-08-15 18:58:46 -07:00
Rob Walker
88ea950652
add stake_api config account ( #5531 )
2019-08-15 14:35:48 -07:00
Jack May
d09afdbefe
Synchronize and cleanup instruction processor lists ( #5356 )
2019-07-31 14:28:14 -07:00
Michael Vines
c78db6a94b
ledger path reform: use Path/PathBuf instead of strings ( #5344 )
2019-07-30 15:53:41 -07:00
Sagar Dhawan
8120b57f17
Setup reward pools in genesis ( #4831 )
...
automerge
2019-06-26 13:51:17 -07:00
Rob Walker
8a64e1ddc3
add fee burning ( #4818 )
2019-06-26 10:13:21 -07:00
Sagar Dhawan
11992946a4
Add storage reward pools ( #4779 )
2019-06-22 17:18:35 -07:00
Sagar Dhawan
22b767308a
Add insturctions to run a replicator on testnet ( #4733 )
2019-06-21 16:32:23 -07:00
Rob Walker
2e2b1881f5
move genesis_block to builder pattern ( #4736 )
2019-06-19 15:40:39 -07:00
Sagar Dhawan
119467df59
Add storage mining pool to genesis and implement automatic reward redeeming ( #4683 )
...
* Add storage mining pool to genesis and implement automatic reward collection
* Address review comments
2019-06-13 22:30:51 -07:00
Michael Vines
8e86014311
Update stakers_slot_offset if slots_per_epoch is adjusted ( #4660 )
2019-06-12 14:12:17 -07:00
Jack May
0dcdc37fec
Split BPF loader to match the rest of the programs ( #4636 )
2019-06-12 08:49:59 -07:00
Pankaj Garg
288a3bdcd9
Provision bench client accounts in genesis block ( #4648 )
...
* fixes to script
* shellcheck
* address review comments
2019-06-11 18:47:35 -07:00
Rob Walker
3217a1d70c
use highest staked node as bootstrap leader, remove bootstrap_leader from genesis_block ( #4635 )
...
* use highest staked node as bootstrap leader, remove bootstrap_leader from genesis_block
* clippy
* fixup
* fixup
2019-06-11 11:44:58 -07:00
Rob Walker
e56430c9fb
make runtime depend on bpf_loader ( #4601 )
...
* make runtime depend on bpf_loader
* remove vote redundancy, move bpf_loader to genesis, export program\! from bpf_loader crate
* move bpf_loader specification into genesis
* bpf tests to use genesis with bpf
* need to avoid depending on programs, except for macros
2019-06-11 10:27:22 -07:00
Michael Vines
e4d8ea11ac
Make lamports_per_signature dynamic based on cluster load ( #4562 )
...
* Make lamports_per_signature dynamic based on cluster load
* Move transaction-fees.md to implemented
2019-06-10 22:18:32 -07:00
Pankaj Garg
9259d342ac
Facility to provision primordial accounts for fullnodes in genesis block ( #4631 )
...
* updated usage
* shellcheck
* support replicators
* disable airdrops if primordial accounts are used
* review comments
2019-06-10 19:42:49 -07:00
Rob Walker
a18c0e34f4
add activate_stake to stake_api ( #4600 )
2019-06-10 12:17:29 -07:00
Rob Walker
fd9fd43e83
add solana_name_id, reassociate names with modules, modularize id tests ( #4580 )
2019-06-06 19:27:49 -07:00
Pankaj Garg
191483f4ee
Facility to add accounts with specific balance to genesis block ( #4585 )
...
* Facility to add accounts with specific balance to genesis block
* address review comments
2019-06-06 19:24:09 -07:00
Sagar Dhawan
de5cad9211
Add account owner to Storage Accounts ( #4537 )
...
* Add account owner to Storage Accounts
* Fix tests
2019-06-04 14:52:52 -07:00
Michael Vines
9754e551cb
Fund vote accounts with 1 lamport only ( #4512 )
2019-06-03 14:48:01 -07:00
Michael Vines
ec5cca41bc
Separate bootstrap leader's stake lamports from its identity lamports ( #4510 )
...
* Revert "Prevent run.sh from running beyond the first epoch under normal use (#4498 )"
This reverts commit d343c409e6
.
* Separate bootstrap leader's stake lamports from its identity lamports
2019-05-31 19:58:52 -07:00
Michael Vines
d343c409e6
Prevent run.sh from running beyond the first epoch under normal use ( #4498 )
...
The local cluster that run.sh starts will typically only have a single
node, the bootstrap leader. With epoch warmup enabled, run.sh will fail
after ~90 seconds once the warmup period has been exceeded due to lack
of votes from other validators.
As a workaround, disable epoch warmup and set slots-per-epoch to 1
million to keep run.sh alive for more than a fortnight.
2019-05-31 15:42:32 -07:00
Michael Vines
39b40dfff8
Remove runtime dependency on storage ( #4480 )
2019-05-30 10:54:28 -07:00
Michael Vines
b37d2fde3d
Add storage mining pool ( #4364 )
...
* Add storage mining pool
* Set gossip port
* Add create-storage-mining-pool-account wallet command
* Add claim-storage-reward wallet command
* Create storage account upfront
* Add storage program to genesis
* Use STORAGE_ACCOUNT_SPACE
* Fix tests
* Add wallet commands to create validator/replicator storage accounts
* Add create_validator_storage_account()
* Storage stage no longer implicitly creates a storage account
2019-05-23 14:50:23 -07:00
Sagar Dhawan
c9ba9e4eb7
Add storage space constant ( #4366 )
...
automerge
2019-05-21 11:07:13 -07:00
Sagar Dhawan
d15e248cdb
Add bootstrap storage account to genesis ( #4359 )
...
* Add bootstrap storage account to genesis
* Add storage account genesis command to run.sh
* Update airdrop for all validators
* Remove unhelpful Short for arg
* Set the correct program owner
2019-05-20 19:46:15 -07:00
Michael Vines
392a39dd54
Poh subsystem cleanup, genesis plumbing, enable real PoH on edge testnet ( #4292 )
...
* Remove unused PohServiceConfig::Step
* Clarify variable name
* Poh::hash() now takes an iteration counter
* man -> max
* Inline functions with single call site
* Move PohServiceConfig into GenesisBlock
* Add plumbing to enable real PoH on testnets
* Batch hashes to improve PoH hash rate
* Ensure a constant hashes_per_tick
* Remove PohEntry mixin field
* Poh/PohEntry no longer maintains tick_height
* Ensure a constant hashes_per_tick
* ci/localnet-sanity.sh: Use real PoH
* Rework Poh/PohService to keep PohRecorder unlocked as much as possible while hashing
2019-05-18 14:01:36 -07:00