Commit Graph

21196 Commits

Author SHA1 Message Date
Jeff Washington (jwash) c3ca5b78b2
remove acctdb.min_num_stores (#29335) 2022-12-20 10:39:20 -08:00
behzad nouri 558292466b
rolls back merkle shreds on testnet (#29340)
https://github.com/solana-labs/solana/pull/29339
adds hash domain to merkle shreds. In order to merge that change, need
to temporarily disable merkle shreds on testnet.
2022-12-20 18:33:48 +00:00
Jeff Washington (jwash) 098b86b883
test_minimize_accounts_db uses write cache correctly (#29333) 2022-12-20 09:50:56 -08:00
Brooks 053775ad77
Elides unnecessary lifetimes (#29299) 2022-12-20 12:44:17 -05:00
Steven Luscher 65ff61cfc8
Increase Stalebot operations limit by another 50% 2022-12-20 09:12:53 -08:00
behzad nouri 2d849a2eae
indexes duplicate-shreds in gossip crds table (#29317)
Also adding Crds::get_duplicate_shreds which retrieves all upserted
duplicate-shreds since a given cursor using the index.
2022-12-20 13:48:05 +00:00
Steven Luscher 9a82368dc9
Increase stalebot operations limit by 50%
We have to increase this until either it can handle 1000 issues in a single run, or we hit the GitHub API operations limit.
2022-12-19 23:03:40 -08:00
Steven Luscher 92c90271ab
Remove `start-date` config from Stalebot
This doesn't actually do what I thought it did. The `start-date` config doesn't make stalebot start from a certain date forward, it makes tasks older than that date immune to being closed.

This means I'm going to just have to find a way to raise the GitHub API operations limit to be able to handle more tasks, or wait until enough have been closed that it fits within our current limit.
2022-12-19 23:02:32 -08:00
Nico Schapeler 0b479066b3
fix: make toBytes actually return the type it's typehint claims (#29313) 2022-12-19 22:43:53 -08:00
Tyera c8dd5bbd48
Move getSecondaryIndexKeySize RPC to admin_rpc_service (#29003)
* Move getSecondaryIndexKeySize to admin_rpc_service

* Add AdminRpc test framework

* Move test to admin_rpc_service

* Update test

* Remove full-api infra
2022-12-19 19:54:05 -07:00
dependabot[bot] 6ebbaf30c9
chore: bump rcgen from 0.9.2 to 0.9.3 (#28021)
* chore: bump rcgen from 0.9.2 to 0.9.3

Bumps [rcgen](https://github.com/est31/rcgen) from 0.9.2 to 0.9.3.
- [Release notes](https://github.com/est31/rcgen/releases)
- [Changelog](https://github.com/est31/rcgen/blob/master/CHANGELOG.md)
- [Commits](https://github.com/est31/rcgen/compare/v0.9.2...v0.9.3)

---
updated-dependencies:
- dependency-name: rcgen
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

* [auto-commit] Update all Cargo lock files

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: dependabot-buildkite <dependabot-buildkite@noreply.solana.com>
2022-12-20 02:12:53 +00:00
Brooks Prumo 76bfd1a9a1
Actually fixes non-binding `let` on a future (quic-client) (#29326) 2022-12-19 17:27:21 -05:00
Brooks Prumo 4530d161b7
Fixes format strings (#29327) 2022-12-19 17:26:38 -05:00
Jeff Washington (jwash) c816157979
shrink avoids reshaping data by using StorableAccounts trait (#29307) 2022-12-19 12:29:21 -08:00
Eric Su 710ac01ef7
docs: make the comments on using the new confirmTransaction clearer (#29251)
* docs: make the comments on using the new connection.confirmTransaction clearer

* docs: add TransactionConfirmataionStrategy type

* refactor: change param type in sendAndConfirmRawTransaction

* docs: fix typo
2022-12-19 12:23:38 -08:00
Steven Luscher 456a81982e
fix: reduce Connection keep-alive timeout to 1 second fewer than the Solana RPC's keep-alive timeout (#29130)
* Delete `AgentManager`

* Replace custom `http.Agent` implementation with `agentkeepalive` package

* Set the default free socket timeout to 1s less than the Solana RPC's default timeout

* Add link to particular issue comment

* Create the correct flavor of default agent for http/https
2022-12-19 10:22:25 -08:00
Jeff Washington (jwash) 3eca364190
remove metrics from prior to rent_epoch feature activation (#29322) 2022-12-19 08:18:02 -08:00
Tao Zhu c657f42d77
remove a wrapper function (#29305) 2022-12-19 16:10:16 +00:00
kirill lykov cdb204114e
take rust version from toolchain file (#29320)
* take rust version from toolchain file

* add quotes to pacify shellcheck
2022-12-19 17:00:14 +01:00
gr8den a0b655b72b
fix typo in runtime docs (#29314) 2022-12-17 11:01:46 -07:00
Steven Luscher 8380bf027d
chore: correct the name of the STALEBOT_START_DATE_RFC_2822 variable (#29191)
Oops. Changed this in the repository, but failed to update it in code.

Note to self: land this _after_ 8:00UTC Dec 10
2022-12-17 09:38:42 -08:00
Brooks Prumo d1722b7a7a
Fixes non-binding `let` on a future (quic-client) (#29300) 2022-12-17 03:01:22 -05:00
Brooks Prumo 0281973671
Fixes non-binding `let` on a future (ip-echo-server) (#29301)
* Fixes non-binding let on a future (ip-echo-server)

```
warning: non-binding `let` on a future
   --> net-utils/src/ip_echo_server.rs:133:13
    |
133 |             let _ = tcp_stream.shutdown();
    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    |
    = help: consider awaiting the future or dropping explicitly with `std::mem::drop`
    = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#let_underscore_future
    = note: `-D clippy::let-underscore-future` implied by `-D warnings`
```

* pr: remove let

* pr: ?
2022-12-17 00:17:59 +00:00
Lijun Wang d1cf4ced3d
quic test timeout fix (#29260)
Allow longer chunk receive timeout without impacting testing the stream exit condition for unit tests. The exit is periodically checked, we will break only when the total allowed chunk receive timed out. The start time is reset when a new chunk is received.
2022-12-16 14:26:04 -08:00
Noah Gundotra 8ef900be59
Explorer: account does not exist (#29308)
explorer: account does not exist
2022-12-16 15:13:19 -05:00
Brooks Prumo 19692263fb
Fixes format string (#29298) 2022-12-16 19:53:04 +00:00
behzad nouri 92ca725c6b
patches shred::merkle::make_shreds_from_data when data is empty (#29295)
If data is empty, make_shreds_from_data will now return one data shred
with empty data. This preserves invariants verified in tests regardless
of data size.
2022-12-16 18:56:21 +00:00
Brooks Prumo 426be3d82d
docs: Accounts must be rent exempt (#29256) 2022-12-16 13:14:01 -05:00
Mohd. Yahya b01ebfc39b
Explorer: removed lamports balance and added message for reaped accounts (#29283)
removed lamports balance and added message
2022-12-16 12:29:43 -05:00
Brennan Watt 86b2e545e1
Prune redundant const SLOT_MS (#29278)
* Alias redundant const SLOT_MS to DEFAULT_MS_PER_SLOT

* Slate SLOT_MS for deprecation

* Add doc comments

Co-authored-by: Brooks Prumo <brooks@prumo.org>
2022-12-16 08:05:09 -08:00
0xripleys ec06cf7311
"solana program set-upgrade-authority" uses SetAuthorityChecked instruction by default (#29190)
* set-upgrade-authority uses checked instruction by default

* remove print statements

* PR fixes
2022-12-16 06:59:54 +00:00
Jeff Washington (jwash) 19f13a0bea
refactor get_store_for_shrink (#29284) 2022-12-15 22:10:39 -08:00
steviez 0609dce36c
Make ledger-tool list-roots subcommand inclusive of start-root arg (#29265) 2022-12-15 22:33:57 -06:00
Jeff Biseda a44ea779bd
add support for a repair protocol whitelist (#29161) 2022-12-15 19:24:23 -08:00
Dmitri Makarov acb7eb226b
Add an rbpf-cli option to dump the program execution trace (#29289) 2022-12-15 20:08:00 -05:00
steviez ff8bb5362c
Remove repetitive logic in SlotMeta first insert detection logic (#29153) 2022-12-15 17:38:27 -06:00
behzad nouri 109dbf76df
removes Box<dyn Iterator<...>> from rpc/src/rpc_subscriptions.rs (#29203)
Box<dyn ...> requires dynamic dispatch, is heap allocated, slow and
verbose.
2022-12-15 22:33:52 +00:00
Brennan Watt 83b4c347b8
Remove unused ticks_per_slot variable (#29279) 2022-12-15 13:24:10 -08:00
behzad nouri 73c42dde6e
sanitizes shreds recovered from erasure shards (#29286)
Instead of sanitizing shreds late in recover code:
https://github.com/solana-labs/solana/blob/50ad0390f/ledger/src/shred/merkle.rs#L786

Shred{Code,Data}::from_recovered_shard should sanitize shreds before
returning:
https://github.com/solana-labs/solana/blob/50ad0390f/ledger/src/shred/merkle.rs#L192-L216
https://github.com/solana-labs/solana/blob/50ad0390f/ledger/src/shred/merkle.rs#L324-L350
2022-12-15 20:09:15 +00:00
Kirill Fomichev ccd96e246b
rpc: fix possible panics in optimize_filters (#29146) 2022-12-15 20:04:41 +00:00
Brooks Prumo 1e0a0e0ced
Cleans up CacheHashData (#29267) 2022-12-15 14:16:27 -05:00
behzad nouri 78a04ed432
ignores pubkey in Protocol::PruneMessage (#29280)
Protocol::PruneMessage(Pubkey, _) is the same as PruneData.pubkey and so
is redundant and can be ignored:
https://github.com/solana-labs/solana/blob/95d339300/gossip/src/cluster_info.rs#LL277-L279
https://github.com/solana-labs/solana/blob/95d339300/gossip/src/cluster_info.rs#L361-L367
2022-12-15 17:51:12 +00:00
Noah Gundotra 50ad0390f9
explorer: add enum parsing for anchor arguments (#29275)
add enum parsing for anchor arguments
2022-12-15 11:11:25 -05:00
behzad nouri a5c8c7c536
locks crds table only once to process push messages (#29218)
Processing push messages is locking and unlocking crds table for each
push message:
https://github.com/solana-labs/solana/blob/536b879aa/gossip/src/cluster_info.rs#L2266-L2276
https://github.com/solana-labs/solana/blob/536b879aa/gossip/src/crds_gossip_push.rs#L215C9-L260

This commit instead locks the crds table once for all the received push
messages.
2022-12-15 16:02:46 +00:00
behzad nouri 95d3393008 prunes gossip nodes based on timeliness of delivered messages
As described here:
https://github.com/solana-labs/solana/issues/28642#issuecomment-1337449607
current gossip pruning code fails to maintain spanning trees across
cluster.

This commit instead implements a pruning code based on timeliness of
delivered messages. If a messages is delivered timely enough (in terms
of number of duplicates already observed for that value), it counts
towards the respective node's score. Once there are enough many CRDS
upserts from a specific origin, redundant nodes are pruned based on the
tracked score.

Since the pruning leaves some configurable redundancy and the scores are
reset frequently, it should better tolerate active-set rotations.
2022-12-15 13:28:27 +00:00
behzad nouri b06656cbba tracks number of gossip push duplicates
The commit tracks number of times duplicates of a CRDS value is received
from gossip push. Following commits will utilize this metric to score
gossip nodes in terms of timeliness of their push messages, in order to
better pick which nodes to prune.
2022-12-15 13:28:27 +00:00
Yihau Chen 90f74302cf
chore: improve solana-client-test (#29255)
* separate test port

* make server check more deterministic

* remove serial_test

* use atomic auto incremental port

* make NEXT_RPC_PUBSUB_PORT as an global static variable

* make check_server_is_ready become check_server_is_ready_or_panic

* use processed commitment in test_rpc_client

* lint
2022-12-15 16:27:31 +08:00
Ikko Ashimine 50c1de5597
fix typo in shred.rs (#29149)
calcuation -> calculation
2022-12-15 01:14:39 -06:00
Jeff Washington (jwash) 5a687fa818
make AccountStorage::map private (#29268) 2022-12-14 20:03:25 -08:00
Noah Gundotra 119b7332f0
explorer: Only show supply page for custom urls (#29273)
only show supply page for custom urls
2022-12-14 23:01:28 -05:00