Commit Graph

2222 Commits

Author SHA1 Message Date
Rob Walker eb4e5a7bd0 fixups 2018-08-31 23:21:07 +09:00
Rob Walker ba27596076 fixups 2018-08-31 23:21:07 +09:00
Rob Walker 63e44dcc35 continue rendezvous refactor for gossip and repair
* remove trailing whitespace in ci/audit.sh

  * code review fixups
     * rename GOSSIP_PORT_RANGE => SOLANA_PORT_RANGE
     * remove out-of-date TODO in localnet-sanity.sh

  * remove features=test and code that was using it (localhost prohibitions in
      crdt) added TODO in crdt.rs, maybe we should boot localhost in production
      networks?

  * boot tvu_window from NodeInfo: instead, send repair requests from the repair
      socket (to gossip on peer) and answer repair requests via the sockaddr
      from the repair request

  * remove various unused pub functions

  * banish SocketAddr parse().unwrap() to a macro that can also accept simpler stuff
2018-08-31 23:21:07 +09:00
Rob Walker c0ba676658 fixup 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
Rob Walker cb52a335bd re-enable localnet-sanity 2018-08-31 23:21:07 +09:00
Tyera Eulberg e308a4279e Update RPC requestAirdrop endpoint to return airdrop tx signature 2018-08-28 18:27:41 -06:00
Tyera Eulberg 513a934ff6 Update request_airdrop utility function to pass along airdrop tx signature 2018-08-28 18:27:41 -06:00
Tyera Eulberg 77d820c842 Update drone module to return airdrop tx signature 2018-08-28 18:27:41 -06:00
Tyera Eulberg 30cbe7c6a9 Update jsonrpc crate version 2018-08-28 18:27:24 -06:00
Michael Vines 18ef643dc7 Keep locals local 2018-08-28 08:11:44 -07:00
Michael Vines 73a0bf8d30 Avoid unbounded /var/tmp growth 2018-08-28 08:11:44 -07:00
Michael Vines 9d53208d68 Use gcloud_DeleteInstances 2018-08-28 08:11:44 -07:00
Michael Vines d26f135159
Find metrics-write-datapoint.sh again 2018-08-27 22:41:58 -07: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
Rob Walker 51d911e3f4
Update testnet-sanity.sh 2018-08-27 15:44:10 -07:00
Michael Vines bd5c6158ae Move some common scripts from multinode-demo/ to scripts/ 2018-08-27 13:52:38 -07:00
Michael Vines cd0db7842c Remove unused _config.yml 2018-08-27 13:52:38 -07:00
Michael Vines 31d1087103 Documentation 2018-08-27 13:52:38 -07:00
Rob Walker 0efd64df6f no need for sudo, move ledger copy out of SNAP_DATA 2018-08-28 05:42:05 +09:00
Rob Walker 28bdf346f6 clean up after ledger sanity 2018-08-28 05:42:05 +09:00
anatoly yakovenko 48762834d9
Randomize repair requests (#1059)
* randomize packet repair requests

* exponential random repair requests

* use gen_range to get a uniform distribution
2018-08-27 07:05:48 -07:00
Anatoly Yakovenko 8d0d429acd update 2018-08-26 23:34:25 -07:00
Anatoly Yakovenko e5408368f7 fmt 2018-08-26 22:35:26 -07:00
Anatoly Yakovenko 61492fd27e exit if no leader 2018-08-26 22:35:26 -07:00
Anatoly Yakovenko bbce08a67b bench needs to discover leader as well 2018-08-26 22:35:26 -07:00
Anatoly Yakovenko a002148098 retry transfer and poll 2018-08-26 16:10:46 -07:00
Greg Fitzgerald 90ae662e4d Fix packet header offset
And update transaction offsets to use the same approach as packet.rs.
Maybe this should be serialized_size(), but thanks to this
GenericArray update, those values are the same.
2018-08-26 14:27:19 -06:00
Greg Fitzgerald 60d8f5489f Update transaction layout offsets
24 less bytes in minimal transactions. 10% TPS boost?
2018-08-26 14:27:19 -06:00
dependabot[bot] 59dd8b650d Update generic-array requirement from 0.11.1 to 0.12.0
Updates the requirements on [generic-array](https://github.com/fizyk20/generic-array) to permit the latest version.
- [Release notes](https://github.com/fizyk20/generic-array/releases)
- [Changelog](https://github.com/fizyk20/generic-array/blob/master/CHANGELOG.md)
- [Commits](https://github.com/fizyk20/generic-array/commits)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-08-26 14:27:19 -06: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
anatoly yakovenko 5b0bb7e607
Skip invalid nodes for finality (#1068)
* skip invalid nodes for finality

* check valid last_ids only

* fixup!

* fixup!
2018-08-25 23:12:41 -07:00
anatoly yakovenko f7c0d30167
Disallow localhost in deployment (#1064)
* disallow localhost in deployment

* tests

* fmt

* integration tests do not have a flag to check

* fmt
2018-08-25 21:09:18 -07:00
Anatoly Yakovenko 8e98c7c9d6 fix purge test 2018-08-25 19:56:09 -07:00
Pankaj Garg 50661e7b8d Added poll_balance_with_timeout method (#1062)
* Added poll_balance_with_timeout method

- updated bench-tps, fullnode and wallet to use this method instead
  of repeatedly calling poll_get_balance()

* Address review comments

- Revert some changes to use wrapper poll_get_balance()

* Reverting bench-tps to use poll_get_balance

- The original code is checking if the balance has been updated,
  instead of just retrieving the balance. The logic is different
  than poll_balance_with_timeout()

* Reverting wallet to use poll_get_balance

- The break condition in the loop is different than poll_balance_with_timeout().
  It's checking if the balance has been updated.
2018-08-25 18:24:25 -07:00
Pankaj Garg ad159e0906 Fix crash in fullnode when poll_get_balance() returns error (#1058) 2018-08-25 15:25:13 -07:00
Pankaj Garg d3fac8a06f
Dynamically bind to available UDP ports in Fullnode (#920)
* Dynamically bind to available UDP ports in Fullnode

* Added tests for dynamic port binding

- Also removed hard coding of port range from CRDT
2018-08-25 10:24:16 -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
sakridge de379ed915
Fix sig verify counters to be unique and tweak perf counters (#1056)
print events and add current events to old value to report
2018-08-24 16:05:32 -07:00
Michael Vines d4554c6b78 RFC Branches, Channels, and Tags 2018-08-23 21:28:05 -07:00
sakridge 6fc21a4223
Don't hang in transaction_count (#1052)
Situation is there can be that there can be bad entries in
the bench-tps CRDT table until they get purged later. Threads however
are created for those bad entries and then will hang on trying
to get the transaction_count from those bad addresses and never end.
2018-08-23 20:57:13 -07:00
sakridge 71319978df
Up drone request amount (#1051)
Multiple clients will request 500k each so up this to support them.
2018-08-23 15:30:35 -07:00
sakridge 6147e54686
Cap repair requests timeout (#958) 2018-08-23 15:30:21 -07:00
Greg Fitzgerald 0c8eec2563 Cleanup Fullnode construction
leader_id was already set by Fullnode constructor. And cleanup the
rest of that code while in the neighborhood.

Thanks @CriesofCarrots!
2018-08-23 13:42:54 -07:00
Greg Fitzgerald 4ab58f069a Add back JsonRpcService changes 2018-08-23 13:42:54 -07:00
Greg Fitzgerald 85f96d926a Pacify clippy 2018-08-23 13:42:54 -07:00
Greg Fitzgerald 816de4f8ec Hoist shared code between leaders and validators 2018-08-23 13:42:54 -07:00
Greg Fitzgerald 42229a1105 Hoist thread_hdls 2018-08-23 13:42:54 -07:00
Greg Fitzgerald d8820053af Inline create_leader_threads and create_validator_threads 2018-08-23 13:42:54 -07:00