Commit Graph

520 Commits

Author SHA1 Message Date
Michael Vines e3365529de
Enable transaction fees for multinode-demo/ and net/ (#4527)
* Collect fees at the end of a slot

* Enable transaction fees for multinode-demo/ and net/
2019-06-04 14:51:52 -07:00
Michael Vines 9754e551cb
Fund vote accounts with 1 lamport only (#4512) 2019-06-03 14:48:01 -07:00
Michael Vines e15246746d Enable non-zero fees for all testnets (#4513)
automerge
2019-05-31 22:33:55 -07:00
Michael Vines c0a161afe8 Enable fees in ci/localnet-sanity.sh (#4508)
automerge
2019-05-31 16:50:39 -07:00
Sagar Dhawan 916844d399
Fix replicator account setup in fullnode.sh (#4430) 2019-05-24 15:40:49 -07:00
Michael Vines 8eac199e8b
Include perf-libs in release tarball (#4422) 2019-05-24 09:28:52 -07:00
Michael Vines 2e251ccc5c
De-fullnode variable names (#4420) 2019-05-24 04:31:39 -07:00
Michael Vines 94beb4b8c2
More fullnode -> validator renaming (#4414)
* s/fullnode_config/validator_config/g

* s/FullnodeConfig/ValidatorConfig/g

* mv core/lib/fullnode.rs core/lib/validator.rs

* s/Fullnode/Validator/g

* Add replicator-x.sh

* Rename fullnode.md to validator.md

* cargo fmt
2019-05-23 22:05:16 -07:00
Michael Vines fb2eac20bb
Rename solana-fullnode to solana-validator (#4411) 2019-05-23 15:06:01 -07:00
Michael Vines b37d2fde3d
Add storage mining pool (#4364)
* Add storage mining pool

* Set gossip port

* Add create-storage-mining-pool-account wallet command

* Add claim-storage-reward wallet command

* Create storage account upfront

* Add storage program to genesis

* Use STORAGE_ACCOUNT_SPACE

* Fix tests

* Add wallet commands to create validator/replicator storage accounts

* Add create_validator_storage_account()

* Storage stage no longer implicitly creates a storage account
2019-05-23 14:50:23 -07:00
Sagar Dhawan d15e248cdb
Add bootstrap storage account to genesis (#4359)
* Add bootstrap storage account to genesis

* Add storage account genesis command to run.sh

* Update airdrop for all validators

* Remove unhelpful Short for arg

* Set the correct program owner
2019-05-20 19:46:15 -07:00
Michael Vines 392a39dd54
Poh subsystem cleanup, genesis plumbing, enable real PoH on edge testnet (#4292)
* Remove unused PohServiceConfig::Step

* Clarify variable name

* Poh::hash() now takes an iteration counter

* man -> max

* Inline functions with single call site

* Move PohServiceConfig into GenesisBlock

* Add plumbing to enable real PoH on testnets

* Batch hashes to improve PoH hash rate

* Ensure a constant hashes_per_tick

* Remove PohEntry mixin field

* Poh/PohEntry no longer maintains tick_height

* Ensure a constant hashes_per_tick

* ci/localnet-sanity.sh: Use real PoH

* Rework Poh/PohService to keep PohRecorder unlocked as much as possible while hashing
2019-05-18 14:01:36 -07:00
Sagar Dhawan fd3f2cb910
Add Storage accounts for all nodes (#4298)
* Setup storage keypairs for all nodes

* Clean up naming

* clippy

* Update arg value_names
2019-05-15 15:19:29 -07:00
Michael Vines a4fb01b42b
Add +x 2019-05-13 14:30:44 -07:00
Michael Vines 1393d26f63
Remove obsolete internal multinode-demo/ logging (#4265) 2019-05-13 10:51:18 -07:00
Michael Vines 1dce5976cf
Disable node restart in localnet-sanity.sh 2019-05-12 21:21:31 -07:00
Michael Vines 340d01665c
Avoid generating default keypair 2019-05-12 21:21:31 -07:00
Rob Walker ba8f49366d
passive staking 4 (#4240)
* support passive staking with wallet, use it

* fixups

* clippy

* cleanup app generation in wallet, finish fullnode.sh staking

* _id and _keypair => pubkey
use keygen, not wallet to get pubkey

* found 'em
2019-05-09 19:31:42 -07:00
Michael Vines a8254fd258
Clear stale ledger on fullnode startup if necessary (#4238) 2019-05-09 17:09:36 -07:00
Sagar Dhawan a031b09190 Add replicator support to multinode demo (#4221)
automerge
2019-05-09 13:43:39 -07:00
Michael Vines 1e949caa7f Move airdrop retries fully out of bash (#4234)
automerge
2019-05-09 09:48:27 -07:00
Michael Vines da4c37beec
multinode-demo/ grooming (#4226)
* Rename leader to entrypoint

* The fullnode identity keypair can now be provided

* Rename _id to _keypair
2019-05-08 19:59:22 -07:00
Michael Vines d486d2b8ce Consolidate default arg parsing (#4224)
automerge
2019-05-08 19:12:43 -07:00
Rob Walker 965c1e0000
staking plumbing part 3, 3.5 (#4216) 2019-05-08 12:56:11 -07:00
Michael Vines 7609a007c6
Add FeeCalculator to the genesis block (#4196) 2019-05-07 20:28:41 -07:00
Michael Vines 9b50583641
wallet: add --url, remove --host/--rpc-host/--rpc-port/-rpc-tls (#4153)
Also by default the wallet now talks to testnet.solana.com instead of
localhost
2019-05-06 07:38:26 -07:00
Michael Vines 586fb15c2c
fullnode positional arguments may now be mixed with optional arguments (#4151) 2019-05-03 20:49:24 -07:00
Michael Vines f3f416b7ba
Rename --network argument to --entrypoint (#4149) 2019-05-03 15:00:19 -07:00
Michael Vines f91627a230
Remove extra-fullnode-args.sh (#4142) 2019-05-03 13:32:59 -07:00
Michael Vines f9c093022c
multinode-demo/: Merge bootstrap-leader.sh into fullnode.sh (#4139) 2019-05-03 12:33:48 -07:00
Michael Vines 7fe3c75c6b
Add a node-specific ip echo service to remove dependency on ifconfig.co (#4137) 2019-05-03 11:01:35 -07:00
Michael Vines c8ed41167a
Factor tune_system() out of multinode-demo/ (#4138)
* Remove x bit from ulimit-n.sh

* Factor tune_system() out of multinode-demo/
2019-05-03 10:40:02 -07:00
Rob Walker eebdfe8d73 wait for network recovery after restart (#4000) 2019-04-26 07:30:52 -07:00
Michael Vines 1661a7a55f
Correct variable name 2019-04-24 07:39:29 -07:00
Rob Walker c3155a6e39
silence sigverify disabled, make disabling sigverify easier (#3901)
* silence sigverify disabled, make disabling sigverify easier

* fixup
2019-04-19 14:18:19 -07:00
Jack May 1a9ac62f60
Add bench-exchange support to the net framework (#3893) 2019-04-19 09:56:01 -07:00
Jack May 2cd556e43c
Add drone cap parameter (#3876) 2019-04-18 15:42:20 -07:00
Michael Vines 78d5ace754
Refactor multinode-demo/ scripts to avoid shipping fullnode-x.sh (#3835) 2019-04-17 18:03:58 -07:00
Jack May fdb12b54fa Run multinode-demo from anywhere (#3831) 2019-04-17 14:23:32 -07:00
Michael Vines bc17edcda3
Add --keypair to avoid writing a new one to ~ in CI 2019-04-17 10:12:18 -07:00
Michael Vines aa6c82cfdc
Add show-vote-account command (#3814) 2019-04-17 07:45:07 -07:00
Michael Vines 63d66ece57
net/ testnet nodes now stake more lamports (#3812)
* Add --bootstrap-leader-lamports

* Generalize --no-stake into --stake NUM

* Use a large stake for net/ fullnodes

* Setup vote account before starting fullnode to avoid mixed log output
2019-04-16 13:03:01 -07:00
Michael Vines c67cc694ae
Remove stake from `./net sanity` ephemeral validator (#3797) 2019-04-15 21:42:25 -07:00
Michael Vines 3dc47a46d5
Revert "Revert "disable staking of blockstreamer node""
This reverts commit 03da63b41b.
2019-04-15 20:11:00 -07:00
Michael Vines 0767c0c07f Add DNS resolution to cli tools 2019-04-14 21:25:46 -07:00
Michael Vines f6aa90e193 Add fullnode --dynamic-port-range option 2019-04-14 07:08:29 -07:00
Michael Vines c7a7d6db84 Use |solana-keygen pubkey| instead of |solana-wallet address|
Same end result but solana-keygen is a smaller program that builds
faster
2019-04-14 07:08:29 -07:00
Rob Walker 656b3139e3
see perf-libs all the time (#3748) 2019-04-12 08:38:14 -07:00
Rob Walker f1e7237c09
vote_api cleanup (#3710)
* vote_api cleanup

* fixups

* fixup

* remove unused code

* revert removal of serialize and deserialize

* ...

* increase coverage, bootstrap staking

* Sagar's STAKE to my VOTE
2019-04-10 17:52:47 -07:00
Sagar Dhawan d2ea782372 Always use bootstrap vote account for leader 2019-04-10 15:51:00 -07:00
Stephen Akridge 20a2c59b70 Reduce udp read/write buffer sizes
With 18.04, these large values cause packet errors and mess up the system.
2019-04-08 15:21:45 -07:00
Pankaj Garg 03da63b41b Revert "disable staking of blockstreamer node"
This reverts commit 42d8a7d9e7.
2019-04-06 08:57:06 -07:00
Pankaj Garg 42d8a7d9e7 disable staking of blockstreamer node
- this will stop it from entering leader rotation schedule
2019-04-05 16:48:52 -07:00
Tyera Eulberg 92c66a411b Remove bench-tps converge-only 2019-04-01 23:05:25 -06:00
Sagar Dhawan c61bb16fdf
Fix manifest path for cargo commands (#3549) 2019-03-28 15:56:08 -07:00
Michael Vines 7e2aad2590 Refrain from trying to configure a staking account that was previously configured 2019-03-22 17:00:09 -07:00
Michael Vines 0a5b6154e8 Use same gossip port for all testnet nodes 2019-03-22 00:16:58 -07:00
Michael Vines 4542a7042a Add --poll-for-new-genesis-block flag 2019-03-22 00:15:19 -07:00
Michael Vines f777ed76a3 Use installed binaries if not within the cargo workspace 2019-03-21 22:09:44 -07:00
Michael Vines dbb145c266
Fixup ledger path 2019-03-21 17:06:57 -07:00
Michael Vines 437481853b Ensure genesis ledger directory is populated on all validator nodes
This allows all nodes to serve the genesis ledger over rsync instead of
just the bootstrap leader
2019-03-21 16:35:40 -07:00
Michael Vines 242bcf44db
Replace stale --no-signer usage with --no-voting 2019-03-13 13:50:30 -07:00
Michael Vines a17be9f8bd
Revert "Add case for --rpc-drone-address"
This reverts commit 42ad297778.
2019-03-13 13:23:54 -07:00
Michael Vines 42ad297778
Add case for --rpc-drone-address 2019-03-13 13:04:44 -07:00
Sagar Dhawan 866d3f467f
Fix flag to disable leader-rotation (#3243) 2019-03-12 16:35:13 -07:00
Pankaj Garg 8bba11367e Provide drone's host address while setting up staking account 2019-03-11 17:11:34 -07:00
Rob Walker 0acdbc0d03 plumb staking_account and voting_keypair from multinode-demo to Vote (#3199)
* plumb staking_account and voting_keypair from bash to Vote
2019-03-08 19:29:08 -07:00
Michael Vines 0a4f909566 requestAirdrop RPC API is now optional 2019-03-06 10:23:57 -08:00
Michael Vines 545feab6db Misc token to lamport renaming 2019-03-05 17:56:44 -08:00
Michael Vines beb45f44ac solana-genesis: rename tokens to lamports 2019-03-05 17:28:06 -08:00
Michael Vines 3fc846d789 Try to use the RPC exit API to cleanly exit nodes 2019-03-04 19:58:37 -08:00
Michael Vines 0f77531f09 Simplify pass-through arg handling 2019-03-04 19:58:37 -08:00
Michael Vines 7b49c9f09c Delete fullnode-config/ 2019-03-04 15:49:02 -08:00
Michael Vines cd4bccfd12 Remove snap support 2019-03-02 17:41:09 -08:00
Stephen Akridge 5216952691 Change benchmark path to target/ or OUT_DIR
Also reduce some code duplication with cleanup_dirs fn.
2019-02-27 08:22:52 -08:00
Tyera Eulberg d8f6865338 Rename EntryStream to Blockstream 2019-02-21 17:24:29 -07:00
Michael Vines b79d361e6c
Add --entry-stream support 2019-02-15 22:52:27 -08:00
Tyera Eulberg 6da7a784f2
Stream entries (#2582)
* Add entry streaming option

* Fix tests

* Remove obsolete comment

* Move entry stream functionality to struct w/ trait in order to test without i/o
2019-01-29 00:21:27 -08:00
Tyera Eulberg a2e29fa71f Alphabetize and make consistent fullnode arguments 2019-01-28 14:32:32 -08:00
Tyera Eulberg b7be5b9a7a Add no-signer argument 2019-01-24 10:47:37 -08:00
Michael Vines cc88f9bcd6 Add mechanism to determine when a node has finished booting 2019-01-23 00:02:30 -08:00
Michael Vines dca0ba6a5d Use -X for dynamic fullnodes, to ensure keypair remains constant during iterations 2019-01-22 08:27:36 -08:00
Michael Vines 6883ea0944 Give the fullnode one million tokens as a #2355 workaround 2019-01-18 13:42:04 -08:00
Michael Vines 303289777f rsync/airdrop only if ledger doesn't exist (eg, on first run after setup.sh) 2019-01-18 13:42:04 -08:00
Michael Vines da5cb0b012 Verify ledger before starting up the fullnode 2019-01-18 13:42:04 -08:00
Michael Vines 922ffdfc28 Remove unnecessary ledger/ subdirectory 2019-01-18 13:42:04 -08:00
Michael Vines 9c8e853567 Rename --rpc arg to --rpc-port to match wallet cli 2019-01-17 09:04:57 -08:00
Michael Vines 825d8ef6c9 Add ability to use the RPC endpoint from a node other than the bootstrap leader 2019-01-17 09:04:57 -08:00
Michael Vines da1201c552 Add --rpc-port option to select a custom RPC port 2019-01-17 09:04:57 -08:00
Michael Vines a84b6bc7e4 Overhaul wallet rpc/drone command-line arguments 2019-01-17 08:36:05 -08:00
Stephen Akridge 33f2d83506 Add timeout and prints to port search
Otherwise nc can hang forever.
2019-01-04 11:07:17 -08:00
Michael Vines 4807fb4c5c Use if to be more explict about error handling (set -e trouble?) 2018-12-20 19:07:17 -08:00
Michael Vines 59fdd8f6be Move wallet airdrop retries into fullnode start script 2018-12-19 13:49:04 -08:00
Michael Vines 9ff8abaf29 Ensure port is not inuse before selecting it 2018-12-17 09:31:31 -08:00
Michael Vines 74ee1e5087 Increase the number of files a node may have open at a time 2018-12-15 17:15:22 -08:00
Michael Vines 282d4a3563 Move solana-keygen into keygen/ 2018-12-13 01:06:40 -08:00
Michael Vines 094f0a8be3 Leader rotation flag plumbing 2018-12-10 14:07:59 -08:00
Michael Vines db3cca7fbe Display wallet address before airdrop to help with debug on airdrop failures 2018-12-09 09:41:14 -08:00
Sathish 2de45a4da5
Update airdrop tokens to 3 for fullnode (#2051)
Filter out leader while computing the super majority stake
2018-12-08 16:54:42 -08:00
Michael Vines 872a3317b5 Fully switch to bootstrap-leader for command-line args 2018-12-07 16:57:02 -08:00
Michael Vines 38901002b0 Accept an ip address in addition to domain name 2018-12-07 16:57:02 -08:00
Michael Vines 92c3e26c7a Flip symlinks 2018-12-07 11:32:08 -08:00
Tyera Eulberg 1ddf93fd86 Strip cp -r arg 2018-12-07 10:43:36 -08:00
Michael Vines 70c149c7da Rename leader/validator to bootstrap-leader/fullnode
Only rsyncing the genesis ledger snuck in here as well
2018-12-06 19:44:47 -08:00
Michael Vines f4b26247c0 Genesis only needs a keypair, not the entire fullnode::Config 2018-12-06 16:31:24 -08:00
Michael Vines 8f0a1e32d5 Use consistent naming for the mint id file 2018-12-06 16:31:24 -08:00
Michael Vines c4b8f0cd2f bench-tps will now generate an ephemeral identity if not provided with one
Also simplify scripts as a result
2018-12-06 16:30:48 -08:00
Michael Vines e3c4f1f586 Move client keygen into client.sh 2018-12-06 14:49:26 -08:00
Michael Vines cc2f448d92 Add fullnode --no-leader-rotation flag 2018-12-06 11:30:19 -08:00
Michael Vines b45d07c8cb Remove non-common functions from common.sh 2018-12-06 10:15:14 -08:00
Michael Vines a6312ba98f Switch snap to bootstrap-fullnode/fullnode naming 2018-12-05 18:59:43 -08:00
Rob Walker ddc4e7ffa0 use fewer transactions for the public, "welcome to Solana" demo 2018-11-28 16:23:22 -08:00
Michael Vines 33a5d5fe93 Enable debug builds by default for better backtraces 2018-11-17 10:52:08 -08:00
Michael Vines d96a6b42a5 Move drone into its own crate 2018-11-16 20:42:21 -08:00
carllin cf95708c18 Set drone address to always be the initial network entry point (#1847)
* Set drone address to always be the initial network entry point, so that even when leaders rotate the client can still find the drone

* Extract drone address as a separate argument to bench-tps

* Add drone port to client.sh instead of setting it in bench-tps

* Add drone entrypoint to scripts

* Fix build error
2018-11-16 19:56:26 -08:00
Michael Vines a0dd8617be Remove airdrop from fullnode 2018-11-16 13:25:55 -08:00
Michael Vines e791d0f74d Drone now returns signed airdrop transactions 2018-11-15 17:13:13 -08:00
Michael Vines 4a3230904e Specify rpc port 2018-11-15 12:32:15 -08:00
Michael Vines def7d156f6 codemod --extensions sh '#!/usr/bin/env bash -e' '#!/usr/bin/env bash\nset -e' 2018-11-11 16:24:36 -08:00
Michael Vines 33aab094ef codemod --extensions sh '#!/bin/bash' '#!/usr/bin/env bash' 2018-11-11 16:24:36 -08:00
Michael Vines a537154c28
Remove all cuda dependencies from release tarball beyond solana-fullnode-cuda 2018-11-07 14:44:40 -08:00
carllin 298bd6479a
Add first leader to genesis (#1681)
* Add first leader to genesis entries, consume in genesis.sh

* Set bootstrap leader in the bank on startup, remove instantiation of bootstrap leader from bin/fullnode

* Remove need to initialize bootstrap leader in leader_scheduler, now can be read from genesis entries

* Add separate interface new_with_leader() in mint for creating genesis leader entries
2018-11-02 14:32:05 -07:00
Pankaj Garg 3cc78d3a41
Added a new remote node configuration script to set rmem/wmem (#1647)
* Added a new remote node configuration script to set rmem/wmem

* Update common.sh for rmem/wmem configuration
2018-10-30 09:17:35 -07:00
Rob Walker 386a96b7e0
capture multinode logs by default (#1367) 2018-09-26 19:30:40 -07:00
Pankaj Garg bc88473030
Increase wmem for kernel network memory usage (#1323)
- Validators were running out of kernel buffer while retransmitting
  blobs
2018-09-24 13:02:56 -07:00
Tyera Eulberg 0125163190 Remove wallet.sh, update entrypoint syntax for wallet network argument 2018-09-17 11:53:33 -06:00
Rob Walker 9e24775051 update README with v0.8 and update demo scripts to match 2018-09-13 18:37:37 -07:00
Rob Walker 80caa8fdce add back some defaults for client.sh 2018-09-13 14:05:53 -07:00
Rob Walker 016ee36808 remove -x 2018-09-10 21:40:14 -07:00
Michael Vines 7029e4395c Fix OOM reporting 2018-09-08 18:57:31 -07:00
Rob Walker 51b27779c9
client changes for TODOs and looping (#1138)
* remove client.sh from snap
* default to ephemeral instead of ~/.config key
* rework CLI for bench-tps
* remote multinode-demo stuff from remote-client.sh
* remove multinode-demo from remote-sanity and localnet-sanity
2018-09-08 07:07:10 +09:00
Michael Vines ee682d5bc3 Move wallet-sanity.sh out of multinode-demo/ 2018-09-07 12:01:43 -07:00
Michael Vines e175c9dea9 Remove ip address hardcode. Fixes #959 2018-09-06 19:54:39 -07:00
Michael Vines 1c874fbc1b Make This is little more hacky 2018-09-05 09:02:02 -07:00
Michael Vines 0362169671 Better scope leader and validator setup 2018-09-05 09:02:02 -07:00
Michael Vines e2e569cb43 Set rsync url for local deployments 2018-09-05 09:02:02 -07:00
Michael Vines 399caf343c Morph gce_multinode-based scripts into net/ 2018-09-05 09:02:02 -07:00
Rob Walker 61abee204f
don't check for snap mode in common.sh, is only relevant to snap daemons (#1113)
snap mode is for daemons, remove it from client (i.e. common.sh)

supply leader info to client via snap
2018-09-04 14:31:54 +09:00
Rob Walker a99dbb2a0c set -x in client.sh 2018-09-04 11:55:04 +09:00
Rob Walker 7b3c7f148b supply leader and leader_address 2018-09-02 02:27:05 +09:00
Rob Walker 25d7dc7b96 fixups 2018-09-01 04:38:18 +09:00
Rob Walker d1f1cbe88f leader-address=>leader-ip 2018-09-01 04:38:18 +09:00
Rob Walker 210a4d0640 fixup 2018-08-31 23:21:07 +09:00
Rob Walker 176e806d94 rework of netwrk rendezvous
* rename NodeInfo field of Node from "data" to "info"
      (touches a lot of files)

  * update client to use gossip to find leader, a la drone

  * rework multinode scripts
      * move more stuff into rust
      * added usage to all
      * no more rsync unless you're a validator (TODO: whack that, too)
  * fullnode doesn't bail if drone isn't up yet, just keeps trying
  * drone doesn't bail if network isn't up yet, just keeps trying
2018-08-31 23:21:07 +09:00
Rob Walker 1af4cee63b fix #1079
* move gossip/NCP off assuming anything about its address
  * use a single socket to send and receive gossip
  * remove --addr/-a from CLIs
  * rearrange networking utility code
  * use Arc<UdpSocket> to share the Sync-safe UdpSocket among threads
  * rename TestNode to Node

TODO:

  * re-enable 127.0.0.1 as a valid address in crdt
  * change repair request/response to a similar, single socket
  * pick cloned sockets or Arc<UdpSocket> for all these (rpu uses tryclone())
  * update contact_info with network truthiness instead of what the node
      says?
2018-08-31 23:21:07 +09:00
Michael Vines c8e3ce26a9 Start of scripts/gcloud.sh 2018-08-27 22:35:14 -07:00
Rob Walker f88970a964 source oom-score-adj.sh from validator.sh 2018-08-28 10:01:41 +09:00
Michael Vines bd5c6158ae Move some common scripts from multinode-demo/ to scripts/ 2018-08-27 13:52:38 -07:00
Michael Vines 31d1087103 Documentation 2018-08-27 13:52:38 -07:00
anatoly yakovenko 738247ad44
advertise valid gossip address in drone and wallet (#1066)
* advertize valid gossip address in drone and wallet

get rid of asserts

check for valid ip address

check for valid address

ip address

* tests

* cleanup

* cleanup

* print error

* bump

* disable tests

* disable nightly
2018-08-26 11:36:27 -07:00
sakridge c641ba1006
Up network buffers to 64MB max (#1057)
500ms of data at 1Gbps = 125GB/2 = 64MB
Seems to help tx rate in GCP network tests.
2018-08-24 18:17:48 -07:00
Tyera Eulberg d4c41219f9 Improve gossip use for drone and wallet
- Add utility function
  - Add thread sleep
  - Enable configurable timeout for gossip poll
2018-08-23 13:08:59 -06:00
Pankaj Garg f1e35c3bc6
GCE script change to use GCE private network for multinode tests (#1042)
- Also the user can specify the zone where the nodes should be created
2018-08-22 13:21:33 -07:00
Rob Walker 7aeef27b99 not quite banishing build.rs, but better 2018-08-16 22:33:31 -07:00
Rob Walker 16cf31c3a3 fix #990 2018-08-16 15:52:30 -07:00
Rob Walker 2b48daaeba accept multiple expected outputs 2018-08-16 14:44:51 -07:00
Anatoly Yakovenko a284030ecc Account type with state
comments

fixups!

fixups!

fixups for a real Result<> from get_balance()

on 2nd thought, be more rigorous

Merge branch 'rob-solana-accounts_with_state' into accounts_with_state

update

review comments

comments

get rid of option
2018-08-16 14:44:51 -07:00
anatoly yakovenko 88d6fea999 Revert "Accounts with state (#954)"
This reverts commit c23fa289c3.
2018-08-15 19:44:39 -07:00
anatoly yakovenko c23fa289c3
Accounts with state (#954)
* Account type with state

* fixed test according to @rob-solana
2018-08-15 14:32:11 -07:00
Michael Vines 9688f8fb64
Update IP address 2018-08-13 12:32:09 -07:00
Rob Walker 06af9de753 fixups 2018-08-10 11:41:31 -07:00
Rob Walker 846ad61941 use ~/.solana instead of PWD to keep cargo happy, don't rsync --append 2018-08-10 11:41:31 -07:00
Michael Vines 5fec0ac82f Validators now rsync the ledger smarter
- Don't re-rsync parts of the ledger that are already present
- Disable compression
2018-08-07 17:38:26 -07:00
Michael Vines df808dedd1 Add simple OOM Killer monitor 2018-08-07 13:35:01 -07:00
Michael Vines 02f9cb415b Ignore failure to write oom_score_adj 2018-08-07 13:35:01 -07:00
Michael Vines e3cf1e6598 Bundle metrics_write_datapoint.sh in Snap 2018-08-07 13:35:01 -07:00
Michael Vines 0ee935dd72 Adjust fullnode/drone oom_score_adj to goad the kernel into killing it first 2018-08-07 10:42:53 -07:00
Michael Vines 1c38e40dee Validate ledger once all the tests complete 2018-08-07 10:00:52 -07:00
Rob Walker 1152457691 avoid normal validator port a little better for sanity 2018-08-06 15:06:16 -07:00
Rob Walker 5193819d8e Revert "Revert "plug in new ledger""
This reverts commit 57e928d1d0.
2018-08-06 08:51:41 -07:00
Stephen Akridge 210b9d346f Add voting metrics and -h/--help to get usage for client.sh script 2018-08-05 14:21:49 -07:00
Michael Vines e7d3069f58 macOS: Adjust maxdgram to allow for large UDP packets 2018-08-04 21:42:59 -07:00
Rob Walker 40ea3e3e61 tweak multinode-demo to work better in snap, validator-x be more stand-alone 2018-08-04 01:04:06 -07:00
Rob Walker dc9a11bae0 remove rsync size limit for validator's ledger 2018-08-03 23:31:25 -07:00
Rob Walker 98ee4b4672 fix up some nits in multinode-demo 2018-08-03 20:19:41 -07:00
Rob Walker c998199954 fixups, add validator-x to sanity 2018-08-03 15:34:11 -07:00
Rob Walker 19792192a7 support any number of self-setup validators on a single host 2018-08-03 15:34:11 -07:00
Michael Vines c5ceb15e02 Skip network tuning on CI machines 2018-08-03 10:46:48 -07:00
Rob Walker 57e928d1d0 Revert "plug in new ledger"
This reverts commit 46d9ba5ca0.
2018-08-03 10:24:51 -07:00
Rob Walker 46d9ba5ca0 plug in new ledger 2018-08-02 21:50:47 -07:00
sakridge 2ea6f86199 Submit leader's vote after observing 2/3 validator votes (#780)
* fixup!

* fixups!

* send the vote and count it

* actually vote

* test

* Spelling fixes

* Process the voting transaction in the leader's bank

* Send tokens to the leader

* Give leader tokens in more cases

* Test for write_stage::leader_vote

* Request airdrop inside fullnode and not the script

* Change readme to indicate that drone should be up before leader

And start drone before leader in snap scripts

* Rename _kp => _keypair for keypairs and other review fixups

* Remove empty else
* tweak test_leader_vote numbers to be closer to testing 2/3 boundary
* combine creating blob and transaction for leader/validator
2018-07-31 22:07:53 -07:00
Michael Vines 647053e973 Terminate child process when main script is interrupted 2018-07-30 16:36:26 -07:00
Michael Vines 3e351b0b13 Drop -t 2018-07-30 16:13:51 -07:00
Michael Vines 81db333490 Guard against rsyncing TBs of ledger 2018-07-27 23:53:20 -07:00
Michael Vines c68ee0040d No need to support migrating from the old ledger format anymore 2018-07-27 23:53:20 -07:00
Michael Vines d96e267624
Keep around 3GB of logs, 160MB is just not enough 2018-07-27 22:40:21 -07:00
Michael Vines 537be6a29d export SOLANA_DEFAULT_METRICS_RATE 2018-07-24 15:43:25 -07:00
Michael Vines 7d68b6edc8 Fixup arg processing 2018-07-23 16:51:39 -07:00
Michael Vines f7d294de90 Don't rsync leader.json on every iteration 2018-07-22 17:25:00 -07:00
Michael Vines 3ffdca193d Rename client-demo to bench-tps catchup 2018-07-21 15:46:03 -07:00
Greg Fitzgerald 637f890b91 Rename client-demo to bench-tps 2018-07-21 11:36:20 -04:00
Michael Vines b92ee51c2d Add --loop flag to easily send transactions continuously 2018-07-20 17:07:36 -07:00
Michael Vines 9d25d7611a Protect against unsupported configurations to prevent non-obvious errors later 2018-07-20 09:47:01 -07:00
Michael Vines 17d927ac74 Count testnet nodes as a part of sanity 2018-07-19 12:05:21 -07:00
Michael Vines a67f58e9a5 Add -c option to easily interrogate the number of nodes 2018-07-19 09:41:09 -07:00
pgarg66 cc229b535d
Remote multinode script cleanup (#683)
- Create a known_hosts file if it doesn't exist
  Otherwise ssh-keygen exits
- Move some common rsync code to common_start_setup
- Build the project before deploying it
2018-07-18 16:02:05 -07:00
Michael Vines 4eb676afaa Tunnel SOLANA_DEFAULT_METRICS_RATE into Snap nodes 2018-07-18 08:23:59 -07:00
Michael Vines 90b3b90391 -p 2018-07-17 19:42:00 -07:00
Michael Vines fd4f294fd3 Rotate logs at 16MB 2018-07-17 19:42:00 -07:00
Michael Vines 145274c001 Ensure log directories are go+r 2018-07-17 18:16:40 -07:00
Michael Vines df5d6693f6 Don't cache leader.json to make it easier to switch between nets 2018-07-17 18:16:40 -07:00
Michael Vines 5b0418793e Keep Snap fullnode/drone logs out of syslog, we're too spammy 2018-07-17 15:08:35 -07:00
pgarg66 4423ee6902
Renamed start_nodes.sh to remote_nodes.sh (#669) 2018-07-17 15:01:53 -07:00
pgarg66 f0c39cc84d
Remote multinode scripts cleanup (#666)
- Also added support for stop nodes
2018-07-17 13:48:25 -07:00
Michael Vines f6eb85e7a3 Permit Snap RUST_LOG to be overridden 2018-07-16 17:44:54 -07:00
pgarg66 af40ab0c04
Split start_nodes script ssh commands to individual scripts (#642) 2018-07-16 16:21:32 -07:00
Michael Vines d6a8e437bb Temporarily disable erasure 2018-07-16 08:15:47 -07:00
Pankaj Garg 8c08e614b7 Start validator nodes in parallel
- This speeds up overall network startup time
2018-07-15 19:11:52 -06:00
Michael Vines e76bf1438b A validator and leader running from the same workspace no longer share an identity 2018-07-15 13:34:48 -07:00
Michael Vines 79b3564a26 Log metrics params to stderr
Keep stdout clean for the actual program.  This is a specific concern for the
wallet command, where there exists tests that capture stdout from the wallet to
confirm transactions.
2018-07-14 21:24:22 -07:00
Michael Vines 1e8c36c555 Be less noisy 2018-07-14 20:42:00 -07:00
Michael Vines 0025b42c26 Locate perf libs 2018-07-14 10:24:20 -07:00
Michael Vines 3f7f492cc0 Fix snap client-demo fixes 2018-07-14 00:18:54 -07:00
Michael Vines 490d7875dd Snap client-demo fixes 2018-07-13 23:51:33 -07:00
Michael Vines d349d6aa98 USE_SNAP=1 is now supported 2018-07-13 22:21:41 -07:00
Michael Vines 1b9d50172b Correct log message 2018-07-13 18:08:28 -07:00
Rob Walker 58c0508f94 add drone information to multinode demo instructions 2018-07-13 17:16:55 -07:00
Michael Vines dcf82c024f Surface hidden call to solana-keygen 2018-07-13 16:16:46 -07:00
Michael Vines 05cea4c1da dedup 2018-07-13 11:48:17 -07:00
Michael Vines 260f5edfd6 Use correct leader.json 2018-07-13 11:48:17 -07:00
Michael Vines 8e7a2a9587 Validators now request an airdrop of 1 token before starting up 2018-07-13 10:02:19 -07:00
Rob Walker 11b9a0323d fixups 2018-07-12 22:51:55 -07:00
Rob Walker aaf6ce5aea fixups 2018-07-12 22:51:55 -07:00
Rob Walker 34ea483736 step two: supply a ledger file argument to fullnode in the demo
(also whack unused "myip.sh", even though it was pretty)
2018-07-12 22:51:55 -07:00
Greg Fitzgerald 4cca3ff454 Fix keypair option in scripts
Thanks @CriesofCarrots!
2018-07-12 21:50:28 -06:00
Greg Fitzgerald 428f220b88 Battle shellcheck 2018-07-12 21:50:28 -06:00
Greg Fitzgerald 10add6a8ac Cleanup setup.sh 2018-07-12 21:50:28 -06:00
Greg Fitzgerald 545f4f1c87 Pass the owner's keypair to fullnode-config 2018-07-12 21:50:28 -06:00
Greg Fitzgerald 97372b8e63 Add --outfile option to solana-keygen 2018-07-12 21:50:28 -06:00
Greg Fitzgerald b5006b8f2b Migrate to solana-keygen
Most of #593
2018-07-12 21:50:28 -06:00
Pankaj Garg 5bc133985b Start drone on remote leader node
- Also, enables CUDA for leader node
2018-07-11 20:08:18 -06:00
Pankaj Garg 45ff142871 Optimized start_nodes script to speed up GCE nodes start time
- Reduced dependency on local network
- Validators get binaries (solana bins and scripts) from leader node
2018-07-11 11:42:25 -06:00
Pankaj Garg d7d985365b Add script to create/delete multiple GCE instances
- This script outputs the IP address array that can be used
  with start_nodes script to launch multinode demo
- Changes to start_nodes to compress files for rsync
2018-07-10 18:16:05 -06:00
Pankaj Garg 3b1aa846b5 Fixed issues with configuring new GCE instances
- New nodes cloned from a working node can be used with the script
- Script takes care of installing SSH keys, and package dependencies correctly
2018-07-10 10:31:03 -06:00
Michael Vines 461dea69d9 Add SOLANA_METRICS_CONFIG environment variable 2018-07-07 19:40:09 -07:00
Tyera Eulberg 37dd511356 Pass client.json location as argument 2018-07-05 15:15:23 -06:00
Tyera Eulberg 4701540cc9 Migrate solana-client-demo to use drone 2018-07-05 15:15:23 -06:00
Tyera Eulberg 8ec2fe15f3 Port solana-drone to clap crate for CLI arguments 2018-07-04 16:39:26 -06:00
Michael Vines 687af3e3a4 Document source of magic net.core.rmem_max value 2018-07-04 14:24:01 -07:00
Greg Fitzgerald 490205ab84 Fix sanity check
...that my last PR broke
2018-07-02 19:21:03 -07:00
Michael Vines 2c0e704c82 Confirm the payment 2018-07-02 17:59:50 -07:00
Michael Vines 253048f72d Only tune networking for leader/validator 2018-07-02 17:59:50 -07:00
Michael Vines e09b8430ce Add |wallet reset| command 2018-07-02 17:59:50 -07:00
Michael Vines 9ae283dc3a Expose wallet.sh as a Snap program temporarily 2018-07-02 17:59:50 -07:00
Michael Vines f95a79d145 Default to using testnet.s.c when running as a Snap 2018-07-02 17:59:50 -07:00
Michael Vines b4dc180592 More quotes to pacify shellcheck 2018-07-02 16:41:22 -07:00
Michael Vines 263577773f Set client config directory correctly in a Snap 2018-07-02 16:41:22 -07:00
Michael Vines 7d708be121 Drone now grabs mint.json locally 2018-07-02 16:41:22 -07:00
Michael Vines feb1669d39 Correct locate rsync when running as a Snap 2018-07-02 15:57:30 -07:00
Michael Vines b7653865b1 Support testnet.solana.com as first argument 2018-07-02 15:57:30 -07:00