Trent Nelson
51283c931c
Fix test advancing banks from incomplete slots
2020-07-14 00:36:31 +00:00
Trent Nelson
837ac77c02
Bump goldens
2020-07-14 00:36:31 +00:00
Trent Nelson
5357ff6d60
Synchronize BlockhashQueue and RecentBlockhashes sysvar update
2020-07-14 00:36:31 +00:00
Trent Nelson
9cc379af6c
Factor locked portion of Bank::update_recent_blockhashes() out to helper
2020-07-14 00:36:31 +00:00
Tyera Eulberg
942c019d50
Add failing test
2020-07-14 00:36:31 +00:00
dependabot-preview[bot]
cee9177ec7
Bump libc from 0.2.71 to 0.2.72
...
Bumps [libc](https://github.com/rust-lang/libc ) from 0.2.71 to 0.2.72.
- [Release notes](https://github.com/rust-lang/libc/releases )
- [Commits](https://github.com/rust-lang/libc/compare/0.2.71...0.2.72 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-07-13 15:00:27 -07:00
Ryo Onodera
de379a8cd6
Ensure to digest non-empty snapshot_storages and add asserts ( #11021 )
...
* Add asserts to detect not-digestable example data
* Ensure to digest non-empty snapshot_storages
2020-07-13 15:58:34 +00:00
Kristofer Peterson
ed5a2f2a90
Fold bank serialisation into serde snapshot ( #10581 )
...
* Move bank (de)serialisation logic from bank and snapshot_utils to serde_snapshot.
Add sanity assertions between genesis config and bank fields on deserialisation.
Atomically update atomic bool in quote_for_specialization_detection().
Use same genesis config when restoring snapshots in test cases.
* Tidy up namings and duplicate structs to version
* Apply struct renames to tests
* Update abi hashes
Co-authored-by: Ryo Onodera <ryoqun@gmail.com>
2020-07-13 23:00:59 +09:00
sakridge
edf2b1ee85
Check for deleting key, make sure list is empty again ( #11007 )
2020-07-11 20:38:34 -07:00
Greg Fitzgerald
145906123a
Simplify use of SendTransactionService ( #10999 )
...
* Send transaction upon recv
This will allow us to move the channel to the public interface
* Use a channel, not a method, to communicate
* Pipeline the services
* Ignore unused return values
* Fix clippy warning
2020-07-11 01:14:41 +00:00
Jack May
57576b07ef
Fix warnings ( #10992 )
...
* Fix warnings
* disable warning
2020-07-10 20:02:55 +00:00
sakridge
631f051c68
Add jitter to cleanup to prevent all nodes cleaning at the same time ( #10936 )
2020-07-10 11:54:45 -07:00
sakridge
1f5070e569
Add custom print for Bloom object ( #10971 )
2020-07-10 11:53:24 -07:00
Ryo Onodera
f1c1152948
Fix skipped slot detection for eager rent collect ( #10890 )
2020-07-10 08:49:18 +09:00
Tyera Eulberg
25228ca957
Fix nonce fee_calculator overwrite ( #10973 )
...
* Add failing test
* Pass fee_calculator to prepare_if_nonce_account; only overwrite in error case
2020-07-09 20:22:21 +00:00
Greg Fitzgerald
16eeea4f82
Move SendTransactionService to solana_runtime ( #10972 )
2020-07-09 18:28:26 +00:00
Greg Fitzgerald
ebadbce920
Drop bank from BlockCommitmentCache ( #10959 )
...
* Remove bank reference from BlockCommitmentCache
* Don't use a Bank to create BlockCommitmentCache
* Rename recent_slot to slot
2020-07-09 00:50:13 +00:00
dependabot-preview[bot]
841ecfd927
chore(deps): bump bincode from 1.2.1 to 1.3.1 ( #10867 )
...
* chore(deps): bump bincode from 1.2.1 to 1.3.1
Bumps [bincode](https://github.com/servo/bincode ) from 1.2.1 to 1.3.1.
- [Release notes](https://github.com/servo/bincode/releases )
- [Commits](https://github.com/servo/bincode/commits )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
* [auto-commit] Update all Cargo lock files
* Switch from deprecated method
* Add options to maintain behavior with bincode::options()
Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
Co-authored-by: dependabot-buildkite <dependabot-buildkite@noreply.solana.com>
Co-authored-by: Tyera Eulberg <tyera@solana.com>
2020-07-09 00:08:05 +00:00
sakridge
6429042b6e
Add --print-account-stats/--snapshot-archive-path arguments to ledger-tool ( #10945 )
...
Allows for seeing how the accounts are being stored
and specifying a different snapshot source directory.
2020-07-08 09:32:11 -07:00
Greg Fitzgerald
2fdbb97244
Rename largest_confirmed_root to highest_confirmed_root ( #10947 )
2020-07-07 23:59:46 +00:00
sakridge
1269e348fb
Add a way to re-hash the bank ( #10765 )
2020-07-06 12:42:41 -07:00
Ryo Onodera
39b3ac6a8d
Introduce automatic ABI maintenance mechanism (2/2; rollout) ( #8012 )
...
* Introduce automatic ABI maintenance mechanism (2/2; rollout)
* Fix stable clippy
* Change to symlink
* Freeze abi of Tower
* fmt...
* Improve dev-experience!
* Update BankSlotDelta
$ diff -u /tmp/abi8/*7dg6BreYxTuxiVz6aLvk3p2Z7GQk2cJqfGvC9h4FAoSj* /tmp/abi8/*9chBcbXVJ4fK7uGgydQzam5aHipaAKFw6V4LDFpjbE4w*
--- /tmp/abi8/bank__BankSlotDelta_frozen_abi__test_abi_digest_7dg6BreYxTuxiVz6aLvk3p2Z7GQk2cJqfGvC9h4FAoSj 2020-06-18 18:01:22.831228087 +0900
+++ /tmp/abi8/bank__BankSlotDelta_frozen_abi__test_abi_digest_9chBcbXVJ4fK7uGgydQzam5aHipaAKFw6V4LDFpjbE4w 2020-07-03 15:59:58.430695244 +0900
@@ -140,7 +140,7 @@
field u8
primitive u8
field solana_sdk::instruction::InstructionError
- enum InstructionError (variants = 34)
+ enum InstructionError (variants = 35)
variant(0) GenericError (unit)
variant(1) InvalidArgument (unit)
variant(2) InvalidInstructionData (unit)
@@ -176,6 +176,7 @@
variant(31) CallDepth (unit)
variant(32) MissingAccount (unit)
variant(33) ReentrancyNotAllowed (unit)
+ variant(34) MaxSeedLengthExceeded (unit)
variant(9) CallChainTooDeep (unit)
variant(10) MissingSignatureForFee (unit)
variant(11) InvalidAccountIndex (unit)
* Fix some merge conflicts...
2020-07-06 20:22:23 +09:00
sakridge
832d47317e
Move clean accounts to background service ( #10898 )
2020-07-02 22:25:17 -07:00
dependabot-preview[bot]
4deec51703
chore(deps): bump rayon from 1.3.0 to 1.3.1 ( #10605 )
...
* chore(deps): bump rayon from 1.3.0 to 1.3.1
Bumps [rayon](https://github.com/rayon-rs/rayon ) from 1.3.0 to 1.3.1.
- [Release notes](https://github.com/rayon-rs/rayon/releases )
- [Changelog](https://github.com/rayon-rs/rayon/blob/master/RELEASES.md )
- [Commits](https://github.com/rayon-rs/rayon/compare/rayon-core-v1.3.0...v1.3.1 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
* [auto-commit] Update all Cargo lock files
Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
Co-authored-by: dependabot-buildkite <dependabot-buildkite@noreply.solana.com>
2020-07-01 08:09:28 -07:00
carllin
7a71580d53
Add heaviest subtree utility functions ( #10863 )
...
Co-authored-by: Carl <carl@solana.com>
2020-07-01 08:45:32 +00:00
Ryo Onodera
b89e506cbb
Consistently create temp dirs under ledger/farf ( #10848 )
2020-07-01 11:38:59 +09:00
Ryo Onodera
cabedc0f36
Remove outdated todo comment ( #10850 )
2020-06-30 13:43:01 +00:00
Greg Fitzgerald
50b3fa83a0
Move BankCommitmentCache to solana_runtime ( #10816 )
...
* Remove Blockstore member variable from BlockCommitmentCache
* Hoist is_confirmed_rooted() to its only caller
BlockCommitmentCache no longer depends on Blockstore
* Move BlockCommitmentCache to solana_runtime
2020-06-25 22:06:58 -06:00
sakridge
7430978d1a
Keep oldest snapshot so playing the ledger is possible from local data. ( #10814 )
2020-06-25 20:41:44 -07:00
Ryo Onodera
50f7ed80c8
Dont skip eager rent collect across gapped epochs ( #10206 )
...
* Dont skip eager rent collect across gapped epochs
* Adjust style and comment
* Adjust ascii chart and comment a bit
* Moar assert
* Relax the partition_count assert for completeness
* Tweak comment...
* tweak a bit
* Add gating logic
* Address reviews
* small formatting
* Clarify the code by replacing auto_generated...
* small formatting
* small formatting
* small formatting
* small formatting
* Narrow down conditional compilation scope
2020-06-25 23:11:33 +09:00
Greg Fitzgerald
7ade330b23
Rename Client methods to match proposed BanksClient ( #10793 )
2020-06-25 03:35:38 +00:00
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
Kristofer Peterson
6d81eede93
Add CLI options and runtime support for selection of output snapshot version. ( #10536 )
2020-06-19 14:38:37 +09:00
Greg Fitzgerald
0550b893b0
Fix typos ( #10675 )
...
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2020-06-17 20:54:52 -07:00
Greg Fitzgerald
26ebfedf46
Derive the working bank ( #10670 )
2020-06-17 20:16:57 -06:00
Jack May
dac7dc2f10
Move types to more appropriate files ( #10638 )
2020-06-17 10:39:14 -07: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
Kristofer Peterson
50c93d4441
Cleanup error type mapping in serde_snapshot ( #10580 )
...
* Cleanup error type mapping in serde_snapshot
* Fail when account storage entry files cannot be moved from snapshot
2020-06-17 17:56:29 +09:00
carllin
8bd62d78eb
Fix race in remove_unrooted_slot ( #10607 )
...
* Fix race
* clippy fixes
* Rename and add comment
Co-authored-by: Carl <carl@solana.com>
2020-06-15 19:41:26 -07:00
dependabot-preview[bot]
480f69cc5e
Bump serde from 1.0.111 to 1.0.112
...
Bumps [serde](https://github.com/serde-rs/serde ) from 1.0.111 to 1.0.112.
- [Release notes](https://github.com/serde-rs/serde/releases )
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.111...v1.0.112 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-06-15 07:58:16 -07:00
R. M. Shea
48febf153b
Change documentation introduction to indicate Foundation IP transfer ( #10440 )
2020-06-13 14:41:05 -07:00
Jack May
b6a9573748
Route all loader messages to log collector ( #10528 )
2020-06-13 13:20:08 -07:00
Ryo Onodera
dfe72d5242
Optimize stale slot shrinking for previously cleaned roots ( #10099 )
...
* Prioritize shrinking of previously cleaned roots
* measure time of stale slot shrinking
* Disable shrink for test
* shrink: budgeting, store count, force for snapshot
* Polish implementation and fix tests
* Fix ci..
* Clean up a bit
* Further polish implementation and fix/add tests
* Rebase fixes
* Remove unneeded Default for AccountStorageEntry
* Address review comments
* More cleanup
* More cleanup
2020-06-12 14:51:43 +09:00
Jack May
4f761395d2
Adhere to naming conventions ( #10530 )
...
automerge
2020-06-11 19:10:34 -07:00
carllin
2e1d59ff85
Adopt heaviest subtree fork choice rule ( #10441 )
...
* Add HeaviestSubtreeForkChoice
* Make replay stage switch between two fork choice rules
Co-authored-by: Carl <carl@solana.com>
2020-06-11 12:16:04 -07:00
Boqin Qin
1e3554b33d
runtime: fix possible deadlock in bank ( #10466 )
2020-06-11 02:02:08 +09:00
Boqin Qin
0a638a8f17
runtime: fix possible deadlock in accounts_db ( #10469 )
2020-06-10 19:37:15 +09:00
Greg Fitzgerald
4131eee94d
Expose last-valid-slot to BankClient and ThinClient users ( #10478 )
...
automerge
2020-06-09 17:07:32 -07:00
Trent Nelson
b329e6d1a4
Add --warp-slot argument to |solana-ledger-tool create-snapshot|
2020-06-09 09:16:21 -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
Michael Vines
136342eaae
Bump new_system_program_activation_epoch by 2
2020-06-08 09:39:42 -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
26e684f375
Deactivate legacy_system_instruction_processor at epoch 58/38 (preview/stable) ( #10406 )
...
automerge
2020-06-04 00:01:47 -07:00
Jack May
61d91d2d55
Don't reuse executable accounts between instructions ( #10403 )
...
automerge
2020-06-03 21:16:15 -07:00
Michael Vines
21d62493ff
Add legacy_system_instruction_processor0 tests
2020-06-03 16:04:06 -07:00
Michael Vines
9c631a01c1
Enable rolling upgrade of system_instruction_processor
2020-06-03 16:04:06 -07:00
Michael Vines
1331c9a680
Add legacy_system_instruction_processor
2020-06-03 16:04:06 -07:00
Michael Vines
a4cd96609c
Add built-in programs to InvokeContext ( #10383 )
...
automerge
2020-06-03 12:48:19 -07:00
dependabot-preview[bot]
f901571026
Bump serde from 1.0.110 to 1.0.111
...
Bumps [serde](https://github.com/serde-rs/serde ) from 1.0.110 to 1.0.111.
- [Release notes](https://github.com/serde-rs/serde/releases )
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.110...v1.0.111 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-06-02 23:29:14 -07:00
Greg Fitzgerald
5d248fe5f8
Permit paying oneself ( #10337 )
...
* Allow paying to oneself
* cargo fmt
* Permit pay-to-self in CLI
No test here because we're just removing an [untested] special case.
Fixes #10339
2020-05-30 20:12:48 -06:00
Tyera Eulberg
b563b49ed5
Improve Rpc inflation tooling ( #10309 )
...
automerge
2020-05-29 11:50:25 -07:00
Michael Vines
9eefb2c929
Bump version to 1.3.0
2020-05-28 15:01:13 -07:00
Michael Vines
e3b444834f
Add more logging while unpacking snapshots ( #10266 )
2020-05-27 10:41:05 -07:00
Tyera Eulberg
4e431bc818
Add mechanism to get blockhash's last valid slot ( #10239 )
...
automerge
2020-05-26 12:06:21 -07:00
dependabot-preview[bot]
1bfc4c1489
Bump libc from 0.2.70 to 0.2.71 ( #10249 )
...
* Bump libc from 0.2.70 to 0.2.71
Bumps [libc](https://github.com/rust-lang/libc ) from 0.2.70 to 0.2.71.
- [Release notes](https://github.com/rust-lang/libc/releases )
- [Commits](https://github.com/rust-lang/libc/compare/0.2.70...0.2.71 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
* [auto-commit] Update all Cargo lock files
Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
Co-authored-by: dependabot-buildkite <anatoly+githubjenkins@solana.io>
2020-05-26 11:04:15 -07:00
Jack May
03abd3ddd7
Prevent privilege escalation ( #10232 )
...
automerge
2020-05-26 01:02:31 -07:00
Greg Fitzgerald
36a36d1c83
No longer allow create-account to add funds to an existing account ( #10192 )
...
automerge
2020-05-22 16:39:01 -07:00
Kristofer Peterson
b7a32f01c0
Multi-version snapshot support ( #9980 )
...
* Multi-version snapshot support
* rustfmt
* Remove CLI options and runtime support for selection output snapshot version.
Address some clippy complaints.
* Muzzle clippy type complexity warning.
Despite clippy's suggestion, it is not currently possible to create type aliases
for traits and so everything within the 'Box<...>' cannot be type aliased.
This then leaves creating full blown traits, and either implementing
said traits by closure (somehow) or moving the closures into new structs
implementing said traits which seems a bit of a palaver.
Alternatively it is possible to define and use the type alias 'type ResultBox<T> = Result<Box<T>>'
which does seems rather pointless and not a great reduction in complexity but is enough to keep clippy happy.
In the end I simply went with squelching the clippy warning.
* Remove now unused Serialize/Deserialize trait implementations for AccountStorageEntry and AppendVec
* refactor versioned de/serialisers
* rename serde_utils to serde_snapshot
* move call to accounts_db.generate_index() back down to context_accountsdb_from_stream()
* update version 1.1.1 to 1.2.0
remove nested use of serialize_bytes
* cleanups
* Add back measurement of account storage entry serialization.
Remove construction of Vec and HashMap temporaries during serialization.
* consolidate serialisation test cases into serde_snapshot.
clean up leakage of implementation details in serde_snapshot.
* move short term / legacy snapshot code into child module
* add serialize_iter_as_tuple
* preliminary integration of following commit
commit 6d58b73c47294bfb93465d5a83cd2175660b6e6d
Author: Ryo Onodera <ryoqun@gmail.com>
Date: Wed May 20 14:02:02 2020 +0900
Confine snapshot 1.1 relic to versioned codepath
* refactored serde_snapshot, rustfmt
legacy accounts_db format now "owns" both leading u64s, legacy bank_rc format has none
* reduce type complexity (clippy)
2020-05-23 02:54:24 +09:00
sakridge
ce17de7d25
Add option to wait for a specific epoch length to bench-tps ( #10083 )
2020-05-20 16:42:46 -07:00
Jack May
4a72c2b054
Support cross-program invocation to native programs ( #10136 )
2020-05-20 09:24:57 -07:00
Tyera Eulberg
9d89fb5c35
Fix another unstable test after eager rent ( #10120 )
2020-05-20 09:57:33 -06:00
Jack May
36627fb8b3
move builtin programs out of bank ( #10132 )
...
automerge
2020-05-19 19:45:30 -07:00
Jack May
431a228402
fix clock bankhash mismatch ( #10078 )
...
automerge
2020-05-18 19:48:06 -07:00
Michael Vines
bbc549f592
Rename program_id to owner in system instructions ( #10069 )
2020-05-18 12:55:41 -07:00
Kristofer Peterson
4ca352a344
Use serde provided serialization for atomics ( #10096 )
...
automerge
2020-05-18 08:30:27 -07:00
Greg Fitzgerald
5e89bd8868
Panic if no fee-payer found via Message::new() ( #10050 )
...
automerge
2020-05-15 12:23:09 -07:00
Kristofer Peterson
58ef02f02b
9951 clippy errors in the test suite ( #10030 )
...
automerge
2020-05-15 09:35:43 -07:00
dependabot-preview[bot]
6a6c5f196a
Bump libc from 0.2.69 to 0.2.70 ( #10006 )
...
* Bump libc from 0.2.69 to 0.2.70
Bumps [libc](https://github.com/rust-lang/libc ) from 0.2.69 to 0.2.70.
- [Release notes](https://github.com/rust-lang/libc/releases )
- [Commits](https://github.com/rust-lang/libc/compare/0.2.69...0.2.70 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
* [auto-commit] Update all Cargo lock files
Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
Co-authored-by: dependabot-buildkite <dependabot-buildkite@noreply.solana.com>
2020-05-15 06:18:43 -06:00
Jack May
eb1acaf927
Remove archiver and storage program ( #9992 )
...
automerge
2020-05-14 18:22:47 -07:00
dependabot-preview[bot]
816bf6ebdd
Bump fnv from 1.0.6 to 1.0.7 ( #10046 )
...
* Bump fnv from 1.0.6 to 1.0.7
Bumps [fnv](https://github.com/servo/rust-fnv ) from 1.0.6 to 1.0.7.
- [Release notes](https://github.com/servo/rust-fnv/releases )
- [Commits](https://github.com/servo/rust-fnv/compare/v1.0.6...v1.0.7 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
* [auto-commit] Update all Cargo lock files
Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
Co-authored-by: dependabot-buildkite <dependabot-buildkite@noreply.solana.com>
2020-05-14 12:29:11 -07:00
Ryo Onodera
13bc3f8094
Fix unstable test after eager rent collection ( #10031 )
...
automerge
2020-05-13 10:35:58 -07:00
Ryo Onodera
1eb40c3fe0
Introduce eager rent collection ( #9527 )
...
* Switch AccountsIndex.account_maps from HashMap to BTreeMap
* Introduce eager rent collection
* Start to add tests
* Avoid too short eager rent collection cycles
* Add more tests
* Add more tests...
* Refacotr!!!!!!
* Refactoring follow up
* More tiny cleanups
* Don't rewrite 0-lamport accounts to be deterministic
* Refactor a bit
* Do hard fork, restore tests, and perf. mitigation
* Fix build...
* Refactor and add switch over for testnet (TdS)
* Use to_be_bytes
* cleanup
* More tiny cleanup
* Rebase cleanup
* Set Bank::genesis_hash when resuming from snapshot
* Reorder fns and clean ups
* Better naming and commenting
* Yet more naming clarifications
* Make prefix width strictly uniform for 2-base partition_count
* Fix typo...
* Revert cluster-dependent gate
* kick ci?
* kick ci?
* kick ci?
2020-05-13 16:22:14 +09:00
Justin Starry
5cc252d471
Remove hash field from account ( #9915 )
2020-05-12 23:39:46 +08:00
Jack May
97e17f9b32
Programs can only sign their accounts
2020-05-11 09:06:05 -07:00
dependabot-preview[bot]
288c9751c1
Bump serde from 1.0.106 to 1.0.110 ( #9964 )
...
* Bump serde from 1.0.106 to 1.0.110
Bumps [serde](https://github.com/serde-rs/serde ) from 1.0.106 to 1.0.110.
- [Release notes](https://github.com/serde-rs/serde/releases )
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.106...v1.0.110 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
* [auto-commit] Update all Cargo lock files
Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
Co-authored-by: dependabot-buildkite <dependabot-buildkite@noreply.solana.com>
2020-05-10 16:24:25 -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
Ryo Onodera
00e45ec935
Maintain sysvar balances for consistent market cap. ( #9936 )
...
* Maintain sysvar balances for consistent market cap.
* Unindent
2020-05-09 02:42:32 +09:00
Ryo Onodera
2ac50177a6
Include account.owner into account hash ( #9917 )
...
automerge
2020-05-07 13:01:11 -07:00
Tyera Eulberg
754c65c066
Refactor RPC subscriptions account handling ( #9888 )
...
* Switch subscriptions to use commitment instead of confirmations
* Add bank method to return account and last-modified slot
* Add last_modified_slot to subscription data and use to filter account subscriptions
* Update tests to non-zero last_notified_slot
* Add accounts subscriptions to test; fails at higher tx load
* Pass BankForks to RpcSubscriptions
* Use BankForks on add_account_subscription to properly initialize last_notified_slot
* Bundle subscriptions
* Check for non-equality
* Use commitment to initialize last_notified_slot; revert context.slot chage
2020-05-07 00:23:06 -06:00
dependabot-preview[bot]
e951f8d0ed
Bump libloading from 0.6.1 to 0.6.2 ( #9895 )
...
* Bump libloading from 0.6.1 to 0.6.2
Bumps [libloading](https://github.com/nagisa/rust_libloading ) from 0.6.1 to 0.6.2.
- [Release notes](https://github.com/nagisa/rust_libloading/releases )
- [Commits](https://github.com/nagisa/rust_libloading/compare/0.6.1...0.6.2 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
* [auto-commit] Update all Cargo lock files
Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
Co-authored-by: dependabot-buildkite <dependabot-buildkite@noreply.solana.com>
2020-05-06 08:19:39 -07:00
carllin
3442f36f8a
Repair alternate versions of dead slots ( #9805 )
...
Co-authored-by: Carl <carl@solana.com>
2020-05-05 14:07:21 -07:00
jon-chuang
16af67d5e1
Focus bench on squash and fix log errors ( #9759 )
...
* Focus bench on squash
Squash performance does not depend on adding a small number accounts. It mainly depends on total number of accounts that need to be hashed during freeze operation. New bank means a clone of accounts db, so we don't get previous errors in log.
* Fix fmt and add slot counter
2020-05-05 08:33:41 -07:00
Tyera Eulberg
f5b0d13f08
Rpc: add getLargestAccounts endpoint ( #9869 )
...
automerge
2020-05-04 16:46:10 -07:00
sakridge
f37f83fd12
Fuzzer test and fixes ( #9853 )
2020-05-02 08:07:52 -07:00
sakridge
894549f002
Put empty accounts in the accounts list on load ( #9840 )
...
Indexing into accounts array does not match account_keys otherwise.
Also enforce program accounts not at index 0
Enforce at least 1 Read-write signing fee-payer account.
2020-05-01 17:23:33 -07:00
Michael Vines
8dfe0affd4
Add incinerator sysvar ( #9815 )
2020-04-30 22:04:08 -07:00
Michael Vines
230df0ec0c
Upgrade to Rust 1.43.0 ( #9754 )
2020-04-29 18:02:05 -07:00
Stephen Akridge
eb24f3df84
Update dalek version
2020-04-28 21:02:47 -06:00
Jack May
068f12fd6f
Add Cross-program invocations ( #9582 )
2020-04-28 14:33:56 -07:00
sakridge
aac580686f
fix test compilation from add_static_program change ( #9755 )
2020-04-27 23:37:08 -07:00
Jack May
efad193180
Make default programs static ( #9717 )
2020-04-27 21:05:12 -07:00
anatoly yakovenko
8ef097bf6f
Input values are not sanitized after they are deserialized, making it far too easy for Leo to earn SOL ( #9706 )
...
* sanitize gossip protocol messages
* sanitize transactions
* crds protocol sanitize
2020-04-27 11:06:00 -07:00
Ryo Onodera
9918539229
Introduce type alias Ancestors ( #9699 )
...
* Introduce type alias AncestorList
* Rename AncestorList => Ancestors
2020-04-27 11:07:03 +09:00
sakridge
e907c0e650
Filter program ids to store ( #9721 )
...
automerge
2020-04-26 00:11:37 -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
dependabot-preview[bot]
d2cef8ed9b
Bump num_cpus from 1.12.0 to 1.13.0 ( #9682 )
...
* Bump num_cpus from 1.12.0 to 1.13.0
Bumps [num_cpus](https://github.com/seanmonstar/num_cpus ) from 1.12.0 to 1.13.0.
- [Release notes](https://github.com/seanmonstar/num_cpus/releases )
- [Changelog](https://github.com/seanmonstar/num_cpus/blob/master/CHANGELOG.md )
- [Commits](https://github.com/seanmonstar/num_cpus/compare/v1.12.0...v1.13.0 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
* [auto-commit] Update all Cargo lock files
Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
Co-authored-by: dependabot-buildkite <dependabot-buildkite@noreply.solana.com>
2020-04-23 13:08:06 -07:00
Greg Fitzgerald
a6ad660e5e
Merge stake::withdraw instructions ( #9617 )
2020-04-20 18:16:50 -06:00
Jack May
b1a0abc7a6
Bump libloading to v0.6.1 ( #9615 )
...
automerge
2020-04-20 16:46:06 -07:00
Jack May
d08517db8c
Nit picks ( #9580 )
2020-04-18 22:39:08 -07:00
Jack May
58887c591b
Add and update tests ( #9566 )
2020-04-18 17:04:13 -07:00
Michael Vines
47ae57610a
Only build x86_64-unknown-linux-gnu on docs.rs
2020-04-16 19:06:17 -07:00
Jack May
241a05fc52
Add native loader entry points ( #9486 )
2020-04-15 09:41:29 -07:00
sakridge
217828a849
Reduce accounts_db prints ( #9469 )
2020-04-15 09:05:54 -07:00
Ryo Onodera
c77ed82caa
Use same max_age regardless of leader/not-leader ( #9423 )
...
automerge
2020-04-14 00:34:41 -07:00
dependabot-preview[bot]
a0f0e199b7
Bump libc from 0.2.68 to 0.2.69
...
Bumps [libc](https://github.com/rust-lang/libc ) from 0.2.68 to 0.2.69.
- [Release notes](https://github.com/rust-lang/libc/releases )
- [Commits](https://github.com/rust-lang/libc/compare/0.2.68...0.2.69 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-04-13 17:30:02 -07:00
sakridge
99655206c8
Calculate account refs fix ( #9447 )
2020-04-11 12:52:10 -07:00
Jack May
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
carllin
4522e85ac4
Add Metrics/Dashboards tracking block production ( #9342 )
...
* Add metric tracking blocks/dropped blocks
Co-authored-by: Carl <carl@solana.com>
2020-04-08 14:35:24 -07:00
Ryo Onodera
b28ec430e4
Introduce background stale AppendVec shrink mechanism ( #9219 )
...
* Introduce background AppendVec shrink mechanism
* Support ledger tool
* Clean up
* save
* save
* Fix CI
* More clean up
* Add tests
* Clean up yet more
* Use account.hash...
* Fix typo....
* Add comment
* Rename accounts_cleanup_service
2020-04-06 17:30:23 +09:00
dependabot-preview[bot]
8cdf406dd3
Bump serde from 1.0.105 to 1.0.106
...
Bumps [serde](https://github.com/serde-rs/serde ) from 1.0.105 to 1.0.106.
- [Release notes](https://github.com/serde-rs/serde/releases )
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.105...v1.0.106 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-04-04 15:13:52 -07:00
Jack May
ed86d8d1fc
Add native loader entry points ( #9275 )
2020-04-03 17:40:59 -07:00
Jack May
268e04cb4a
Rename CustomError to Custom ( #9207 )
2020-04-01 09:01:11 -07:00
Jack May
130c0b484d
Enforce an executable's rent exemption in the runtime ( #9134 )
2020-03-31 10:07:38 -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
sakridge
b1771b92ec
Calculate ref counts earlier to prevent bad clean ( #9147 )
2020-03-29 14:42:34 -07:00
Ryo Onodera
729cc4e04f
Sanitize zero lamport accounts in append vecs ( #9083 )
2020-03-29 15:45:45 +09:00
Michael Vines
d7fa40087c
Bump version to 1.2.0
2020-03-28 09:44:13 -07:00
Jack May
e2491c6322
Prevent add/subtract from executable account ( #9132 )
2020-03-27 16:43:25 -07:00
Justin Starry
5d9298543f
Exclude all executable accounts from rent collection ( #9116 )
...
* Whitelist executable accounts for rent exemption
* nudge
2020-03-27 23:28:18 +08:00
carllin
f3d556e3f9
Refactor VoteTracker ( #9084 )
...
* Refactor VoteTracker
Co-authored-by: Carl <carl@solana.com>
2020-03-26 17:55:17 -07:00
Jack May
8d4cecdb77
Account data may not change once the executable bit is set ( #9099 )
...
automerge
2020-03-26 17:10:11 -07:00
Ryo Onodera
2623c71ed3
Use type aliases/resulting var names consistently ( #9060 )
2020-03-26 13:08:56 +09:00
Justin Starry
ef3af104ae
Return appropriate error for invalid program account ( #9047 )
...
automerge
2020-03-25 13:23:05 -07:00
carllin
9dc69d9843
Store and compute node/stake state in EpochStakes struct ( #8958 )
...
* Store and compute needed bank state in EpochStakes struct
2020-03-25 12:19:15 -07:00
sakridge
45348b2c83
Remove accounts unwrap ( #9062 )
...
automerge
2020-03-25 10:21:30 -07:00
Justin Starry
eed8087d87
Respect confirmations param for signature subscription notifications ( #9019 )
...
automerge
2020-03-23 17:00:34 -07:00
sakridge
c530fbd22b
Remove thread-priority crate which is not cross-platform ( #9023 )
2020-03-23 12:18:52 -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
sakridge
4b397d15b3
Accounts cleanup service and perf improvements ( #8799 )
...
* Use atomic for ref count instead of taking rwlock
* Accounts cleanup service
* Review comments
2020-03-23 08:50:23 -07:00
Justin Starry
a0ffcc61ae
Add slot info to Bank::get_signature_confirmation_status ( #9018 )
2020-03-23 21:55:15 +08:00
Michael Vines
88ba8439fc
Add frozen account support ( #8989 )
...
automerge
2020-03-22 11:10:04 -07:00
sakridge
4dd0367136
Rwlock storage opt ( #9006 )
...
* Remove unecessary account paths rwlock
* Remove path rwlock in accounts_db and optimize storage critical section
2020-03-22 10:04:03 -07:00
sakridge
3ea556bc24
Drop storage lock ( #8997 )
2020-03-21 13:37:52 -07:00
Jack May
e28368ff1b
Move address creation with seed into pubkey ( #8991 )
2020-03-20 15:20:48 -07:00
Michael Vines
f78a90bce2
Vote InitializeAccount and UpdateNode instructions now need a signature from the validator identity ( #8947 )
...
automerge
2020-03-19 01:58:52 -07:00
dependabot-preview[bot]
24d871b529
Bump serde from 1.0.104 to 1.0.105 ( #8954 )
...
Bumps [serde](https://github.com/serde-rs/serde ) from 1.0.104 to 1.0.105.
- [Release notes](https://github.com/serde-rs/serde/releases )
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.104...v1.0.105 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-03-18 22:35:30 -07:00
dependabot-preview[bot]
2dc50cff5b
Bump bv from 0.11.0 to 0.11.1 ( #8952 )
...
automerge
2020-03-18 21:37:21 -07:00
Michael Vines
306a5c849e
Use into_iter()
2020-03-18 16:11:57 -07:00
Michael Vines
bb92184085
Refactor distribute_rent_to_validators() for clarity
2020-03-18 16:11:57 -07:00
dependabot-preview[bot]
8f5ee6832f
Bump libc from 0.2.67 to 0.2.68 ( #8915 )
...
Bumps [libc](https://github.com/rust-lang/libc ) from 0.2.67 to 0.2.68.
- [Release notes](https://github.com/rust-lang/libc/releases )
- [Commits](https://github.com/rust-lang/libc/compare/0.2.67...0.2.68 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-03-18 13:27:08 -06:00
sakridge
2435c3ce0c
Add accounts-bench, a benchmark to test the accounts store speed ( #8866 )
2020-03-17 11:02:07 -07:00
sakridge
7079559c2d
Fix windows build by removing sys-info ( #8860 )
...
Doesn't build for windows.
2020-03-16 12:53:13 -07:00
Michael Vines
b7b36bb0a4
Upgrade to Rust 1.42 ( #8836 )
...
* Upgrade to Rust 1.42
* deref
* parens
Co-authored-by: Trent Nelson <trent@solana.com>
2020-03-13 14:15:22 -06:00
Trent Nelson
fbf2dd1672
CLI: Error message cleanup ( #8804 )
...
automerge
2020-03-12 23:20:49 -07:00
Ryo Onodera
4bbf09f582
Enable conservative out-of-bound snapshot cleaning ( #8811 )
...
* Enable conservative out-of-bound snapshot cleaning
* Add tests
2020-03-13 14:44:00 +09:00
Ryo Onodera
952cd38b7b
Avoid early clean and bad snapshot by ref-counting ( #8724 )
...
* Avoid early clean and bad snapshot by ref-counting
* Add measure
* Clean ups
* clean ups
2020-03-13 14:14:37 +09:00
dependabot-preview[bot]
f93c8290f4
Bump sys-info from 0.5.9 to 0.5.10 ( #8810 )
...
Bumps [sys-info](https://github.com/FillZpp/sys-info-rs ) from 0.5.9 to 0.5.10.
- [Release notes](https://github.com/FillZpp/sys-info-rs/releases )
- [Changelog](https://github.com/FillZpp/sys-info-rs/blob/master/CHANGELOG.md )
- [Commits](https://github.com/FillZpp/sys-info-rs/commits )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-03-12 13:42:31 -06:00
Jack May
deaf3cb416
Instruction member function ( #8801 )
2020-03-12 09:08:39 -07:00
Jack May
6eb4973780
Don't use move semantics if not needed ( #8793 )
2020-03-11 14:37:23 -07:00
dependabot-preview[bot]
f88b79d42b
Bump itertools from 0.8.2 to 0.9.0 ( #8756 )
...
Bumps [itertools](https://github.com/bluss/rust-itertools ) from 0.8.2 to 0.9.0.
- [Release notes](https://github.com/bluss/rust-itertools/releases )
- [Changelog](https://github.com/rust-itertools/itertools/blob/master/CHANGELOG.md )
- [Commits](https://github.com/bluss/rust-itertools/commits )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-03-10 08:42:11 -06:00
dependabot-preview[bot]
1a0dd53450
Bump rayon from 1.2.0 to 1.3.0 ( #8757 )
...
Bumps [rayon](https://github.com/rayon-rs/rayon ) from 1.2.0 to 1.3.0.
- [Release notes](https://github.com/rayon-rs/rayon/releases )
- [Changelog](https://github.com/rayon-rs/rayon/blob/master/RELEASES.md )
- [Commits](https://github.com/rayon-rs/rayon/compare/v1.2.0...rayon-core-v1.3.0 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-03-10 08:40:02 -06:00
carllin
9872430bd2
Add VoteTracker for tracking cluster's votes in gossip ( #8327 )
...
Track votes by slot in cluster_vote_listener
2020-03-09 22:03:09 -07:00
dependabot-preview[bot]
ff74452ef3
Bump libc from 0.2.66 to 0.2.67 ( #8680 )
...
Bumps [libc](https://github.com/rust-lang/libc ) from 0.2.66 to 0.2.67.
- [Release notes](https://github.com/rust-lang/libc/releases )
- [Commits](https://github.com/rust-lang/libc/compare/0.2.66...0.2.67 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-03-08 21:38:58 -07: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
Jack May
8ad6a8767f
Simplify runtime account handling ( #8674 )
2020-03-05 16:17:31 -08:00
Greg Fitzgerald
2242b1b4a5
Bump byteorder from 1.3.2 to 1.3.4 ( #8159 )
...
Bumps [byteorder](https://github.com/BurntSushi/byteorder ) from 1.3.2 to 1.3.4.
- [Release notes](https://github.com/BurntSushi/byteorder/releases )
- [Changelog](https://github.com/BurntSushi/byteorder/blob/master/CHANGELOG.md )
- [Commits](https://github.com/BurntSushi/byteorder/compare/1.3.2...1.3.4 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-03-05 17:07:18 -07:00
Grimes
7fad53b112
Use iterated account ( #8673 )
...
automerge
2020-03-05 13:10:20 -08:00
Grimes
9d667db634
SDK: Allow `RecentBlockhashes` to hold the entire `BlockhashQueue` ( #8632 )
...
automerge
2020-03-05 11:03:21 -08:00
Jack May
5e3ce30d02
Pass the correct program_id to programs ( #8630 )
2020-03-05 10:57:35 -08:00
Jack May
97c5fb8141
Allow passing of program_ids to programs ( #8639 )
2020-03-05 10:57:12 -08:00
Michael Vines
f146c92e88
Always and fully normalize stored 0-lamport accts. ( #8657 )
2020-03-05 09:14:40 -07:00
Trent Nelson
fd00e5cb35
Store FeeCalculator with blockhash in nonce accounts ( #8650 )
...
* Copy current state version to v0
* Add `FeeCalculator` to nonce state
* fixup compile
* Dump v0 handling...
Since we new account data is all zeros, new `Current` versioned accounts
look like v0. We could hack around this with some data size checks, but
the `account_utils::*State` traits are applied to `Account`, not the
state data, so we're kind SOL...
* Create more representative test `RecentBlockhashes`
* Improve CLI nonce account display
Co-Authored-By: Michael Vines <mvines@gmail.com>
* Fix that last bank test...
* clippy/fmt
Co-authored-by: Michael Vines <mvines@gmail.com>
2020-03-05 07:40:26 -07:00
Grimes
b321da00b4
Nit: Use accessor function ( #8647 )
...
automerge
2020-03-04 18:26:58 -08:00
Grimes
80aae18794
Nit: Update native loader to iterate accounts ( #8640 )
...
automerge
2020-03-04 17:10:22 -08:00
Jack May
408d5da50f
Add test for program_ids passed in metas ( #8618 )
2020-03-04 11:13:33 -08:00
Trent Nelson
561808cf90
SDK: Store FeeCalculator in recent_blockhashes sysvar ( #8609 )
...
* SDK: Store FeeCalculators in recent_blockhashes sysvar
* nits
2020-03-04 12:01:32 -07:00
Jack May
b85d7c1f70
Fix account tests ( #8615 )
2020-03-04 10:40:41 -08:00
Jack May
642720a2fe
nit: describe the root program id ( #8621 )
2020-03-04 08:55:01 -08:00
Trent Nelson
1cc7131bb7
Consolidate Nonce state under one struct ( #8624 )
...
automerge
2020-03-04 08:51:48 -08:00
sakridge
b084c1d437
Remove accounts hack and correctly restore accounts store counts ( #8569 )
...
* Remove accounts hack and correctly restore append-vec counts
* Add test
2020-03-03 20:48:55 -08:00
Trent Nelson
1cb6101c6a
SDK: Add versioning to nonce state ( #8607 )
2020-03-03 19:39:09 -07:00
Trent Nelson
be0cc0273f
SDK: Re-org nonce state module to facilitate versioning ( #8603 )
...
automerge
2020-03-03 17:00:39 -08:00
sakridge
4f05f08f5d
Use fs::rename which is much faster than move_items ( #8579 )
2020-03-03 10:03:17 -08:00
Trent Nelson
0c76b89e55
Fix c/p error. We want a rent sysvar account here ( #8559 )
2020-03-03 09:49:02 -07:00
Ryo Onodera
d86103383a
Do periodic inbound cleaning for rooted slots ( #8436 )
...
* Do periodic inbound compaction for rooted slots
* Add comment
* nits
* Consider not_compacted_roots in cleanup_dead_slot
* Renames in AccountsIndex
* Rename to reflect expansion of removed accounts
* Fix a comment
* rename
* Parallelize clean over AccountsIndex
* Some niceties
* Reduce locks and real chunked parallelism
* Measure each step for sampling opportunities
* Just noticed par iter is maybe lazy
* Replace storage scan with optimized index scan
* Various clean-ups
* Clear uncleared_roots even if no updates
2020-03-03 14:57:25 +09:00
Ryo Onodera
5d9130a3c4
Hack to skip cleanup_dead_slots upon snapshot load
2020-03-02 10:24:12 -07: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
7d27be2a73
Upgrade to Rust 1.41.1
2020-02-28 10:10:42 -07:00
carllin
d821fd29d6
Add versioning ( #8348 )
...
automerge
2020-02-25 17:12:01 -08:00
Ryo Onodera
0b48c8eb35
Promote dangerous cond. from just warning to panic ( #8439 )
2020-02-26 05:09:57 +09:00
Michael Vines
73063544bd
Move shred_version module to sdk/
2020-02-24 14:46:12 -07:00
sakridge
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
Dan Albert
2d9d2f1e99
Update cargo versions from 1.0 to 1.1 ( #8397 )
2020-02-21 23:09:45 -08:00
Pankaj Garg
aa80f69171
Promote some datapoints to `info` to fix dashboard ( #8381 )
...
automerge
2020-02-21 13:41:49 -08:00
Jack May
0ace22d03f
Optimize account verification ( #8385 )
2020-02-21 13:28:35 -08:00
Jack May
0e6aca5a7e
Reorganize message processor in prep for cross-program-invocation ( #8338 )
2020-02-21 11:30:00 -08:00
Michael Vines
48f58a88bc
Bump version to 1.0.0
2020-02-20 23:52:19 -07:00
Ryo Onodera
d238371b0c
Correct missing entry handling to avoid bad warns ( #8339 )
...
* Correct missing entry handling to avoid bad warns
* Pass storage entries to AccountStorageSerialize
* Fix CI.....
* Add tests and reorder condition for cheapest first
* Remove unneeded reference
2020-02-21 15:27:55 +09:00
Tyera Eulberg
ab361a8073
Rename KeypairUtil to Signer ( #8360 )
...
automerge
2020-02-20 13:28:55 -08:00
Greg Fitzgerald
e8124324ff
Support transaction signing by heterogenous lists of keypairs ( #8342 )
...
automerge
2020-02-20 12:13:23 -08:00
carllin
73a278dc64
Factor out creating genesis with vote accounts into a utility function ( #8315 )
...
automerge
2020-02-18 02:39:47 -08:00
Ryo Onodera
027ec71aa9
Remove AccountInfo's (De)Serialize ( #8313 )
...
automerge
2020-02-17 03:07:36 -08:00
Michael Vines
1bf2285fa2
ledger-tool: Add print-accounts command
2020-02-14 19:59:48 -07:00
Jack May
940519ea5a
Remove Native Loader's use of GenericError ( #8285 )
2020-02-14 13:58:48 -08:00
Ryo Onodera
58727463e1
Remove needless last_root for better reclaims ( #8148 )
...
* Restore last_root to fix unintended storage delete
* Remove last_root thing altogether
* Remove unneeded test...
2020-02-13 08:19:53 +09:00
Greg Fitzgerald
127553ce4b
Wrap ed25519_dalek::Keypair ( #8247 )
2020-02-12 14:15:12 -07:00
sakridge
a8028fbb93
Fix accounts_db store counts in purging accounts logic ( #8218 )
...
* Show insufficient purge_zero_lamport_account logic
* Add another pass to detect non-deleted values and increment the count
Co-authored-by: Ryo Onodera <ryoqun@gmail.com>
2020-02-12 08:51:03 -08:00
Michael Vines
72b11081a4
Report validator rewards in getConfirmedBlock JSON RPC
2020-02-11 17:25:45 -07:00
Ryo Onodera
7614af2a45
Verify frozen bank from snapshot by hashing ( #8184 )
2020-02-11 16:46:33 +09:00
Michael Vines
84b3e12e1f
Minor logging improvements
2020-02-10 10:42:42 -07:00
Ryo Onodera
485806c488
Just define BnakSlotDelta type alias ( #8186 )
...
automerge
2020-02-10 03:11:37 -08:00
Trent Nelson
5b070ad014
CLI: Support offline fee payers ( #8009 )
...
* CLI: Support offline fee-payer
* Add some knobs to test genesis/validator helpers
* Add tests
2020-02-07 09:14:26 -07:00
dependabot-preview[bot]
6246405afd
Bump memmap from 0.6.2 to 0.7.0 ( #8157 )
...
Bumps [memmap](https://github.com/danburkert/memmap-rs ) from 0.6.2 to 0.7.0.
- [Release notes](https://github.com/danburkert/memmap-rs/releases )
- [Commits](https://github.com/danburkert/memmap-rs/compare/0.6.2...0.7.0 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-02-07 06:51:31 -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
Jack May
8436457e75
Rename program_utils.rs ( #8127 )
2020-02-05 12:48:30 -08:00
Michael Vines
3ac0192d40
Better surface bank hash verification failures
2020-02-05 11:39:47 -07:00
dependabot-preview[bot]
65c24db83c
Bump serde_json from 1.0.44 to 1.0.46 ( #8087 )
...
* Bump serde_json from 1.0.44 to 1.0.46
Bumps [serde_json](https://github.com/serde-rs/json ) from 1.0.44 to 1.0.46.
- [Release notes](https://github.com/serde-rs/json/releases )
- [Commits](https://github.com/serde-rs/json/compare/v1.0.44...v1.0.46 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
* Update Move's serde_json to v1.0.46
Co-authored-by: Jack May <jack@solana.com>
2020-02-04 16:59:23 -08:00
Jack May
15ab966ed1
Move native program entrypoint out of instruction_processor_utils ( #8122 )
2020-02-04 14:54:49 -08:00
sakridge
78f6ddc5b7
Fix spelling of verification in accounts_db ( #8117 )
...
automerge
2020-02-04 11:45:47 -08:00
dependabot-preview[bot]
c835749563
Bump sys-info from 0.5.8 to 0.5.9 ( #8089 )
...
Bumps [sys-info](https://github.com/FillZpp/sys-info-rs ) from 0.5.8 to 0.5.9.
- [Release notes](https://github.com/FillZpp/sys-info-rs/releases )
- [Changelog](https://github.com/FillZpp/sys-info-rs/blob/master/CHANGELOG.md )
- [Commits](https://github.com/FillZpp/sys-info-rs/commits )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-02-03 14:49:39 -07:00
Michael Vines
3bc9789e8d
Remove support for 0.22.3 snapshots
2020-01-30 23:34:15 -07:00
Jack May
83718a3b3e
Cleanup runtime use syntax ( #8002 )
2020-01-28 17:03:20 -08:00
Michael Vines
912aafcefd
Reduce epoch duration from 2 weeks to 2 days
2020-01-27 10:34:55 -07:00
Dan Albert
c324e71768
Bump cargo toml versions to 0.24.0 ( #7976 )
2020-01-25 11:04:27 -06:00
Michael Vines
989355e885
Add ability to hard fork at any slot ( #7801 )
...
automerge
2020-01-24 17:27:04 -08:00
Ryo Onodera
2c7447b73e
Secure sysvars under hash by freezing all strictly ( #7892 )
...
* Secure sysvars under hash by freezing all strictly
* Fix hash's non-idempotnet and add new test
* Clean up
* More cleanups
2020-01-24 16:10:32 +09:00
Michael Vines
8b8033c72b
Set BankRc slot correctly when restoring a bank snapshot
2020-01-23 13:37:13 -07:00
Michael Vines
25dfed207c
Remove dead code ( #7940 )
...
automerge
2020-01-23 00:38:46 -08:00
Jack May
c95e5346a4
Boot the mut ( #7926 )
2020-01-22 17:54:06 -08:00
Jack May
8f79327190
Test account doesn't need RefCell ( #7932 )
...
automerge
2020-01-22 17:06:11 -08:00
Trent Nelson
964ff522be
Verb-noun-ify Nonce API ( #7925 )
...
* Verb-noun-ify Nonce API
* Unify instruction naming with API naming
The more verbose nonce_account/NonceAccount was chosen for clarity
that these instructions work on a unique species of system account
2020-01-22 16:31:39 -07:00
Michael Vines
934c32cbc6
Add mechanism to load v0.22.3 snapshots on newer Solana versions
2020-01-22 15:40:32 -07:00
Rob Walker
ce70d6eedc
Add redeem_vote_credits to runtime ( #7910 )
...
* Move redeem_vote_credits into runtime
* fixup
* test
* move stake manipulation to stake program
* chugga for less indentation
2020-01-22 12:21:31 -08:00
Jack May
023074650f
Allow the same account to be passed multiple times to a single instruction ( #7795 )
2020-01-22 09:11:56 -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
Rob Walker
cc299053cc
Add support for stake::split() via create_account_with_seed() ( #7879 )
...
* Add split with seed
* move to new system_program APIs
* de-replicode
2020-01-20 12:33:27 -08:00
Rob Walker
470d9cd752
Add system_instruction::{allocate, allocate_with_seed, assign_with_seed}, ( #7847 )
...
* cleanup test checks cargo audit
* Add system_instruction allocate
* fixup
* fixup
2020-01-17 09:29:15 -08:00
Justin Starry
87598c7612
Consolidate tx error counters and update metrics dashboard ( #7724 )
...
automerge
2020-01-16 23:26:50 -08:00
Ryo Onodera
ed0129f881
Don't depend on unused lazy_static
2020-01-16 08:43:13 -07:00
Rob Walker
4c08184379
no check if no change ( #7824 )
2020-01-15 15:13:11 -08:00
Rob Walker
a6d083d69d
Remove create_account bandaid now that `to`'s signature is required ( #7776 )
...
* Remove create account bandaid now that requires signature
* shrink scope of this PR to bandaid
2020-01-15 13:03:22 -08:00
Ryo Onodera
b16c30b4c6
Fix cluster collapse due to no proper shifted read ( #7797 )
...
* Fix cluster collapse due to no proper shifted read
* Add test for bank hash mismatch
Co-authored-by: sakridge <sakridge@gmail.com>
2020-01-15 11:45:19 +09:00
Justin Starry
ff1ca1e0d3
Consolidate entry tick verification into one function ( #7740 )
...
* Consolidate entry tick verification into one function
* Mark bad slots as dead in blocktree processor
* more feedback
* Add bank.is_complete
* feedback
2020-01-15 09:15:26 +08:00
Jack May
5f4e0c7e3e
Naming nits ( #7798 )
...
automerge
2020-01-14 13:38:17 -08:00
sakridge
3b78be83cf
Add hash stats information to check hashes between validators ( #7780 )
...
automerge
2020-01-14 11:57:29 -08:00
Trent Nelson
81ae44f858
Nonce: Rename instructions with VerbNoun scheme ( #7775 )
...
automerge
2020-01-13 15:34:43 -08:00
Trent Nelson
9754fc789e
Manage durable nonce stored value in runtime ( #7684 )
...
* Bank: Return nonce pubkey/account from `check_tx_durable_nonce`
* Forward account with HashAgeKind::DurableNonce
* Add durable nonce helper for HashAgeKind
* Add nonce util for advancing stored nonce in runtime
* Advance nonce in runtime
* Store rolled back nonce account on TX InstructionError
* nonce: Add test for replayed InstErr fee theft
2020-01-10 16:57:31 -07:00
Jack May
08ba27627d
Direct entrypoint for execution ( #7746 )
2020-01-10 13:20:15 -08:00
Ryo Onodera
865c42465a
Cap file size for snapshot data files ( #7182 )
...
* save limit deserialize
* save
* Save
* Clean up
* rustfmt
* rustfmt
* Just comment out to please CI
* Fix ci...
* Move code
* Rustfmt
* Crean up control flow
* Add another comment
* Introduce predetermined constant limit on snapshot data files (deserialize side)
* Introduce predetermined constant limit on snapshot data files (serialize side)
* rustfmt
* Tweak message
* Revert dynamic memory limit
* Limit size of snapshot data file (de)serialization
* Fix test breakage
* Clean up
* Fix uses formatting
* Rename: deserialize_{for,from}_snapshot
* Simplify comment
* Use Slot
* Provide slot for status cache
* Align variable name with snapshot_status_cache_file_path
* Define serialize_snapshot_data_file_with_metrics
* Fix build.......
* De-marco serialize_snapshot_data_file_with_metrics
* Revert u64 => Slot
2020-01-10 09:49:36 +09:00