* Bail on small deploy buffers (#14677)
(cherry picked from commit a480b63234)
# Conflicts:
# sdk/program/src/loader_upgradeable_instruction.rs
* resolve conflicts
Co-authored-by: Jack May <jack@solana.com>
* Prevent the invoke and upgrade of programs in the same tx batch (#14653)
* Prevent the invoke and upgrade of programs in the same tx batch
* Pass program address as writable in the upgrade instruction
(cherry picked from commit e3bd9e5300)
# Conflicts:
# programs/bpf/Cargo.lock
# programs/bpf/Cargo.toml
# programs/bpf/tests/programs.rs
* fix conflicts
Co-authored-by: Jack May <jack@solana.com>
* Use singleGossip for program deployment
* Cli: default to single gossip (#14673)
* Init cli RpcClient with chosen commitment; default to single_gossip
* Fill in missing client methods
* Cli tests: make RpcClient commitment specific
* Simply rpc_client calls, using configured commitment
* Check validator vote account with single-gossip commitment
(cherry picked from commit 4964b0fe61)
Co-authored-by: Michael Vines <mvines@gmail.com>
Co-authored-by: Tyera Eulberg <teulberg@gmail.com>
* Configure bigtable's timeout when read-only
* Review comments
* Apply nits (thanks!)
Co-authored-by: Michael Vines <mvines@gmail.com>
* Timeout in the streamed decoding as well
Co-authored-by: Michael Vines <mvines@gmail.com>
(cherry picked from commit dcaa025822)
Co-authored-by: Ryo Onodera <ryoqun@gmail.com>
* Add stake programming documentation
We had some questions about stake programming documentation, and there
wasn't a place that contained information about the stake-o-matic and
other stake development in one place. This adds a page with that
information.
* Update docs/src/staking/stake-programming.md
Co-authored-by: Eric Williams <eric@solana.com>
* Update docs/src/staking/stake-programming.md
Co-authored-by: Eric Williams <eric@solana.com>
* Update docs/src/staking/stake-programming.md
Co-authored-by: Eric Williams <eric@solana.com>
* Update docs/src/staking/stake-programming.md
Co-authored-by: Eric Williams <eric@solana.com>
* Update docs/src/staking/stake-programming.md
Co-authored-by: Eric Williams <eric@solana.com>
* Apply suggestions from code review
* Remove trailing whitespace
Co-authored-by: Eric Williams <eric@solana.com>
(cherry picked from commit b37dbed479)
Co-authored-by: Jon Cinque <jon.cinque@gmail.com>
* Avoid tmp snapshot backlog in SnapshotPackagerService under high load (#14516)
(cherry picked from commit a95675a7ce)
# Conflicts:
# core/src/validator.rs
* rebase
Co-authored-by: Michael Vines <mvines@gmail.com>
* Bail on all CPI errors (#14500)
* Bail on all CPI errors
* whitespace
(cherry picked from commit ec48631fc5)
* resolve conflicts
Co-authored-by: Jack May <jack@solana.com>
* Report correct program id (#14486)
(cherry picked from commit 9d53eca6e3)
# Conflicts:
# programs/bpf_loader/src/lib.rs
* resolve conflicts
Co-authored-by: Jack May <jack@solana.com>
record_labels returns all the possible labels for a record identified by
a pubkey, used in updating timestamp of crds values:
https://github.com/solana-labs/solana/blob/1792100e2/core/src/crds_value.rs#L560-L577https://github.com/solana-labs/solana/blob/1792100e2/core/src/crds.rs#L240-L251
The code relies on CrdsValueLabel to be limited to a small deterministic
set of possible values for a fixed pubkey. As we expand crds values to
include duplicate shreds, this limits what the duplicate proofs can be
keyed by in the table.
In addition the computation of these labels is inefficient and will
become more so as duplicate shreds and more types of crds values are
added. An alternative is to maintain an index of all crds values
associated with a pubkey.
(cherry picked from commit c2b7115031)
Co-authored-by: behzad nouri <behzadnouri@gmail.com>