Greg Fitzgerald
73d3c17507
Migrate from Event to Transaction Timestramp/Signature
2018-05-24 10:10:41 -06:00
Greg Fitzgerald
7f647a93da
Add last_id to Event timestamp/signature constructors
2018-05-24 10:10:41 -06:00
Greg Fitzgerald
ecb3dbbb60
Add witness tx constructors
2018-05-24 10:10:41 -06:00
Greg Fitzgerald
cc907ba69d
Add Instruction type
2018-05-24 10:10:41 -06:00
Greg Fitzgerald
5a45eef1dc
Exit cleanup ( #252 )
...
* Ignore record_stage exit reason. We only really care about panic exit versus graceful exit.
* Ignore coverage build in CI
2018-05-24 10:03:17 -06:00
Greg Fitzgerald
0d980e89bc
cargo fmt
...
@aeyakovenko: https://github.com/rust-lang/rust.vim#formatting-with-rustfmt
2018-05-23 20:05:08 -06:00
Anatoly Yakovenko
7faa2b8698
fixed demo
2018-05-23 17:24:58 -06:00
Anatoly Yakovenko
65352ce8e7
fix
2018-05-23 17:24:58 -06:00
Anatoly Yakovenko
f1988ee1e3
help
2018-05-23 17:24:58 -06:00
Anatoly Yakovenko
82ac8eb731
use client ports
2018-05-23 17:24:58 -06:00
Anatoly Yakovenko
ae47e34fa5
fix
2018-05-23 17:24:58 -06:00
Anatoly Yakovenko
28e781efc3
break early
2018-05-23 17:24:58 -06:00
Anatoly Yakovenko
5c3ceb8355
aws demo2
2018-05-23 17:24:58 -06:00
Greg Fitzgerald
c9113b381d
Pull channel functionality into record_stage
...
This makes record_stage consistent with the other stages. The stage
manages the channels. Anything else is in a standalone object. In
the case of the record_stage, that leaves almost nothing!
2018-05-23 17:15:28 -06:00
Stephen Akridge
75e69eecfa
Fix nightly bench
2018-05-23 17:15:03 -06:00
Anatoly Yakovenko
f3c4acc723
cleanup multi node test
2018-05-23 16:59:17 -06:00
Stephen Akridge
2a0095e322
Remove unused variable in multinode-demo fix compiler warning
2018-05-23 16:55:45 -06:00
anatoly yakovenko
9ad5f3c65b
fix option ( #246 )
2018-05-23 14:48:00 -07:00
Greg Fitzgerald
d4200a7b1e
Fix build
...
GenKeys() fix and new multinode module crossed in flight.
2018-05-23 14:10:26 -06:00
Greg Fitzgerald
84477835dc
Fix nondeterministic key generation ( #243 )
...
Our one and only unsafe operation was ...unsafe.
2018-05-23 14:04:07 -06:00
anatoly yakovenko
504b318ef1
Hooks for binaries to run as leader or replicator and attach to network ( #221 )
2018-05-23 14:03:19 -06:00
Greg Fitzgerald
f154c8c490
Add data to errors to ease debugging
2018-05-23 12:50:23 -06:00
Greg Fitzgerald
d4959bc157
Test cleanup
...
GenKey unit tests were in the benchmark suite.
2018-05-23 12:50:23 -06:00
Anatoly Yakovenko
87e025fe22
fmt
2018-05-23 12:07:44 -06:00
Anatoly Yakovenko
8049323ca8
@garious review
2018-05-23 12:07:44 -06:00
Anatoly Yakovenko
b38c7ea2ff
fmt
2018-05-23 12:07:44 -06:00
Anatoly Yakovenko
239b925fb3
woop
2018-05-23 12:07:44 -06:00
Anatoly Yakovenko
60da7f7aaf
wip
2018-05-23 12:07:44 -06:00
Anatoly Yakovenko
8646ff4927
refactor wip
2018-05-23 12:07:44 -06:00
Anatoly Yakovenko
59be94a81f
cleanup
2018-05-23 12:07:44 -06:00
Anatoly Yakovenko
437c485e5c
cleanup
2018-05-23 12:07:44 -06:00
Greg Fitzgerald
086365b4c4
Merge pull request #237 from garious/hoist-lastid
...
Hoist last_id
2018-05-22 17:48:25 -06:00
Stephen Akridge
7b5b7feb63
Fix test_bad_sig on mac
2018-05-22 16:40:01 -07:00
Greg Fitzgerald
2e059f8504
Rename TransactionData to Contract
...
No longer a single place to get all the data that was signed.
2018-05-22 17:00:40 -06:00
Greg Fitzgerald
207b6686d1
Hoist last_id
...
First step in unifying Witness processing and Transaction processing
2018-05-22 17:00:40 -06:00
Greg Fitzgerald
abfd7d6951
Merge pull request #234 from sakridge/fix_events_addr
...
Send events to the right address
2018-05-22 16:59:28 -06:00
Anatoly Yakovenko
021953d59a
cleanup
2018-05-22 15:30:46 -07:00
Anatoly Yakovenko
bbe89df2ff
fmt
2018-05-22 15:18:07 -07:00
Anatoly Yakovenko
a638ec5911
builds
2018-05-22 15:17:59 -07:00
Anatoly Yakovenko
26272a3600
split out stages
2018-05-22 14:26:28 -07:00
Stephen Akridge
8454eb79d0
Send events to the right address and set recv socket timeout
2018-05-22 13:52:50 -07:00
Greg Fitzgerald
2786357082
Merge pull request #230 from garious/generalize-topackets
...
Benchmark the banking stage
2018-05-18 19:47:26 -07:00
Anatoly Yakovenko
63a0ba6ec8
fixed
2018-05-16 23:28:03 -07:00
Anatoly Yakovenko
9a4ce6d70e
fmt
2018-05-16 23:27:26 -07:00
Anatoly Yakovenko
35ee2d0ce1
cleanup
2018-05-16 23:27:26 -07:00
Anatoly Yakovenko
b04716d40d
fmt
2018-05-16 23:27:26 -07:00
Anatoly Yakovenko
051fa6f1f1
cleanup
2018-05-16 23:27:26 -07:00
Anatoly Yakovenko
8dc1b07e75
docs
2018-05-16 23:27:26 -07:00
Anatoly Yakovenko
bee1e7ebaf
compute convergence maximum
2018-05-16 23:27:26 -07:00
Anatoly Yakovenko
f3f0b9f0c5
update
2018-05-16 23:27:26 -07:00
Anatoly Yakovenko
a5cf745e1c
check convergence
2018-05-16 23:27:26 -07:00
Greg Fitzgerald
273b800047
Benchmark the banking stage
2018-05-16 23:18:58 -07:00
Greg Fitzgerald
6c1f1c2a7a
Promote create_entry() to Entry::new()
2018-05-16 23:18:58 -07:00
Greg Fitzgerald
9c62f8d81f
Add Event::Transaction constructor
2018-05-16 23:18:58 -07:00
Greg Fitzgerald
dc87effc0a
Merge pull request #229 from garious/fix-bench
...
Fix the benchmark build
2018-05-16 16:37:56 -06:00
Greg Fitzgerald
0b91dd6163
Fix the benchmark build
2018-05-16 16:35:50 -06:00
Greg Fitzgerald
4955c6f13a
request::to_request_packets -> packet::to_packets
2018-05-16 16:11:53 -06:00
Greg Fitzgerald
2e7beca9ba
Generalize to_request_packets
2018-05-16 16:01:19 -06:00
Greg Fitzgerald
59c1b9983d
Merge pull request #220 from garious/add-tpu
...
Add tpu
2018-05-16 12:21:07 -06:00
Greg Fitzgerald
f7083e0923
Remove transaction processing from RPU and request processing from TVU
2018-05-15 12:15:29 -06:00
Greg Fitzgerald
6d4defdf96
Offload event processing to the TPU
2018-05-15 11:33:43 -06:00
Greg Fitzgerald
b826f837f8
First attempt to pull TPU into the server
2018-05-15 11:25:55 -06:00
Greg Fitzgerald
5855e18a4e
Let server own the bank, not TPU/RPU
2018-05-15 11:21:48 -06:00
Greg Fitzgerald
3f38c0a245
Feed events socket into the server
2018-05-15 11:19:58 -06:00
Greg Fitzgerald
cfe8b3fc55
Wrap the RPU with new object Server
2018-05-15 11:00:01 -06:00
Greg Fitzgerald
e9ee020b5f
Rename constructors
2018-05-15 10:45:36 -06:00
Greg Fitzgerald
1bcf3891b4
New TPU/RPU constructors
2018-05-15 10:44:47 -06:00
Greg Fitzgerald
5456de63e9
Less state
2018-05-15 10:38:17 -06:00
Greg Fitzgerald
9026c70952
Inline Rpu::new
2018-05-15 10:33:16 -06:00
Greg Fitzgerald
99dc4ea4a9
Spin up threads from Rpu/Tpu constructors
2018-05-15 10:30:52 -06:00
Greg Fitzgerald
0aaa500f7c
Rpu/Tpu serve() functions now only spin up threads
2018-05-15 10:10:45 -06:00
Greg Fitzgerald
5f5be83a17
Hoist socket creation/configuration
...
TODO: Add a library for socket configuration.
2018-05-15 10:05:23 -06:00
Greg Fitzgerald
7e44005a0f
Don't do error-prone things in functions that spawn threads
2018-05-15 09:53:51 -06:00
Greg Fitzgerald
ee3fb985ea
Hoist set_timeout
2018-05-15 09:42:28 -06:00
Greg Fitzgerald
2a268aa528
Reorder to reflect dependencies
2018-05-15 09:17:48 -06:00
Robert Kelly
a1889c32d4
fixed CrdtToSmall typo
2018-05-15 10:29:56 -04:00
Robert Kelly
d42d024d9c
minor changes
2018-05-15 10:23:11 -04:00
Anatoly Yakovenko
4131071b9a
fix ignore tests
2018-05-14 22:06:42 -07:00
Greg Fitzgerald
ef6bd7e3b8
Add TPU
2018-05-14 17:36:19 -06:00
Greg Fitzgerald
374bff6550
Extract event processing from request_stage
2018-05-14 17:31:27 -06:00
Greg Fitzgerald
0a46bbe4f9
Merge pull request #219 from garious/add-write-stage
...
Move write_service and drain_service into new write_stage module
2018-05-14 17:18:04 -06:00
Anatoly Yakovenko
421273f862
disable tests that fail with kcov
2018-05-14 16:07:21 -07:00
Anatoly Yakovenko
2c7f229883
wait longer
2018-05-14 15:48:43 -07:00
Anatoly Yakovenko
904eabad2f
waint longer
2018-05-14 15:48:24 -07:00
Anatoly Yakovenko
8b233f6be4
update
2018-05-14 15:43:26 -07:00
Anatoly Yakovenko
08fc821ca9
rebase
2018-05-14 15:35:54 -07:00
Greg Fitzgerald
81706f2d75
Move write_service and drain_service into new write_stage module
2018-05-14 16:31:31 -06:00
Anatoly Yakovenko
7b50c3910f
fmt
2018-05-14 15:21:41 -07:00
Anatoly Yakovenko
2d635386af
rebased
2018-05-14 15:20:41 -07:00
Greg Fitzgerald
7736b9cac6
Boot Alice and Bob from the unit tests
2018-05-14 15:39:34 -06:00
Greg Fitzgerald
d2dd005a59
accountant -> bank
2018-05-14 15:33:11 -06:00
Greg Fitzgerald
6e8f99d9b2
Purge EventProcessor
2018-05-14 14:45:29 -06:00
Greg Fitzgerald
685de30047
Purge EventProcessor from RPU
2018-05-14 14:35:25 -06:00
Greg Fitzgerald
17cc9ab07f
Rename Historian to RecordStage
...
Historian was a legacy name. The new name reflects the new pipelined
architecture.
2018-05-14 14:19:19 -06:00
Greg Fitzgerald
3f10bf44db
Config recorder with any kind of Duration, not just milliseconds
2018-05-14 14:12:36 -06:00
Greg Fitzgerald
27984e469a
Multiply duration, not milliseconds
2018-05-14 13:58:42 -06:00
Greg Fitzgerald
a2c05b112e
Add historian to pipeline
...
No longer intercept entries to register_entry_id(). Intead,
register the ID in the Write stage.
EventProcessor is now just being used as a place to store data.
Fixes #216
2018-05-14 12:43:40 -06:00
Greg Fitzgerald
a578c1a5e3
Merge pull request #215 from garious/suppress_panic_message_in_tests
...
Don't output panic noise from panic test
2018-05-14 11:46:22 -06:00
Robert Kelly
4a94da8a94
Don't output panic noise from panic test
...
P.S. rustfmt 0.4.1-stable (7a807262 2018-04-20)
2018-05-14 10:38:59 -06:00
Greg Fitzgerald
cc447c0fda
Drop support for EntryInfo subscriptions
2018-05-14 09:53:57 -06:00
Greg Fitzgerald
0ae69bdcd9
Get transactionn_count via GetTransactionCount instead of EntryInfo
2018-05-14 09:45:09 -06:00
Greg Fitzgerald
5ba20a94e8
Panic on error to get same signature as transaction_count()
2018-05-14 09:43:40 -06:00
Greg Fitzgerald
f168c377fd
Get last_id via GetLastId instead of EntryInfo
2018-05-14 09:40:29 -06:00
Greg Fitzgerald
dfb754dd13
Revive GetLastId messages
2018-05-14 09:35:10 -06:00
Greg Fitzgerald
455050e19c
Expose the server-side transaction count
2018-05-14 07:21:12 -06:00
Greg Fitzgerald
317031f455
Add transaction count to accountant
2018-05-14 06:49:51 -06:00
Greg Fitzgerald
b132ce1944
Merge pull request #210 from aeyakovenko/buildite_coverage
...
ignore unstable tests
2018-05-13 22:00:32 -06:00
Anatoly Yakovenko
8b226652aa
unstable
2018-05-13 20:54:41 -07:00
Anatoly Yakovenko
2c7fe3ed8d
unstable
2018-05-13 20:51:07 -07:00
Anatoly Yakovenko
3d5f2b3c28
unstable
2018-05-13 20:45:55 -07:00
Anatoly Yakovenko
7a79afe4a6
unstable
2018-05-13 20:41:54 -07:00
Anatoly Yakovenko
1f7387a39b
increase sleep
2018-05-13 20:33:41 -07:00
Robert Kelly
791ae852a2
removed old keygen
2018-05-13 18:14:10 -04:00
Greg Fitzgerald
d239d4a495
Add missing files
2018-05-12 17:57:28 -06:00
Greg Fitzgerald
aec05ef602
Move RequestProcessor into its own module
2018-05-12 17:50:55 -06:00
Greg Fitzgerald
e5d46d998b
Move thin client messages into their own module
2018-05-12 17:41:27 -06:00
Greg Fitzgerald
b2e3299539
Only pass accountant write_service
2018-05-12 17:30:15 -06:00
Greg Fitzgerald
c308a6459f
cargo fmt
2018-05-12 17:27:15 -06:00
Greg Fitzgerald
4eb1bc08a7
Merge pull request #205 from rlkelly/203__test_key_generation
...
203 test key generation
2018-05-12 17:26:46 -06:00
Robert Kelly
ff5e1c635f
increased iterations
2018-05-12 18:18:18 -04:00
Robert Kelly
6149c2fcb5
added benchmarks for two GenKeys
2018-05-12 18:08:08 -04:00
Greg Fitzgerald
6264508f5e
Consistent naming of senders and receivers
2018-05-12 15:24:20 -06:00
Greg Fitzgerald
a3869dd4c1
Move entry_receiver to RequestStage
...
This can move to AccountingStage once RequestStage stops
calling process_events().
2018-05-12 15:14:37 -06:00
Greg Fitzgerald
a3d2831f8c
Free up the name 'accounting_stage'
2018-05-12 14:05:57 -06:00
Robert Kelly
4cd1fa8c38
refactored seed generation
2018-05-12 15:42:27 -04:00
Greg Fitzgerald
1511dc43d7
Move RequestProcessor out of Rpu/Tvu state
2018-05-12 11:39:24 -06:00
Greg Fitzgerald
3d82807965
Delete dead code
2018-05-12 11:24:40 -06:00
Greg Fitzgerald
4180571660
Don't pass events_socket to RPU
2018-05-12 11:11:30 -06:00
Greg Fitzgerald
421d9aa501
Free up the name 'tpu'
2018-05-12 10:53:25 -06:00
Greg Fitzgerald
898f4971a2
Free up name 'thin_client_service'
2018-05-12 10:50:22 -06:00
Greg Fitzgerald
7ab3331f01
Move validation processor to its own module
2018-05-12 00:31:32 -06:00
Greg Fitzgerald
b4ca414492
More object-oriented
2018-05-12 00:19:12 -06:00
Greg Fitzgerald
73abea088a
No need for TPU dependency
2018-05-11 23:51:35 -06:00
Greg Fitzgerald
2376dfc139
Let thin client own the receiver channel
2018-05-11 23:46:04 -06:00
Greg Fitzgerald
d2f95d5319
Move thin client service thread into thin_client_service.rs
2018-05-11 23:37:44 -06:00
Greg Fitzgerald
cd96843699
Free up name ThinClientService
2018-05-11 23:37:14 -06:00
Greg Fitzgerald
ca80bc33c6
Move the writer stage's utilities to its own module
2018-05-11 22:36:16 -06:00
Greg Fitzgerald
19607886f7
Move sig verification stage into its own module
2018-05-11 21:51:37 -06:00
Greg Fitzgerald
3c11a91f77
Cleanup verifier error handling
2018-05-11 21:01:07 -06:00
Greg Fitzgerald
b781fdbd04
Reorganize
2018-05-11 20:50:50 -06:00
Greg Fitzgerald
765d901530
Better names
2018-05-11 20:18:04 -06:00
Greg Fitzgerald
3cedbc493e
Reorder to reflect the pipeline order
2018-05-11 20:11:25 -06:00
Greg Fitzgerald
0488d0a82f
Extract sig verify functions
2018-05-11 19:59:40 -06:00
Greg Fitzgerald
f0be595e4c
Create function for thin client thread
2018-05-11 17:58:27 -06:00
Greg Fitzgerald
55100854d6
Better names
2018-05-11 16:41:35 -06:00
Greg Fitzgerald
600a1f8866
Initialize thin client with events port
2018-05-11 16:35:53 -06:00
Greg Fitzgerald
95bf68f3f5
Correct some strange naming
2018-05-11 16:24:18 -06:00
Greg Fitzgerald
bcdb058492
cargo fmt
2018-05-11 13:06:05 -06:00
Code Cobain
e779496dfb
Update signature.rs
2018-05-11 11:49:22 -07:00
Code Cobain
3d77fa5fbc
Merge branch 'master' into 153-panic-cleanup
2018-05-11 11:40:20 -07:00
Jackson Sandland
250830ade9
cargo fmt run
2018-05-11 11:38:52 -07:00
Code Cobain
458c27c6e9
Merge branch 'master' into 153-panic-cleanup
2018-05-11 11:18:45 -07:00
Robert Kelly
a49e664e63
Merge branch '156__remove_user_keys_in_mintdemo' of github.com:rlkelly/solana into 156__remove_user_keys_in_mintdemo
2018-05-11 14:07:48 -04:00
Robert Kelly
f20380d6b4
changed RwLock to RefCell
2018-05-11 14:07:41 -04:00
Rob Kelly
05a5e551d6
Merge branch 'master' into 156__remove_user_keys_in_mintdemo
2018-05-11 13:00:44 -04:00
Robert Kelly
d278b71cb2
added tests and utility method for key generation
2018-05-11 12:55:05 -04:00
Greg Fitzgerald
a485c141d5
Merge pull request #199 from garious/add-accounting-stage
...
Fix race condition in Accountant::apply_payment()
2018-05-11 10:54:32 -06:00
Tyera Eulberg
7144090528
Fix whitespace
2018-05-11 10:40:31 -06:00
Tyera Eulberg
ee0015ac38
Fix whitespace
2018-05-11 10:34:46 -06:00
Tyera Eulberg
8b7f7f1088
Generalize next tick functions to carry events
2018-05-11 09:45:42 -06:00
Jackson Sandland
c95c6a75f8
tpu.rs - panic cleanup
2018-05-10 20:49:58 -07:00
Jackson Sandland
44bf79e35f
transaction.rs - panic cleanup
2018-05-10 18:24:33 -07:00
Jackson Sandland
bb654f286c
tpu.rs - panic cleanup
2018-05-10 18:21:10 -07:00
Greg Fitzgerald
1acd2aa8cf
Fix race condition in Accountant::apply_payment()
2018-05-10 19:07:15 -06:00
Jackson Sandland
18d3659b91
timing.rs - panic cleanup
2018-05-10 17:47:27 -07:00
Jackson Sandland
63a4bafa72
thin_client - panic cleanup
2018-05-10 17:46:10 -07:00
Jackson Sandland
4eb2e84c9f
streamer.rs - panic cleanup
2018-05-10 17:38:00 -07:00
Jackson Sandland
73c7fb87e8
signature.rs - panic cleanup
2018-05-10 17:15:53 -07:00
Jackson Sandland
c1496722aa
packet.rs - panic cleanup
2018-05-10 17:11:31 -07:00
Jackson Sandland
d9f81b0c8c
mint.rs - panic cleanup
2018-05-10 17:06:43 -07:00
Jackson Sandland
d69beaabe1
historian.rs - panic cleanup
2018-05-10 17:00:37 -07:00
Jackson Sandland
b7a0bd6347
event.rs - panic cleanup
2018-05-10 16:59:13 -07:00
Jackson Sandland
882ea6b672
erasure.rs - panic cleanup
2018-05-10 16:54:21 -07:00
Greg Fitzgerald
af53197c04
cargo +nightly fmt
2018-05-10 16:58:37 -06:00
Greg Fitzgerald
cf186c5762
Better names
2018-05-10 16:58:37 -06:00
Greg Fitzgerald
f384a2ce85
Move streamer-specific utility into streamer module
2018-05-10 16:58:37 -06:00
Greg Fitzgerald
803b76e997
More idiomatic Rust
2018-05-10 16:58:37 -06:00
Greg Fitzgerald
230d7c3dd6
Move all Request processing into thin_client_service
2018-05-10 16:58:37 -06:00
Greg Fitzgerald
4f629dd982
Add events socket instead of modifying the existing socket
2018-05-10 16:54:43 -06:00
Greg Fitzgerald
4fdd891b54
More precise function names
2018-05-10 16:54:43 -06:00
Stephen Akridge
a80991f2b3
Fixes for serializing entries over blobs and reorg into ledger
2018-05-10 15:30:30 -07:00
Greg Fitzgerald
521ae21632
Merge pull request #193 from sakridge/serialize_entries_over_multiple_blobs
...
Serialize entries over multiple blobs
2018-05-10 13:53:48 -06:00
Jackson Sandland
bcd6606a16
ecdsa.rs - panic cleanup
2018-05-09 18:19:23 -07:00
Jackson Sandland
52ebb88205
accountant.rs - simplify error messages
2018-05-09 18:16:37 -07:00
Jackson Sandland
1e91d09be7
crdt.rs - panic cleanup
2018-05-09 18:10:48 -07:00
Jackson Sandland
02c573986b
historian / transaction updates
2018-05-09 17:22:14 -07:00
Jackson Sandland
f2de486658
accountant.rs - panic cleanup
2018-05-09 17:19:12 -07:00
Stephen Akridge
900b4f2644
Serialize entries over multiple blobs
2018-05-09 16:03:47 -07:00
Greg Fitzgerald
801468d70d
Fix nightly
2018-05-09 16:51:34 -06:00
Greg Fitzgerald
7ce11b5d1c
Cleanup: use full words for field names
...
and optionally for variable names
2018-05-09 16:19:42 -06:00
Greg Fitzgerald
f2d4799491
Cleanup: field names should be nouns
2018-05-09 16:14:40 -06:00
Greg Fitzgerald
ebc458cd32
Remove redundant Arcs
2018-05-09 15:45:10 -06:00
Greg Fitzgerald
43cd631579
Add thin_client_service
2018-05-09 14:56:34 -06:00
Greg Fitzgerald
bc824c1a6c
Reference count the accountant
...
So that the thin client can reference the AccountingStage's accountant
from separate threads.
2018-05-09 14:33:20 -06:00
Greg Fitzgerald
4223aff840
Remove useless ref counts
2018-05-09 14:25:52 -06:00
Greg Fitzgerald
f107c6c2ca
Don't wrap thread-safe objects with mutexes
2018-05-09 14:21:42 -06:00
Greg Fitzgerald
7daf14caa7
Don't depend on client from server
2018-05-09 13:33:33 -06:00
Greg Fitzgerald
ded28c705f
Tuck away the Historian
...
The Historian is now just a utility of the accounting stage.
2018-05-09 12:25:19 -06:00
Greg Fitzgerald
778bec0777
Intercept historian output from accounting stage
...
We were accessing the accountant from multiple stages just to
register the ID the historian adds to Events.
This change should cause a whole lot of Arcs and Mutexes to go away.
2018-05-09 12:00:37 -06:00
Greg Fitzgerald
6967cf7f86
Boot sync_channel()
...
This is less useful now that we send Vec<Event> instead of Event.
2018-05-09 11:43:16 -06:00
Greg Fitzgerald
0ee3ec86bd
Fix nightly
2018-05-09 10:48:56 -06:00
Greg Fitzgerald
e4c47e8417
Use AccountingStage in Tpu
2018-05-09 10:31:23 -06:00
Greg Fitzgerald
98ae80f4ed
Hoist historian
2018-05-09 09:26:58 -06:00
Greg Fitzgerald
876c77d0bc
Extract accounting stage code from tpu
2018-05-09 09:22:46 -06:00
Greg Fitzgerald
d44a6f7541
Move Accounting stage functionality into its own object
2018-05-09 09:03:00 -06:00
Greg Fitzgerald
9040c04d27
Remove redundant Tick
2018-05-09 08:18:52 -06:00
Greg Fitzgerald
ebbdef0538
Ignore flakey test
2018-05-09 08:16:59 -06:00
Greg Fitzgerald
bfbee988d0
No longer wait for a Tick signal to record events
2018-05-09 08:15:51 -06:00
Greg Fitzgerald
1d4d0272ca
Drop support for logging a single event
2018-05-09 08:12:33 -06:00
Greg Fitzgerald
77a76f0783
Record a batch of events
2018-05-09 08:11:19 -06:00
Greg Fitzgerald
d9079de262
Add a way of sending a batch of events
2018-05-09 08:05:40 -06:00
Greg Fitzgerald
b3d732a1a1
No longer artificially limit the size of entries
...
Instead, serialize the entries and split them up over multiple
blobs.
2018-05-09 07:59:55 -06:00
Greg Fitzgerald
52f1a02938
Delete historical artifact
...
This was just to explain Proof of History. We have better explanations
elsewhere. Delete!
2018-05-09 07:53:24 -06:00
Jackson Sandland
fe51669e85
signature.rs - panic cleanup
2018-05-08 23:21:45 -07:00
Jackson Sandland
670a6c50c9
event.rs - panic cleanup
2018-05-08 22:58:48 -07:00
Jackson Sandland
86c1aaf7d8
transaction.rs - panic cleanup
2018-05-08 22:46:22 -07:00
Jackson Sandland
658e787b60
timing.rs panic cleanup
2018-05-08 22:40:07 -07:00
Robert Kelly
40c50aef50
deterministic random wallet generationg
2018-05-09 00:07:19 -04:00
Greg Fitzgerald
1dca17fdb4
cargo +nightly fmt
2018-05-08 18:59:01 -06:00
Greg Fitzgerald
785e971698
AccountantSkel -> Tpu
...
The terms Stub and Skel come from OMG IDL and only made sense while
the Stub was acting as an RPC client for the the Accountant object.
Nowadays, the Stub interface looks nothing like the Accountant and
meanwhile we've recognized the multithreaded implementation is more
reminiscent of a pipelined CPU. Thus, we finally bite the bullet and
rename our modules.
AccountantSkel -> Tpu
AccountantStub -> ThinClient
Up next will be moving much of the TPU code into separate modules,
each representing a stage of the pipeline. The interface of each
will follow the precedent set by the Historian object.
2018-05-08 17:40:02 -06:00
Greg Fitzgerald
2bfa20ff85
Merge pull request #182 from garious/split-request
...
Control port prep
2018-05-08 17:11:34 -06:00
Greg Fitzgerald
474a9af78d
Merge pull request #187 from sakridge/fix_blob_size_check
...
Trust the recorder not to give us more than we can serialize
2018-05-08 17:11:18 -06:00
Stephen Akridge
4870def1fb
Fix default client port, server uses 8000-8002 for gossip.
2018-05-08 15:40:55 -07:00
Stephen Akridge
3e73fb9233
Trust the recorder not to give us more than we can serialize
...
Also run client for 10 seconds, 5 is bit too short
2018-05-08 15:23:41 -07:00
Stephen Akridge
bd0671e123
Rework sig processing threads and add perf for process/verify
2018-05-08 11:49:29 -07:00
Greg Fitzgerald
9ff1a6f0cd
Add a thread to support thin clients
2018-05-07 21:44:44 -06:00
Greg Fitzgerald
62bb78f58d
Prepwork to hoist processing requests
2018-05-07 15:09:08 -06:00
Greg Fitzgerald
893011c3ba
Process events instead of processing only transactions
...
Prep work to allow clients to send any type that can end up in
the ledger.
2018-05-07 14:51:13 -06:00
Anatoly Yakovenko
85f83f2c74
fmt
2018-05-06 22:29:33 -07:00
Anatoly Yakovenko
4751e459cc
fixed!
2018-05-06 22:25:05 -07:00
Anatoly Yakovenko
138efa6cec
fixed constant
2018-05-06 22:06:19 -07:00
Anatoly Yakovenko
a68e50935e
useless timeouts i think
2018-05-06 21:48:46 -07:00
Stephen Akridge
e8f5fb35ac
Multinode fixes and test
...
* Replace magic numbers for 64k event size
* Fix gossip, dont ping yourself
* Retransmit only to listening nodes
* Multinode test in stub marked unstable
2018-05-06 21:36:06 -07:00
Greg Fitzgerald
e162f24119
Limit 256 events per entry
...
Attempt to keep blob size under 64kb
2018-05-04 11:52:05 -06:00
Stephen Akridge
2d5313639a
Factor out entry processing and fix replicate test to call global setup fn
2018-05-03 22:24:30 -07:00
Stephen Akridge
888c2ffb20
Fix bind so we can talk on external interfaces and surface send error
2018-05-03 17:05:02 -07:00
Stephen Akridge
2cdd515b12
Compiles/fmt and add assert for forward progress
2018-05-03 14:58:08 -07:00
Anatoly Yakovenko
0aad71d46e
fix entry serialize
2018-05-03 14:35:04 -07:00
Greg Fitzgerald
68c7f992fa
Sooth all versions of rustfmt
2018-05-03 13:56:10 -06:00
Greg Fitzgerald
1feff408ff
Implement get_last_id() with transaction_count()
...
This is more precice than the previous implementation because it'll
drain the EntryInfo queue and return the most recent last_id instead
of the first one.
2018-05-03 13:34:57 -06:00
Greg Fitzgerald
f752e02487
Implement GetLastId with EntryInfo subscription
2018-05-03 13:31:43 -06:00
Greg Fitzgerald
c9c7fb0a27
Update comment
...
The last PR added a thread that logs entries without needing to
be driven by the client.
2018-05-03 13:27:37 -06:00
Greg Fitzgerald
de680c2a8e
Remove duplicate state
2018-05-03 13:24:37 -06:00
Anatoly Yakovenko
c2e2960bf7
Add broadcast impl
2018-05-03 10:34:01 -07:00
Greg Fitzgerald
385d2a580c
Merge pull request #168 from aeyakovenko/fix_multi_host_client_demo
...
multi host client demo
2018-05-03 10:21:41 -06:00
Greg Fitzgerald
ae29c9b4a0
Fix nightly build
2018-05-03 09:38:59 -06:00
Anatoly Yakovenko
078f917e61
useless assert
2018-05-03 08:34:57 -07:00
Anatoly Yakovenko
b65f04d500
multi host client demo
...
Bind to the same interface as the user supplied client address.
2018-05-03 08:28:11 -07:00
Greg Fitzgerald
4b9f115586
Hoist Historian input
2018-05-02 16:35:37 -06:00
Greg Fitzgerald
c5cc91443e
Rename sender/receiver to input/output
2018-05-02 15:54:53 -06:00