shotover-proxy icon indicating copy to clipboard operation
shotover-proxy copied to clipboard

cdrs-tokio test suite integration

Open conorbros opened this issue 3 years ago • 5 comments

conorbros avatar Aug 11 '22 08:08 conorbros

Not ready for review yet, just trying to get the CI to run so I can check it's working.

conorbros avatar Aug 17 '22 03:08 conorbros

This seems stuck, are we pursuing this (or a todo later)?

benbromhead avatar Aug 24 '22 06:08 benbromhead

This PR enables us to run cdrs-tokio for our Cassandra integration tests. The cpp driver is hidden behind a feature that will also run if the feature is enabled. rstest is used to define what tests we want to run each driver for.

There is still some problems running cdrs-tokio on all the tests:

  • I will need to get a fix upstreamed to cdrs-tokio to re-enable the collections tests (https://github.com/krojew/cdrs-tokio/pull/103).
  • Many of the tests don't work with cdrs-tokio, still need to investigate the reasons for all of these. They have been marked with TODOs

I need to re-enable the collections test before this can be merged.

After that, need to decide whether to:

  • Only merge once cdrs-tokio runs on all the tests.
  • Merge as is and follow up on problems in later PRs.

I'm leaning towards merging once cdrs-tokio passes on all the tests.

Getting all the setup code for adding new drivers in could be useful though, for example the scylla driver could also be added.

conorbros avatar Aug 26 '22 07:08 conorbros

I'm leaning towards merging once cdrs-tokio passes on all the tests.

As long as we have integration test cases running on at least the cassandra_cpp driver and we are happy with the multi-driver abstraction then I am happy to merge.

rukai avatar Aug 28 '22 23:08 rukai

The test run time has halved from 40m -> 20m, I think a bunch of tests are no longer running.

rukai avatar Sep 01 '22 00:09 rukai

Fixed the issue with it missing some tests, review can continue now.

conorbros avatar Sep 07 '22 05:09 conorbros

1 benchmark regressed. 0 benchmark improved. Please check the benchmark workflow logs for full details: https://github.com/shotover/shotover-proxy/actions/runs/3034239548

[2m2022-09-12T02:53:55.876834Z[0m [31mERROR[0m [2mshotover_proxy::server[0m[2m:[0m source CassandraSource encountered an error when flushing the chain for shutdown: Failed to connect to upstream: "127.0.0.1:9043"
cassandra/tls_insert    time:   [1.0882 ms 1.1235 ms 1.1657 ms]
                        thrpt:  [857.85  elem/s 890.04  elem/s 918.97  elem/s]
                 change:
                        time:   [+28.020% +36.780% +46.074%] (p = 0.00 < 0.05)
                        thrpt:  [-31.541% -26.890% -21.887%]
                        Performance has regressed.

github-actions[bot] avatar Sep 12 '22 03:09 github-actions[bot]