Greg Fitzgerald
1c498369b5
Remove fee-payer guesswork from Message and Transaction ( #10776 )
...
* Make Message::new_with_payer the default constructor
* Remove Transaction::new_[un]signed_instructions
These guess the fee-payer instead of stating it explicitly
2020-06-24 14:52:38 -06:00
Tyera Eulberg
fd2508b09e
Add jsonParsed option for EncodedTransactions; add memo parser ( #10711 )
...
* Add jsonParsed option for EncodedTransactions; add memo parser
* Use kebab case for program names
* Add account-key parsing
* Add parse test
2020-06-19 16:15:13 -06:00
Greg Fitzgerald
6ee222363e
Move BankForks to solana_runtime ( #10637 )
...
* Move BankForks to solana_runtime
* Update imports
2020-06-17 15:27:03 +00:00
Greg Fitzgerald
891aa8c13e
Add RequestProcessor constructor to simplify testing ( #10631 )
...
* Add JsonRpcRequestProcessor constructor
* Avoid start_rpc_handler_with_tx monolith in rpc tests
* pub
* Pass an Arc, so that caller can poke the bank
2020-06-16 23:30:59 -06:00
Jack May
b6a9573748
Route all loader messages to log collector ( #10528 )
2020-06-13 13:20:08 -07:00
Greg Fitzgerald
2eb6f498a8
Remove redundant BankForks parameter ( #10537 )
2020-06-12 11:04:17 -06:00
Greg Fitzgerald
9077c4a776
Enable jsonrpc client ( #10522 )
2020-06-11 16:51:25 -06:00
Michael Vines
8e2745c2a2
Clean up delinquency slot distance computation
2020-06-09 11:27:30 -07:00
Michael Vines
ed351400b2
Add SendTransactionService
2020-06-09 07:46:40 -07:00
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
Greg Fitzgerald
af8c21c559
Remove lock around JsonRpcRequestProcessor ( #10417 )
...
automerge
2020-06-07 20:54:03 -07:00
Michael Vines
7e2651ca51
RPC simulateTransaction endpoint now returns program log output ( #10432 )
2020-06-06 10:18:28 -07:00
Justin Starry
754f25ae99
Avoid AccountInUse errors when simulating transactions ( #10391 )
...
automerge
2020-06-04 19:06:01 -07:00
Michael Vines
ebf8a65526
Add test_rpc_send_transaction_preflight
2020-06-01 17:51:04 -07:00
Michael Vines
9158479dc4
Add node health check to transaction preflight
2020-06-01 17:51:04 -07:00
Michael Vines
189aa7962e
Add preflight checks to sendTransaction RPC method
2020-06-01 17:51:04 -07:00
Greg Fitzgerald
19d11800bf
Remove WithSigner ( #10325 )
...
automerge
2020-05-29 23:17:44 -07:00
Michael Vines
eb45aaa6c3
Added --health-check-slot-distance ( #10324 )
2020-05-29 15:31:52 -07:00
Tyera Eulberg
b563b49ed5
Improve Rpc inflation tooling ( #10309 )
...
automerge
2020-05-29 11:50:25 -07:00
Kristofer Peterson
fb4d8e1f62
cleanup clippy tests ( #10172 )
...
automerge
2020-05-29 00:26:06 -07:00
Tyera Eulberg
3f0995d3b4
Add commitment parameter to getFeeCalculatorForBlockhash ( #10255 )
...
* Accept commitment parameter on getFeeCalculatorForBlockhash
* Update docs
* Add get_fee_calculator_for_blockhash_with_commitment to rpc client
2020-05-26 17:23:58 -06:00
Tyera Eulberg
4e431bc818
Add mechanism to get blockhash's last valid slot ( #10239 )
...
automerge
2020-05-26 12:06:21 -07:00
Tyera Eulberg
2928c5d103
Add SingleGossip commitment level to use for subscriptions ( #10147 )
...
automerge
2020-05-22 12:55:17 -07:00
Tyera Eulberg
12a3b1ba6a
Fixup deserialize_bs58_transaction, and make a few error types more targeted ( #10171 )
...
automerge
2020-05-21 17:30:02 -07:00
Michael Vines
324cfd40f0
Add v0 REST APIs for circulating and total supply ( #10102 )
2020-05-20 20:04:07 -07:00
sakridge
ce17de7d25
Add option to wait for a specific epoch length to bench-tps ( #10083 )
2020-05-20 16:42:46 -07:00
Michael Vines
417f0e41fa
Add stake-o-matic ( #10044 )
...
automerge
2020-05-20 16:15:03 -07:00
Michael Vines
427c78d891
Add SimulateTransaction RPC endpoint ( #10106 )
...
automerge
2020-05-19 12:08:19 -07:00
Tyera Eulberg
bac4aec16f
Trigger RPC notifications after block commitment cache update ( #10077 )
...
* Fixup commitment-aggregation metric
* Trigger notifications after commitment-cache update
* Fixup fn name
* Add single-confirmation commitment level
* Rename to highest_confirmed_slot
* Pass commitment-cache info directly to notifications
* Use match
* Update commitment docs
* Update out of date pubsub docs
2020-05-18 12:49:01 -06: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
Tyera Eulberg
ee7f15eff1
Rpc: optionally filter getLargestAccounts by circulating/nonCirculating ( #10007 )
...
* Add circ/non-circ filter to getLargestAccounts
* Plumb largest accounts into client and cli
* Bump timeout toward CI flakiness
* Update docs
2020-05-12 21:05:05 -06:00
Michael Vines
84b6120983
getClusterNodes RPC API now includes the node software version ( #9990 )
2020-05-11 21:30:01 -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
Tyera Eulberg
965204b8e0
Check slot cleaned up for RPC blockstore/slot queries ( #9982 )
...
automerge
2020-05-11 14:47:40 -07:00
Tyera Eulberg
3ee702a922
Rpc: Add getCirculatingSupply endpoint, redux ( #9953 )
...
* Add Bank.clock() helper
* Add non-circulating calculations
* Plumb getSupply rpc endpoint
* Add docs for getSupply, and remove getTotalSupply from docs
* Add pubkeys! procedural macro
* Use procedural macro in non_circulating_supply
2020-05-09 12:05:29 -06:00
Tyera Eulberg
627bc7e3a9
Rpc: Filter blockstore data by cluster-confirmed root ( #9873 )
...
automerge
2020-05-04 18:39:27 -07:00
Tyera Eulberg
f5b0d13f08
Rpc: add getLargestAccounts endpoint ( #9869 )
...
automerge
2020-05-04 16:46:10 -07:00
Tyera Eulberg
6deaf649ef
Add commitment Root variant, and add fleshed out --commitment arg to Cli ( #9806 )
...
automerge
2020-04-29 21:55:33 -07:00
Tyera Eulberg
efb4988d10
Rpc: remove unwraps ( #9793 )
...
automerge
2020-04-29 12:06:09 -07:00
Tyera Eulberg
655e3bc418
Rpc: Use cluster largest_confirmed_root as commitment max ( #9750 )
...
automerge
2020-04-28 10:20:43 -07:00
Tyera Eulberg
a12428a5b8
Use Blockstore lowest_slot to start root iterator ( #9738 )
2020-04-28 10:22:10 -06:00
Tyera Eulberg
a7f33b5014
Cache banks in BankForks until optional largest_confirmed_root ( #9678 )
...
automerge
2020-04-24 15:49:57 -07:00
Greg Fitzgerald
76b1c2baf0
One less alloc per transaction ( #9705 )
...
* One less alloc per transaction
* Fix benches
* Fix compiler warnings in bench build
* Fix move build
* Fix bench
2020-04-24 13:03:46 -06:00
Tyera Eulberg
5d2f488004
Add getLowestNonpurgedBlock rpc; use blockstore api in getConfirmedBlocks ( #9656 )
...
automerge
2020-04-22 13:33:06 -07:00
Tyera Eulberg
d5abff82e0
Add largest_confirmed_root to BlockCommitmentCache ( #9640 )
...
* Add largest_confirmed_root to BlockCommitmentCache
* clippy
* Add blockstore to BlockCommitmentCache to check root
* Add rooted_stake helper fn and test
* Nodes that are behind should correctly id confirmed roots
* Simplify rooted_stake collector
2020-04-22 12:22:09 -06:00
carllin
bab3502260
Push down cluster_info lock ( #9594 )
...
* Push down cluster_info lock
* Rework budget decrement
Co-authored-by: Carl <carl@solana.com>
2020-04-21 12:54:45 -07:00
Justin Starry
3023691487
RPC: Allow single slot address history queries ( #9630 )
2020-04-22 01:08:06 +08:00
Tyera Eulberg
18cba86f77
Wait for supermajority of cluster to have rooted a transaction to consider it finalized ( #9618 )
...
* Add rooted stake to BlockCommitment
* Use rooted stake to include cluster check
2020-04-20 23:25:49 -06:00
Michael Vines
914b022663
cli: Add transaction-history ( #9614 )
...
automerge
2020-04-20 22:01:09 -07:00
Tyera Eulberg
91159ea8e3
Rpc: Add getConfirmedSignaturesForAddress ( #9407 )
...
automerge
2020-04-09 20:21:31 -07:00
Tyera Eulberg
e1aa247548
Rpc: Add getConfirmedTransaction ( #9381 )
...
* Add blockstore method to return a complete transaction by signature
* Plumb getConfirmedTransaction rpc
* Add doc
2020-04-09 00:57:30 -06:00
Tyera Eulberg
acf64f8476
Update getSignatureStatuses to return historical statuses ( #9314 )
...
automerge
2020-04-06 03:04:54 -07:00
Justin Starry
b584174d67
Deprecate `confirmTransaction`, `getSignatureStatus`, and `getSignatureConfirmation` ( #9298 )
...
* Deprecate `confirmTransaction`, `getSignatureStatus`, etc
* Rename get_signature_statuses to get_signature_statuses_with_commitment
Co-authored-by: Michael Vines <mvines@gmail.com>
2020-04-05 14:31:24 +08:00
Michael Vines
ad0997e15f
RPC: add `err` field to TransactionStatus, alongside the now deprecated `status` field ( #9296 )
...
automerge
2020-04-04 16:13:26 -07:00
Tyera Eulberg
25ee36bbba
Undo breaking rpc removal of getSignatureConfirmation ( #9245 )
2020-04-01 17:56:18 -06:00
Justin Starry
c7ba1994ac
Undo getSignatureStatus breaking change, add getSignatureStatuses ( #9228 )
...
automerge
2020-04-01 11:30:58 -07:00
Jack May
268e04cb4a
Rename CustomError to Custom ( #9207 )
2020-04-01 09:01:11 -07:00
Tyera Eulberg
50fa577af8
Use cluster confirmations in rpc and pubsub ( #9138 )
...
* Add runtime methods to simply get status and slot
* Add helper function to get slot confirmation_count from BlockCommitmentCache
* Return cluster confirmations in getSignatureStatus
* Remove use of invalid get_signature_confirmation_status
* Remove unused methods
* Update pubsub to use cluster confirmations
* Fix test_check_signature_subscribe failure
* Refactor confirmations to read commitment cache only once
* Review comments
* Use bank, root from BlockCommitmentCache
* Update docs
* Add metric for block-commitment aggregations
Co-authored-by: Justin Starry <justin@solana.com>
2020-03-30 17:53:25 -06:00
Tyera Eulberg
62040cef56
Store BlockCommitmentCache slot and root metadata ( #9154 )
...
automerge
2020-03-30 10:29:30 -07:00
Tyera Eulberg
4b97e58cba
Consolidate signature-status rpcs ( #9069 )
...
* getSignatureStatus: return confirmations for non-rooted transactions
* Remove getNumConfirmations.. rpc
* Remove getSignatureConfirmation
* Review comments
* More review comments
2020-03-26 19:21:01 -06:00
sakridge
b7b4aa5d4d
move rpc types from client to client-types crate ( #9039 )
...
* Separate client types into own crate, so ledger does not need it
Removes about 50 crates of dependency from ledger
* Drop Rpc name from transaction-status types
2020-03-26 13:29:30 -07:00
Tyera Eulberg
1b8f9e75dd
Update getSignatureStatus: support multiple signatures, include slot in each response item ( #9022 )
...
* Rename enable-rpc-get-confirmed-block
* Rename RpcTransactionStatus -> RpcTransactionStatusMeta
* Return simplified RpcTransactionStatus; Add support for multiple transactions
* Update docs
* typo
2020-03-23 11:25:39 -06:00
Justin Starry
a0ffcc61ae
Add slot info to Bank::get_signature_confirmation_status ( #9018 )
2020-03-23 21:55:15 +08:00
Michael Vines
18c1f0dfe9
Remove stub core/src/genesis_utils.rs ( #8999 )
2020-03-21 10:54:40 -07:00
anatoly yakovenko
9cedeb0a8d
Pull streamer out into its own module. ( #8917 )
...
automerge
2020-03-17 23:30:23 -07:00
Michael Vines
cea8067219
Disable setLogFilter RPC API by default ( #8693 )
...
automerge
2020-03-06 16:03:10 -08:00
Trent Nelson
4db074a5aa
RPC: Add `getFeeCalculatorForBlockhash` method call ( #8687 )
...
Returns the `FeeCalculator` associated with the given blockhash, or
`null` if said blockhash has expired
2020-03-06 17:01:31 -07:00
Grimes
f89c22b5ee
`solana catchup` now detects when you try to catchup to yourself ( #8635 )
...
automerge
2020-03-04 14:44:21 -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
Tyera Eulberg
ab361a8073
Rename KeypairUtil to Signer ( #8360 )
...
automerge
2020-02-20 13:28:55 -08:00
Michael Vines
1bf2285fa2
ledger-tool: Add print-accounts command
2020-02-14 19:59:48 -07:00
Michael Vines
c4fd81fc1c
The getConfirmedBlock RPC API is now disabled by default
...
The --enable-rpc-get-confirmed-block flag allows validators to opt-in to
the higher disk usage and IOPS.
2020-02-11 22:24:08 -07:00
François Garillot
f016c9a669
Maintenance : simplify a few patterns, remove unneeded dependencies ( #8137 )
...
* Simplify a few pattern matches
* Removing unneeded dependencies, upgrading internal version #s
net-shaper: Removing log, semver, serde_derive
bench-tps: Removing serde, serde_derive
banking-bench: Removing solana
ledger-tool: Removing bincode, serde, serde_derive
librapay: Removing solana, language_e2e_tests
log-analyzer: Removing log, semver, serde_derive
exchange: Removing solana
core: Removing crc, memmap, symlink, untrusted
perf: Removing serde_derive
genesis: Removing hex, serde_derive
sdk-c: Removing sha2
sys-tuner: Removing semver
bench-exchange: Removing bincode, bs58, env_logger, serde, serde_derive, untrusted, ws
btc_spv_bin: Removing serde_json
btc_spv: Removing chrono
bpf_loader: Removing serde
ledger: Removing dlopen, dlopen_derive, serde_derive
move_loader: Removing byteorder, libc, language_e2e_tests
ownable: Removing serde, serde_derive
client: Removing rand
archiver-utils: Removing rand_chacha
validator: Removing serde_json, tempfile
param_passing_dep: Removing solana
failure: Removing log
vest: Removing log
vote-signer: Removing bs58, serde
local-cluster: Removing symlink
keygen: Removing rpassword
install: Removing bs58, log
upload-perf: Removing log
runtime: Removing serde_json
stake: Removing rand
* Add modified Cargo.lock
* fixup! Simplify a few pattern matches
* fixup! Simplify a few pattern matches
2020-02-06 10:02:38 -07:00
Michael Vines
a03d441e6f
Add rpc port sanity checks, fix tests
2020-01-30 20:57:58 -07:00
Michael Vines
3900d09f6f
Employ rpc_port defaults
2020-01-30 20:57:58 -07:00
Michael Vines
81ba18eea6
Add --private-rpc flag
2020-01-30 20:57:58 -07:00
Michael Vines
c4faccc77f
getClusterNodes now excludes validators with a different shred version
2020-01-29 20:08:42 -07:00
carllin
4ffd7693d6
Add lock to make sure slot-based locktree calls are safe ( #7993 )
2020-01-28 13:45:41 -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
Tyera Eulberg
65f5885bce
sendTransaction rpc: expect transaction as base58 string ( #7913 )
2020-01-21 22:16:07 -07:00
Tyera Eulberg
7a132eabb4
Update JSON-RPC documentation ( #7915 )
...
* Streamline getBlockCommitment response
* Update json-rpc docs
2020-01-21 20:17:33 -07:00
Rob Walker
7e1b380f01
Move vote_state current credits into epoch_credits ( #7909 )
...
* Move vote_state current credits into epoch_credits
* fixups
* fixup
2020-01-21 19:08:40 -08:00
Michael Vines
93036bec01
Add minimumLedgerSlot RPC API
2020-01-21 14:05:26 -07:00
Jack May
663e98969d
Use a different error to test rpc response ( #7900 )
...
automerge
2020-01-21 12:42:23 -08:00
Tyera Eulberg
da165d6943
Fix Rpc inconsistencies ( #7826 )
...
* Update rpc account format: remove byte arrays
* Base58-encode pubkeys in getStoragePubkeysForSlot
* Update docs
2020-01-15 15:33:53 -07:00
Tyera Eulberg
6d3b8b6d7d
Remove tuples from JSON RPC responses ( #7806 )
...
* Remove RpcConfirmedBlock tuple
* Remove getRecentBlockhash tuple
* Remove getProgramAccounts tuple
* Remove tuple from get_signature_confirmation_status
* Collect Rpc response types
* Camel-case epoch schedule for rpc response
* Remove getBlockCommitment tuple
* Remove getStorageTurn tuple
* Update json-rpc docs
2020-01-15 00:25:45 -07:00
Greg Fitzgerald
b5dba77056
Rename blocktree to blockstore ( #7757 )
...
automerge
2020-01-13 13:13:52 -08:00
Tyera Eulberg
a17d5795fb
getConfirmedBlock: add encoding optional parameter ( #7756 )
...
automerge
2020-01-12 21:34:30 -08:00
Jack May
07855e3125
Allow override of RUST_LOG ( #7705 )
2020-01-08 09:19:12 -08:00
Rob Walker
a7040896f0
Update to rust 1.40.0 ( #7572 )
...
* Update to rust 1.40.0
* fixups
2019-12-19 23:27:54 -08:00
Tyera Eulberg
c5b076ec7e
Add getConfirmedBlocks rpc method ( #7550 )
...
automerge
2019-12-18 15:51:47 -08:00
Michael Vines
bd22b641b3
Speed up getLeaderSchedule RPC call by reducing pubkey duplication
2019-12-18 15:59:55 -07:00
Michael Vines
434cde179f
GetLeaderSchedule can now return a schedule for arbitrary epochs
2019-12-17 23:41:42 -07:00
Tyera Eulberg
3513f4ee84
Rename drone to faucet ( #7508 )
2019-12-16 14:05:17 -07:00
Tyera Eulberg
6b88da2b82
Hook up getBlockTime rpc to real data ( #7476 )
...
* Add blocktree timestamp helper functions and tests
* Flesh out blocktree::get_block_time
* Move stakes up into rpc to make testing easier; expand tests
* Review comments
2019-12-14 12:23:02 -07:00
Michael Vines
d01ea20273
getVoteAccounts now excludes listing inactive unstaked accounts as delinquent
...
This keeps abandoned vote accounts out of the `solana show-validators` output
2019-12-14 09:52:03 -07:00
Justin Starry
dad5c62df5
Add uptime column to show-validators ( #7441 )
...
automerge
2019-12-11 22:04:54 -08:00
Michael Vines
77cd292828
getVoteAccounts RPC API no longer returns "idle" vote accounts, take II
2019-12-07 01:16:36 -07:00
Michael Vines
22d6951de5
Revert "getVoteAccounts RPC API no longer returns "idle" vote accounts"
...
This reverts commit 103e40b9689d74ece606385a67d166f55f453823.
2019-12-07 01:16:36 -07:00
Michael Vines
42247e0e1a
getVoteAccounts RPC API no longer returns "idle" vote accounts ( #7339 )
2019-12-06 20:23:29 -05: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
Tyera Eulberg
0f66e5e49b
Add getConfirmedBlock test to rpc ( #7120 )
...
automerge
2019-11-25 11:08:03 -08:00
Jack May
d184d3a732
Merge native programs parts into one unit ( #7047 )
2019-11-20 10:12:43 -08:00
Tyera Eulberg
ea656b1a3f
Add parent slot to getConfirmedBlock ( #7038 )
...
* Add parent slot to getConfirmedBlock
* Fix bad text-replace
* Use camelCase in getConfirmedBlock
2019-11-19 09:39:55 -07:00
Tyera Eulberg
e0a2bb9d86
Legitimately map transactions to statuses in blocktree ( #7011 )
...
* Refactor rocksdb TransactionStatus to store/return struct; hook up map_transactions_to_statuses
* Cleanup use statements
2019-11-18 09:12:42 -07:00
Tyera Eulberg
3bc8d78801
Add ConfirmedBlock struct, and rework Blocktree apis to include block… ( #7004 )
...
* Add RpcConfirmedBlock struct, and rework Blocktree apis to include blockhash info and dummy tx statuses
* Remove unused lifetime
2019-11-17 20:17:15 -07:00
Tyera Eulberg
852a2146ab
Add Blocktree api to get transactions by slot ( #6966 )
...
* Add blocktree method to get confirmed-block txs
* Clean up use statements
* Add test, and fmt
* Plumb new blocktree method into getConfirmedBlock
2019-11-14 16:34:39 -07:00
Tyera Eulberg
03f7f0d18c
Rename getBlock to getConfirmedBlock; remove getBlocksSince ( #6961 )
...
automerge
2019-11-14 13:14:42 -08: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
Greg Fitzgerald
30a08f4282
Cleanup ledger macros ( #6916 )
...
automerge
2019-11-13 07:14:09 -08:00
Michael Vines
86faa3f995
Properly type RpcClient::get_version() ( #6919 )
2019-11-12 22:01:04 -07:00
Sunny Gleason
5903339c17
feat: return bank/block info with block-related results ( #6716 )
2019-11-12 14:49:41 -05:00
Tyera Eulberg
7e82450d7b
Serialize transaction in proper wire format instead of json ( #6889 )
2019-11-12 10:45:10 -05:00
Tyera Eulberg
cc6e1ea200
Stub out `getBlocksSince` and `getBlock` methods ( #6853 )
...
* Add getBlocksSince rpc method, and initial stub of getBlock method
* Return test transactions from getBlock method
* clippy
* Add comment on get_block method
2019-11-11 13:18:34 -05:00
Michael Vines
cfab36cb1d
Include channel and commit info in the version of pre-release builds ( #6819 )
2019-11-10 22:39:13 -07:00
Justin Starry
5835b3b8eb
Increase timeout when confirming airdrop for max commitment ( #6858 )
...
* Increase timeout when confirming airdrop for max commitment
* Add commitment to airdrop rpc trace
* Flip commitment check
2019-11-10 12:20:52 -05:00
Justin Starry
9807f47d4e
Rename genesis block to genesis config ( #6816 )
2019-11-08 23:56:57 -05:00
Tyera Eulberg
b3a75a60a4
Use rooted bank by default in rpc bank selection ( #6759 )
...
* Name anonymous parameters for clarity
* Add CommitmentConfig to select bank for rpc
* Add commitment information to jsonrpc docs
* Update send_and_confirm retries as per commitment defaults
* Pass CommitmentConfig into client requests; also various 'use' cleanup
* Use _with_commitment methods to speed local_cluster tests
* Pass CommitmentConfig into Archiver in order to enable quick confirmations in local_cluster tests
* Restore solana ping speed
* Increase wallet-sanity timeout to account for longer confirmation time
2019-11-06 14:15:00 -07:00
Jack May
9614d17024
Limit deserialization of data coming off the wire ( #6751 )
...
* Limit deserialization of data coming off the wire
* Feedback and cleanup
2019-11-06 00:07:57 -08:00
Tyera Eulberg
33f4aaf3fd
Rename confidence to commitment ( #6714 )
2019-11-04 16:44:27 -07:00
Michael Vines
50a17fc00b
Use Slot and Epoch type aliases instead of raw u64 ( #6693 )
...
automerge
2019-11-02 00:38:30 -07:00
Rob Walker
fa12a5f70b
kill rent calculator ( #6625 )
2019-10-30 16:25:12 -07:00
Sunny Gleason
0b2d4f32fa
feat: get epoch schedule rpc, update cli ( #6500 )
2019-10-22 16:41:18 -04:00
Greg Fitzgerald
2636418659
Move blocktree_processor to solana_ledger ( #6460 )
...
* Drop core::result dependency in bank_forks
* Move blocktree_processor into solana_ledger
2019-10-20 09:54:38 -06:00
Greg Fitzgerald
5468be2ef9
Add solana-ledger crate ( #6415 )
...
automerge
2019-10-18 09:28:51 -07:00
Michael Vines
88bb55ffd2
Add get_vote_accounts() to RPC client
2019-10-14 20:38:51 -07:00
Michael Vines
5508ac6272
Add root slot to getVoteAccounts
2019-10-14 20:38:51 -07:00
Tyera Eulberg
5d99853502
Add getBlockConfidence rpc endpoint ( #6350 )
...
automerge
2019-10-14 15:24:10 -07:00
Greg Fitzgerald
322fcea6e5
More fullnode to validator renaming ( #6337 )
2019-10-11 13:30:52 -06:00
Michael Vines
d50aef8404
Add get-epoch-info command ( #6161 )
...
automerge
2019-09-27 22:00:30 -07:00
Tyera Eulberg
c9e58743e7
Prevent subtract overflow panic when slot < MAX_LOCKOUT_HISTORY ( #6135 )
2019-09-26 19:40:18 -06:00
Parth
67d07254c2
Add rent estimation rpc ( #6109 )
...
* server side new rpc endpoint
* client side rpc
* take data_len as usize
Co-Authored-By: Tyera Eulberg <teulberg@gmail.com>
* add test and documentation
2019-09-26 23:27:13 +05:30
Michael Vines
1f9fde5f7b
ThinClient internal name grooming ( #5800 )
2019-09-06 09:07:40 -07:00
Tyera Eulberg
85e5fbeb35
Add absoluteSlot to getEpochInfo ( #5765 )
2019-09-02 12:21:06 -07:00
Sunny Gleason
34ab25a88b
feat: getInflation() endpoint ( #5681 )
2019-08-27 18:17:03 -04:00
Michael Vines
4e827af392
Remove unnecessary trailing semicolons ( #5636 )
2019-08-23 22:47:54 -07:00
Rob Walker
0ffe7a9c8f
plumb some rent ( #5610 )
...
* plumb some rent
* nits
* fixups
* fixups
* fixups
2019-08-23 14:04:53 -07:00
Michael Vines
e2d6f01ad3
solana-validator now verifies its genesis blockhash against the cluster entrypoint ( #5589 )
2019-08-21 18:16:40 -07:00
carllin
bb558acdf0
Change JsonRpc exit to use wait->close ( #5566 )
...
* Add wait-close-join pattern to rpc_service
* Create ValidatorExit struct
2019-08-20 23:59:31 -07:00
Tyera Eulberg
8d105042ea
Update getEpochVoteAccounts to getVoteAccounts ( #5543 )
...
* Rework getEpochVoteAccounts into getVoteAccounts
* Update client apis
* Update docs
* Review comments
2019-08-16 17:02:19 -06:00
Michael Vines
54f4d13350
Validator log filter may now be reconfigured at runtime ( #5473 )
...
* Log filter may now be reconfigured at runtime
* Add RPC API and bash script to reconfigure the log filter
2019-08-10 22:54:46 -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
Tyera Eulberg
5b51bb27b6
Rpc to return software version ( #5456 )
...
* Add getSoftwareVersion rpc
* Add getSoftwareVersion to doc
* Rename to getVersion and return object
* Update jsonrpc-api.md
2019-08-07 20:06:27 -06:00
Tyera Eulberg
3f54c0f1a6
Update struct order arbitrarily to match rpc output ( #5197 )
2019-07-19 11:45:04 -06:00
Michael Vines
adfb8ff2a1
Add getEpochInfo() and getLeaderSchedule() RPC methods ( #5189 )
...
* Add getLeaderSchedule() RPC method
* Add getEpochInfo() RPC method
* Add JSON RPC docs
2019-07-19 07:31:18 -07:00
Tyera Eulberg
b2c776eabc
Fix getProgramAccounts RPC ( #5024 )
...
* Use scan_accounts to load accounts by program_id
* Add bank test
* Use get_program_accounts in RPC
2019-07-11 12:58:28 -06: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
Rob Walker
f537482c86
remove set_leader from cluster_info ( #4998 )
2019-07-09 22:06:47 -07:00
Sagar Dhawan
b8e7736af2
Move SLOTS_PER_SEGMENT to genesis ( #4992 )
...
automerge
2019-07-09 16:48:40 -07:00
Rob Walker
12ef0c25b5
change vote commission to u8 (from u32) ( #4887 )
...
automerge
2019-07-02 14:18:11 -07:00
Tyera Eulberg
d7ed3b8024
Add RPC api to return program accounts ( #4876 )
...
automerge
2019-06-29 09:59:07 -07:00
Rob Walker
8a64e1ddc3
add fee burning ( #4818 )
2019-06-26 10:13:21 -07:00
Trent Nelson
8acbb4ab2f
Bank cap rpc ( #4774 )
...
* core/rpc: Name magic number for minted lamports in tests genesis block
* core/rpc: Expose bank::capitalization() via getSolTotalSupply RPC method
* book: Add entry for getTotalSupply RPC method
2019-06-21 21:00:26 -07:00
Michael Vines
f39e74f0d7
serde the full FeeCalculator ( #4778 )
...
automerge
2019-06-21 17:23:26 -07:00
carllin
8c1b9a0b67
Data plane verification ( #4639 )
...
* Add signature to blob
* Change Signable trait to support returning references to signable data
* Add signing to broadcast
* Verify signatures in window_service
* Add testing for signatures to erasure
* Add RPC for getting current slot, consume RPC call in test_repairman_catchup for more deterministic results
2019-06-12 16:43:05 -07:00
Michael Vines
d807217be7
Simplify and camelCase getEpochVoteAccounts RPC API ( #4658 )
...
* Simplify and camelCase getEpochVoteAccounts RPC API
* Set a commission for testing
2019-06-12 14:12:08 -07:00
Sagar Dhawan
8019bff391
Fixes for storage program and rework storage stage ( #4654 )
...
automerge
2019-06-11 18:27:47 -07:00
Rob Walker
697228a484
rpc vote_accounts by ecurrent pocch, not stakers epoch ( #4651 )
2019-06-11 16:57:47 -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
Michael Vines
cfe5afd34c
_id => _pubkey variable renaming ( #4419 )
...
* wallet: rename *_account_id to *_account_pubkey
* s/from_id/from_pubkey/g
* s/node_id/node_pubkey/g
* s/stake_id/stake_pubkey/g
* s/voter_id/voter_pubkey/g
* s/vote_id/vote_pubkey/g
* s/delegate_id/delegate_pubkey/g
* s/account_id/account_pubkey/g
* s/to_id/to_pubkey/g
* s/my_id/my_pubkey/g
* cargo fmt
* s/staker_id/staker_pubkey/g
* s/mining_pool_id/mining_pool_pubkey/g
* s/leader_id/leader_pubkey/g
* cargo fmt
* s/funding_id/funding_pubkey/g
2019-05-23 23:20:04 -07:00
Michael Vines
2ed77b040a
create_genesis_block() now returns a struct ( #4403 )
2019-05-22 20:39:00 -07:00
Rob Walker
ead15d294e
add get_epoch_vote_accounts rpc ( #4317 )
...
* add get_epoch_vote_accounts rpc
* fixups
* documentation and type updates
2019-05-20 22:21:13 -07:00
Michael Vines
f079a78c5e
Remove fee arg from system_transaction::* ( #4346 )
...
automerge
2019-05-20 10:03:19 -07:00
Michael Vines
a2e3a92b01
Extend GetBlockHash RPC API to include the fee scehdule for using the returned blockhash ( #4222 )
2019-05-13 12:49:37 -07:00
Rob Walker
8e400fc4bd
rework genesis (passive staking groundwork) ( #4187 )
...
* rework genesis
* fixup
2019-05-07 11:16:22 -07:00
Sagar Dhawan
a7b695c27a
Change replicators to slot-based ( #4118 )
2019-05-03 16:27:53 -07:00
Sagar Dhawan
4e41c81bc7
Fix the output from Gossip Discovery ( #4067 )
...
automerge
2019-04-29 13:19:24 -07:00
Michael Vines
c309cd80aa
Add getClusterNodes/getSlotLeader JSON RPC API ( #3940 )
...
* Minor cleanup
* Include _this_ node in the contact info trace
* Add getClusterNodes/getSlotLeader RPC API
2019-04-23 14:46:41 -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
Tyera Eulberg
90c1300bb6
Plumb TransactionError through Rpc
2019-04-05 22:09:29 -06:00
Tyera Eulberg
ef5df6f3fe
Add server specification
2019-04-05 11:44:57 -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
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
fcef54d062
Add a constructor to generate random pubkeys
2019-03-31 16:23:18 -06: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
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
anatoly yakovenko
211c81f2a2
bank fork rpc ( #3351 )
2019-03-18 14:18:43 -07:00
Michael Vines
e2c24481e4
wallet/ now only dev-depends on core/
2019-03-16 21:40:39 -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
c14cce4c85
Add InstructionError for runtime instruction errors
2019-03-13 21:26:57 -06: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
Michael Vines
ac226c3e14
Remove superfluous set_leader() usage
2019-03-08 19:59:54 -08:00
Michael Vines
79b2542ca4
Remove CrdsValue::LeaderId
2019-03-08 19:41:51 -08:00
Michael Vines
17921c9fae
Delete NodeInfo type
2019-03-08 18:37:36 -08:00
Michael Vines
d5d853838c
RPC now sends transactions at the local TPU
...
The local TPU will forward the transactions as needed if it's not
currently the leader
2019-03-08 11:42:06 -08:00
Michael Vines
a3cab470d3
Rename ClusterInfo::new_with_keypair() to ClusterInfo::new()
2019-03-07 13:05:42 -08:00
Michael Vines
bb93504965
Rename ClusterInfo::new() to ClusterInfo::new_with_invalid_keypair()
2019-03-07 13:05:42 -08:00
Michael Vines
0a4f909566
requestAirdrop RPC API is now optional
2019-03-06 10:23:57 -08:00
Michael Vines
b1763f9187
Remove dead code
2019-03-06 10:23:57 -08:00
Michael Vines
b03fd782de
Make room for more fields in JsonRpcConfig
2019-03-06 10:23:57 -08:00
Michael Vines
53f09c44f3
Rename tokens to lamports in sdk/
2019-03-05 17:28:06 -08:00
Michael Vines
eb90d8d463
Clean up Rpc exit signal
2019-03-04 21:26:50 -08:00
Anatoly Yakovenko
3a4018cd03
review comments; rename Unsafe to TestOnlyAllowRpcFullnodeExit
2019-03-04 10:18:17 -08:00
Anatoly Yakovenko
5aaaa7f45c
fixup!
2019-03-04 10:18:17 -08:00
Anatoly Yakovenko
c299dd390e
Fullnode rpc to exit with unsafe config
2019-03-04 10:18:17 -08:00