James Wilson
b4b128f9fe
Tidy up stale connections. ( #406 )
...
* If messageId changes and network ID doesn't, remove 'old' message_id
* Boot nodes/connection when no recent messages received for it
* Separate task needed for soketto recv to avoid cancel-safety issues with new interval
* Wee tidy up
* cargo fmt
* Add some logging around node adding/removing
* Another log info msg
* a bit of tidy up
* bump stale node timeout to 60s
2021-09-21 15:49:42 +01:00
James Wilson
0b0cec0512
Make soak tests work again now that we subscribe by genesis hash ( #399 )
...
* Make soak tests work again with genesis hash subscribing
* cargo fmt
* derive hex from hash
* actually compile code
* fmt
Co-authored-by: David Palm <dvdplm@gmail.com >
2021-09-10 11:28:34 +01:00
James Wilson
fe19a75414
Un-brittle-ify backend E2E tests and have them run by default again in CI ( #397 )
...
* test running tests
* Add delay so that core knows about node before feed subscribes to limit chance of race
* move delaye to the right place
* Don't do expensive docker step untill we will be pushing the image
* docker test skipped as hoped, so push to 'true'
* just remove docker steps in github CI entirely since they aren't needed by anything (gitlab CI does this stuff now)
* run CI on pull requests too to catch PRs from forks
2021-09-06 11:30:17 +01:00
Maciej Hirsz
a4069e4b3d
Subscribe to chains by genesis hash ( #395 )
...
* Handle subscription by hash in the frontend
* Forward-ported backend changes
* Fix unit tests
* Remove unused `chains_by_label`
* fmt
* Updated but failing E2E tests
* subscribe by genesis hash in tests
* fmt
* Copy `BlockHash` instead of returning a ref
* Pin chains by genesisHash
Co-authored-by: James Wilson <james@jsdw.me >
2021-09-02 17:54:19 +02:00
James Wilson
7a3e30cb01
Don't remove all feeds subscribed to a chain when one disconnects ( #383 )
...
* Only remove the feed that disconnected to not break the rest...
* use multimap struct to avoid sync issues between feed and chain
* add a remove test, too
* cargo fmt
* fix name of test
* move multimap to common so we can doctest it and add 'unique' to name
* cargo fmt
* Return old key if value moved to make uniqueness more obvious
2021-08-27 08:05:44 +01:00
James Wilson
811babca27
Merge branch 'master' into jsdw-sharding-gatekeeper
2021-08-13 11:16:47 +01:00
James Wilson
18627a9f02
No e2e feature flag; just ignore and pattern match on 'e2e' to run
2021-08-12 16:58:35 +01:00
James Wilson
05a3ba3fef
Fix/expand a few comments
2021-08-12 16:20:05 +01:00
James Wilson
230987036a
cargo fmt
2021-08-12 16:01:35 +01:00
James Wilson
f72f8c1fd5
test runner: fix soak test for multiple ids per ndoe
2021-08-12 16:01:24 +01:00
James Wilson
20463ce159
test runner: enable tokio features
2021-08-12 16:01:19 +01:00
James Wilson
e3fcd4e8c2
Clean up soak test runner and add more config options
2021-08-12 16:01:18 +01:00
James Wilson
d4b5c2b0c8
split e2e tests out and run them separately, not blocking the build or marking it as failed
2021-08-12 13:38:29 +01:00
James Wilson
7563909609
Fix typo
...
Co-authored-by: Niklas Adolfsson <niklasadolfsson1@gmail.com >
2021-08-12 12:59:39 +01:00
James Wilson
770dd04b57
invert logic to make name make sense and fix comment typo
2021-08-12 12:47:29 +01:00
James Wilson
f887510beb
remove lint warning on cargo test
2021-08-12 12:42:44 +01:00
James Wilson
4480bbe72a
Allow errors as well as closes for now to remove some brittleness
2021-08-12 12:40:53 +01:00
James Wilson
c99cbee1e9
Allow multiple aggregator loops in the core to try and spread feed subscription/send cost out
2021-08-07 17:08:58 +01:00
James Wilson
88c3db3562
cargo fmt
2021-08-06 17:44:26 +01:00
James Wilson
74cf55174e
Use rayon to speed up subscribe message serializing
2021-08-06 17:42:03 +01:00
James Wilson
0788270756
Add 'subscribe' benchmark
2021-08-06 14:22:01 +01:00
James Wilson
2dae6c90ce
Keep file handle limit comment in sync
2021-08-05 12:22:22 +01:00
James Wilson
acfe3d45d1
num-cpus to worker-threads; more accurate name
2021-08-05 11:31:47 +01:00
James Wilson
5c5c7e592a
allow configuration of cpus in soak tests
2021-08-05 11:16:10 +01:00
James Wilson
759d28b1a2
add --num-cpus option
2021-08-05 11:11:23 +01:00
James Wilson
7d00d72baa
Small tweak to make it more obvious when feeds are disconnected
2021-08-04 10:52:53 +01:00
James Wilson
db5284a3db
Add a comment explaining realistic_soak_test and --release on all
2021-08-03 15:42:42 +01:00
James Wilson
5d81128e74
create more realistic soak test so that we can see a more representative UI in action
2021-08-03 15:40:20 +01:00
James Wilson
a5b04cb4f0
improve socket channel close handling, and test the node banning (roughly)
2021-07-30 18:58:10 +01:00
James Wilson
3f523178be
Fix broken test (node being banned) and allow test config of new max-bytes option on shard
2021-07-30 16:55:06 +01:00
James Wilson
b70ab9ed3d
Add license to the top of each source file
2021-07-29 17:34:40 +01:00
James Wilson
9ec48adcaa
Wee tidy up of test code
2021-07-27 14:45:45 +01:00
James Wilson
61fd903f55
Remove benchmark things for now and no need for release mode on a test
2021-07-27 14:28:27 +01:00
James Wilson
2ca5f6a1fb
cargo fmt
2021-07-27 12:38:05 +01:00
James Wilson
a44f39cfaf
Add/test max_nodes_per_connection feature
2021-07-27 12:37:32 +01:00
James Wilson
ecf5fccaab
make possible to test, test, and fix feed cutoff
2021-07-26 16:38:24 +01:00
James Wilson
cca1df2e21
use ws_client in shard, too, and make it better at handling core disconnecting
2021-07-20 13:04:10 +01:00
James Wilson
36c4e7b0ef
Remove flamegraph bits
2021-07-19 17:11:31 +01:00
James Wilson
73a4dbb095
Allow tests to hook up to running process to help with profiling
2021-07-19 15:57:39 +01:00
James Wilson
f77afe0b75
avoid overquota in soak tests
2021-07-16 18:07:10 +01:00
James Wilson
582c49413b
Make server able to run old or new binary so that we can compare the actix version with this one
2021-07-16 17:58:26 +01:00
James Wilson
fd79b3e85b
Add some tests, and add a configurable soak test
2021-07-15 17:18:58 +01:00
James Wilson
db8ea9a8f3
Add more tests, fix (and test for) a deadlock re overquota messages, more unbounded channels and less .awaiting
2021-07-15 10:53:02 +01:00
James Wilson
e34da5761f
move tests around and add (non working) benchmark
2021-07-14 15:05:09 +01:00
James Wilson
c1208b9e81
cargo fmt
2021-07-13 16:51:24 +01:00
James Wilson
faedba87d4
no e2e feature, and don't assume 'cargo run' is a good default
2021-07-13 11:12:23 +01:00
James Wilson
66bf24dc4d
re-add e2e (again..)
2021-07-13 09:25:54 +01:00
James Wilson
74d5890ea0
Wee tidy up
2021-07-13 09:21:43 +01:00
James Wilson
61d6b620b6
Add small comment to make diff more obvious
2021-07-13 08:57:29 +01:00
James Wilson
cfe7ff39bb
contains_matches macro and more tests
2021-07-12 17:21:01 +01:00