Commit Graph

1839 Commits

Author SHA1 Message Date
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
Pankaj Garg
982afa87a6 Retransmit blobs from leader from window (#975)
- Some nodes don't have leader information while leader is broadcasting
  blobs to those nodes. Such blobs are not retransmitted. This change
  rertansmits the blobs once the leader's identity is know.
2018-08-14 21:51:37 -07:00
Rob Walker
dccae18b53 cfg=erasure fixes, use return value of align!() 2018-08-14 12:14:59 -07:00
Rob Walker
53e86f2fa2 use align! 2018-08-14 12:14:59 -07:00
Rob Walker
708add0e64 fixups 2018-08-14 10:16:34 -07:00
Rob Walker
d8991ae2ca fix UPnP backout, fixes #969 2018-08-14 10:16:34 -07:00
Rob Walker
5f6cbe0cf8 fixups 2018-08-13 21:07:26 -07:00
Rob Walker
f167b0c2c5 fixups 2018-08-13 21:07:26 -07:00
Rob Walker
f784500fbb fixups
fixes #907
2018-08-13 21:07:26 -07:00
Rob Walker
83df47323a initialize recycled data 2018-08-13 21:07:26 -07:00
Greg Fitzgerald
c75d4abb0b Tuck away PoH duration 2018-08-13 20:17:16 -06:00
Greg Fitzgerald
5216a723b1 Pacify clippy 2018-08-13 20:17:16 -06:00
Greg Fitzgerald
b801ca477d Declare fullnode a word 2018-08-13 20:17:16 -06:00
Greg Fitzgerald
c830c604f4 Make BroadcastStage an actual stage
TODO: Why isn't BroadcastStage/RetransmitStage managed by the NCP?
2018-08-13 20:17:16 -06:00
Greg Fitzgerald
0e66606c7f Rename broadcaster to broadcast_stage
And move retransmitter code into retransmit_stage.

TODO: Add a BroadcastStage service
2018-08-13 20:17:16 -06:00
Greg Fitzgerald
8707abe091 Fix erasure build 2018-08-13 20:17:16 -06:00
Greg Fitzgerald
dc2a840985 Move FullNode::new_window into window module 2018-08-13 20:17:16 -06:00
Greg Fitzgerald
2727067b94 Move winow into its own module 2018-08-13 20:17:16 -06:00
Greg Fitzgerald
6a8a494f5d Rename WindowStage to RetransmitStage
The window is used for both broadcasting from leader to validator
and retransmitting between validators.
2018-08-13 20:17:16 -06:00
Greg Fitzgerald
a09d2e252a Move window dependencies out of streamer
No tests!?
2018-08-13 20:17:16 -06:00
Greg Fitzgerald
3e9c463ff1 Offer only 1 way to create a fullnode with an empty window 2018-08-13 20:17:16 -06:00
Tyera Eulberg
46d50f5bde Remove p2p crate (and uPnP support) 2018-08-13 18:22:58 -07:00
Rob Walker
e8da903c6c move tmp_ledger back to target dir 2018-08-13 16:52:53 -07:00
Rob Walker
c86e9e8568 pad max_data_size to jerasure's alignment requirements 2018-08-13 16:10:51 -07:00
Rob Walker
835f29a178 off by 2 2018-08-13 15:12:12 -07:00
Pankaj Garg
bf15cad36b Add get_finality request and use it from multinode test (#941) 2018-08-13 08:55:13 -07:00
anatoly yakovenko
288ed7a8ea Vote should be valid (#945)
* test that fails

* fix for test

* rename
2018-08-12 18:19:54 -07:00
anatoly yakovenko
f07c038266 Fix bank coalescing (#949)
* fix bank coalescing

* comments

* fix bench

* fix bench

* backout banking stage coalescing

* 120 nodes

* 100
2018-08-12 10:04:21 -07:00
Rob Walker
5dbcb43abd more enhancements 2018-08-10 19:53:58 -07:00
Rob Walker
dd1eefaf62 change verify-internal to precheck
update to new ledger API
2018-08-10 19:53:58 -07:00
Rob Walker
35de159d00 better error messages 2018-08-10 19:53:58 -07:00
Rob Walker
546a1e90d5 clippy fixups 2018-08-10 19:53:58 -07:00
Rob Walker
b033e1d904 enhance ledger-tool
* add json, which does the thing with json, move print to Rust's {:?}
  * add --head NUM, to limit how much work gets done for print, json, verify
  * add verify-internal, which very carefully checks ledger format without
      trying first to "recover" it
  * exit with errors on mis-usage
2018-08-10 19:53:58 -07:00
Rob Walker
96d6985895 rework read_ledger, LedgerWriter, and LedgerWindow for recover()
fixes #910
2018-08-10 18:07:23 -07:00
Stephen Akridge
a206f2570d Add hostname to metrics on panic 2018-08-10 17:08:40 -07:00
anatoly yakovenko
2318ffc704 Use a different counter for validator account not found errors. (#931)
* Use a different counter for validator account not found errors.  This is a usefull signal of something going wrong with the ledger
2018-08-10 15:18:44 -07:00
Rob Walker
bbf9ea89c5 add some flushing to ledger 2018-08-10 11:41:31 -07:00
Greg Fitzgerald
bca2294655 cargo fmt 2018-08-09 13:41:37 -06:00
Greg Fitzgerald
4a980568ac Rename sig variables to signature
We'll avoid introducing three-letter terms to free up the namespace
for three-letter acronyms.

But recognize the term "sigverify", a verb, to verify a digital
signature.
2018-08-09 13:41:37 -06:00
Greg Fitzgerald
9d436fc5f8 Rename pk variables to pubkey 2018-08-09 13:41:37 -06:00
Greg Fitzgerald
ad331e6d56 Rename PublicKey type to Pubkey
Recognize pubkey as a noun meaning the public key of a keypair.
2018-08-09 13:41:37 -06:00
Greg Fitzgerald
d7e4e57548 Rename public_key variables to pubkey 2018-08-09 13:41:37 -06:00
Greg Fitzgerald
b2067d2721 Rename kp variables to keypair 2018-08-09 13:41:37 -06:00
Greg Fitzgerald
c2bbe4344e Rename KeyPair to Keypair 2018-08-09 13:41:37 -06:00
Greg Fitzgerald
ca7d4c42dd Rename cur_hashes to num_hashes 2018-08-09 10:15:10 -06:00
Rob Walker
ce8a4fa831 allow received to outpace window, we're already constraining repair
correctly identify sender in ledger_window repair responses, enabling re-transmission
2018-08-08 15:10:44 -07:00
Stephen Akridge
8331aab26a Enable Crdt debug messages to debug validators 2018-08-08 14:22:20 -07:00
Rob Walker
9783d47fd1 write a "unit" test for WindowLedger (it was working ;)
clear flags on fresh blobs, lest they sometimes impersonate coding blobs...

fix bug: advance *received whether the blob_index is in the window or not,
  failure to do so results in a stalled repair request pipeline
2018-08-08 04:28:09 -07:00
Stephen Akridge
38be61bd22 Check for log level before doing perf counter work
Perf counters, especially when running the dynamic test can cause
functions like crdt::apply_updates to be really slow (>500ms).
2018-08-08 00:16:53 -07:00
Rob Walker
c64e2acf8b set destination address when for ledger window repair responses 2018-08-07 23:31:01 -07:00