Commit Graph

12190 Commits

Author SHA1 Message Date
2b5ae54d84 Return confirmation-status (#14709) (#14714)
(cherry picked from commit 0e87572eb0)

Co-authored-by: Tyera Eulberg <teulberg@gmail.com>
2021-01-21 03:09:44 +00:00
9dd5d4407b Sanitize base58 pubkeys and sigs (bp #14708) (#14711)
* SDK: Sanitize base58 pubkey input

(cherry picked from commit 250b3969d4)

* SDK: Sanitize base58 signature input

(cherry picked from commit 2783aee483)

Co-authored-by: Trent Nelson <trent@solana.com>
2021-01-21 02:37:50 +00:00
6ae51ec5c3 Default to highest finalized block if no slot provided (#14701) (#14703)
(cherry picked from commit c64d4f7693)

Co-authored-by: Tyera Eulberg <teulberg@gmail.com>
2021-01-20 22:16:20 +00:00
ad89be3c85 Cli: promote commitment to a global arg + config.yml (bp #14684) (#14697)
* Cli: promote commitment to a global arg + config.yml (#14684)

* Make commitment a global arg

* Add commitment to solana/cli/config.yml

* Fixup a couple Display/Verbose bugs

(cherry picked from commit a7086a0f83)

# Conflicts:
#	cli/src/program.rs

* Fix conflicts

Co-authored-by: Tyera Eulberg <teulberg@gmail.com>
Co-authored-by: Tyera Eulberg <tyera@solana.com>
2021-01-20 19:39:45 +00:00
5d2bd179b1 Bump version to 1.4.25 2021-01-20 05:47:10 +00:00
c44330d16f Bail on small deploy buffers (bp #14677) (#14681)
* 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>
v1.4.24
2021-01-20 03:20:41 +00:00
540e23c987 Prevent the invoke and upgrade of programs in the same tx batch (bp #14653) (#14679)
* 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>
2021-01-19 18:28:23 -08:00
702a353d71 Cli: default to single gossip (bp #14673) (#14675)
* 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>
2021-01-20 00:36:20 +00:00
afa1905cda Configure Bigtable's timeout, enabling by default (#14657) (#14668)
* 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>
2021-01-19 15:36:32 +00:00
cd8c12c749 Improve docs around bigtable read limit (#14660) (#14661)
(cherry picked from commit 2eb19fa5e5)

Co-authored-by: Tyera Eulberg <teulberg@gmail.com>
2021-01-19 08:02:08 +00:00
1460b844bc feature gates turbine retransmit peers patch (bp #14631) (#14658)
* feature gates turbine retransmit peers patch (#14631)

(cherry picked from commit c6ae0667e6)

# Conflicts:
#	sdk/src/feature_set.rs

* removes backport merge conflicts

* adds .clone for backport

Co-authored-by: behzad nouri <behzadnouri@gmail.com>
2021-01-19 06:11:21 +00:00
6f56f9ec1b Make Bigtable::get_confirmed_blocks inclusive of requested start_slot and end_slot (#14651) (#14654)
* Fix off-by-one error

* Filter out blocks greater than end slot

(cherry picked from commit cbf8ef7480)

Co-authored-by: Tyera Eulberg <teulberg@gmail.com>
2021-01-19 03:54:43 +00:00
4d4215386d Clean up and add comment
(cherry picked from commit 8d4ab1bab1)
2021-01-17 20:04:33 -08:00
008e387381 WIP fix the occasional stuck RPC request
(cherry picked from commit 5cf9094bb9)
2021-01-17 20:04:33 -08:00
2e31f4d8f7 Use optimistic confirmation in getSignatureStatuses, and various downstream client methods (bp #14430) (#14610)
* Use optimistic confirmation in getSignatureStatuses, and various downstream client methods (#14430)

* Add optimistically_confirmed field to TransactionStatus

* Update docs

* Convert new field to confirmation_status

* Update docs to confirmationStatus

* Update variants

* Update docs

* Just Confirmed

(cherry picked from commit 9a89689ad3)

# Conflicts:
#	tokens/src/commands.rs

* Fix conflict

Co-authored-by: Tyera Eulberg <teulberg@gmail.com>
Co-authored-by: Tyera Eulberg <tyera@solana.com>
2021-01-16 04:46:08 +00:00
a1a70060e9 Support account on tmpfs via net/ scripts (bp #14459) (#14620)
* multinode-demo: Pass --accounts through bootstrap leader wrapper

(cherry picked from commit 327be55acc)

* gce.sh: Factor out default custom memory

(cherry picked from commit ddf1d2dbf5)

* net/: Support accounts on swap-backed tmpfs

(cherry picked from commit ff599ace4d)

* net/gce.sh: Add cusom RAM arg instead of doubling default with tmpfs

(cherry picked from commit 3175cf1deb)

Co-authored-by: Trent Nelson <trent@solana.com>
2021-01-16 01:35:44 +00:00
b064956e20 Add load/execute/store timings (#14561) (#14590)
Co-authored-by: sakridge <sakridge@gmail.com>
2021-01-15 21:13:09 +00:00
ea55cac8bb net/net.sh: Quite pre-emptible instance status check (#14617)
(cherry picked from commit 7b67228bc1)

Co-authored-by: Trent Nelson <trent@solana.com>
2021-01-15 21:13:02 +00:00
6a5d664d6a patches bug in turbine's neighbors computation (#14565) (#14612)
Removing local node's index early from the set here:
https://github.com/solana-labs/solana/blob/e1b59ded4/core/src/retransmit_stage.rs#L346
distorts the order of nodes depending on which node is computing the
turbine fan-out tree, and results in incorrect neighbors computation.

(cherry picked from commit cfcca1cd3c)

Co-authored-by: behzad nouri <behzadnouri@gmail.com>
2021-01-15 18:42:44 +00:00
fad7f198b4 Use highest-confirmed-root for max check (#14599) (#14603)
(cherry picked from commit 465f991035)

Co-authored-by: Tyera Eulberg <teulberg@gmail.com>
2021-01-15 09:16:48 +00:00
8a24707fe4 docs: Add stake programming documentation (#14529) (#14581)
* 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>
2021-01-14 16:11:34 +00:00
e822f8cc39 Don't stop to find newer cluster-confirmed roots (bp #14557) (#14559)
* Don't stop to find newer cluster-confirmed roots (#14557)

* Don't stop to find newer cluster-confirmed roots

* Fix and add new tests

* nits

(cherry picked from commit e95ebcf864)

# Conflicts:
#	ledger/src/blockstore_processor.rs

* My blind merge conflict edit!

* blind 2

Co-authored-by: Ryo Onodera <ryoqun@gmail.com>
2021-01-14 01:17:38 +00:00
b1335041c8 validator: Add --rpc-threads argument (bp #14553) (#14567)
* Add --rpc-threads argument

(cherry picked from commit 11daaadc93)

# Conflicts:
#	Cargo.lock
#	validator/Cargo.toml

* rebase

Co-authored-by: Michael Vines <mvines@gmail.com>
2021-01-14 00:09:22 +00:00
6d67dc6ead adds pubkey for behzad@solana.com (bp #14558) (#14562)
* adds pubkey for behzad@solana.com (#14558)

(cherry picked from commit 673cb39975)

# Conflicts:
#	net/scripts/solana-user-authorized_keys.sh

* removes backport merge conflicts

Co-authored-by: behzad nouri <behzadnouri@gmail.com>
2021-01-13 17:40:37 +00:00
3d7562339f feat: publish more docker ports in localnet script (bp #12788) (#14552) 2021-01-12 14:25:56 -08:00
682acd5bfd Bump version to v1.4.24 (#14543) 2021-01-12 02:44:28 +00:00
51fbc1a73e Use standard tmp-snapshot- file prefix for the "new_state" archive for better cleanup/consistency 2021-01-11 17:34:47 -08:00
375295a605 v1.4: Update timestamp max allowable drift to 50% of PoH (#14532)
* Add timestamp warp

* Change max_allowable_drift to 50%

* Fill in PR#

* Fix rpc test setup
v1.4.23
2021-01-11 22:49:19 +00:00
664e772d0f Restore snapshot hard linking (#14533)
(cherry picked from commit 872a249e97)

Co-authored-by: Michael Vines <mvines@gmail.com>
2021-01-11 21:52:21 +00:00
45381acd82 Clarify log message, the remote snapshot might not actually be newer 2021-01-11 11:54:18 -08:00
f925828f79 Avoid tmp snapshot backlog in SnapshotPackagerService under high load (bp #14516) (#14527)
* 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>
2021-01-11 19:46:04 +00:00
f67820cc56 rebase 2021-01-11 08:40:07 -08:00
db26cdf8f0 Rename CompressionType to ArchiveFormat
(cherry picked from commit 7be6770808)

# Conflicts:
#	core/src/test_validator.rs
2021-01-11 08:40:07 -08:00
683d748784 Rename AccountsPackage::root to AccountsPackage::slot
(cherry picked from commit 141e6706e6)
2021-01-11 08:40:07 -08:00
72ef444257 Reduce TempDir exposure
(cherry picked from commit 9f70f7dc3e)
2021-01-11 08:40:07 -08:00
d85780e092 Replace incorrect symlink_dir usage with symlink_file
(cherry picked from commit f2a7f561a0)
2021-01-11 08:40:07 -08:00
3f3058fc7d Create account paths once
(cherry picked from commit fe0ba4a429)
2021-01-11 08:40:07 -08:00
667402531f Bail on all CPI errors (bp #14500) (#14506)
* 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>
2021-01-10 06:27:27 +00:00
ac86d6ede4 Cli: Implement OutputFormat for some missing subcommands (#14518) (#14519)
* Implement OutputFormat for solana leader-schedule

* Implement OutputFormat for solana inflation

(cherry picked from commit e4cf845974)

Co-authored-by: Tyera Eulberg <teulberg@gmail.com>
2021-01-10 01:27:44 +00:00
caa26b755c Humanize the 'ledger processed...' time (#14510)
(cherry picked from commit 86c81a0ba2)

Co-authored-by: Michael Vines <mvines@gmail.com>
2021-01-09 08:23:40 +00:00
4470afceaa Add buffer authority to upgradeable loader (bp #14482) (#14503)
* Add buffer authority to upgradeable loader (#14482)

(cherry picked from commit 58487c6360)

* resolve conflicts

* nudge

Co-authored-by: Jack May <jack@solana.com>
2021-01-09 05:13:55 +00:00
35b42e1541 Gate cpi program account passing (bp #14443) (#14505)
* Gate cpi program account passing (#14443)

(cherry picked from commit a8b5a32b50)

# Conflicts:
#	sdk/src/feature_set.rs

* resolve conflicts

Co-authored-by: Jack May <jack@solana.com>
2021-01-09 03:16:26 +00:00
463e377ccc Enable program upgrades via CPI (#14449) (#14502)
(cherry picked from commit 5eacc5d08d)

Co-authored-by: Jack May <jack@solana.com>
2021-01-09 01:30:42 +00:00
d815fe37c8 Don't use caller passed executable account (#14276) (#14501) 2021-01-09 01:21:09 +00:00
709ec20d7c Report correct program id (bp #14486) (#14497)
* 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>
2021-01-08 16:53:09 -08:00
e7bb83c037 Bump version to 1.4.23 2021-01-08 16:19:46 -08:00
27c272a12c Suppress cargo audit failure for difference crate, there's no newer crate to upgrade to yet
(cherry picked from commit 3eaa826ad9)
v1.4.22
2021-01-08 14:04:32 -08:00
cbcbc3f1c8 limits number of crds values associated with a pubkey (bp #14467) (#14489)
* limits number of crds values associated with a pubkey (#14467)

(cherry picked from commit 766195dded)

# Conflicts:
#	core/src/crds.rs

* removes backport merge conflicts

* updates smallvec

Co-authored-by: behzad nouri <behzadnouri@gmail.com>
2021-01-08 21:27:00 +00:00
1ab4c616be docs: Validator tuning improvements (bp #14478) (#14479)
* docs: wrap lines

(cherry picked from commit 140642ea21)

* docs: Prefer `dd` to `fallocate` when creating swap file

(cherry picked from commit c035f2a745)

* docs: Add RUST_LOG explainer

(cherry picked from commit 30038a8849)

Co-authored-by: Trent Nelson <trent@solana.com>
2021-01-07 19:36:12 +00:00
04eed1b57e indexes crds values associated with a pubkey (#14088) (#14474)
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-L577
https://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>
2021-01-07 15:25:37 +00:00