Port ServiceStackRedis to Testcontainers#8430
Port ServiceStackRedis to Testcontainers#8430bouwkast wants to merge 2 commits intosteven/update-test-containers-4from
Conversation
Execution-Time Benchmarks Report ⏱️Execution-time results for samples comparing This PR (8430) and master. ✅ No regressions detected - check the details below Full Metrics ComparisonFakeDbCommand
HttpMessageHandler
Comparison explanationExecution-time benchmarks measure the whole time it takes to execute a program, and are intended to measure the one-off costs. Cases where the execution time results for the PR are worse than latest master results are highlighted in **red**. The following thresholds were used for comparing the execution times:
Note that these results are based on a single point-in-time result for each branch. For full results, see the dashboard. Graphs show the p99 interval based on the mean and StdDev of the test run, as well as the mean value of the run (shown as a diamond below the graph). Duration chartsFakeDbCommand (.NET Framework 4.8)gantt
title Execution time (ms) FakeDbCommand (.NET Framework 4.8)
dateFormat x
axisFormat %Q
todayMarker off
section Baseline
This PR (8430) - mean (72ms) : 69, 75
master - mean (77ms) : 67, 87
section Bailout
This PR (8430) - mean (76ms) : 74, 78
master - mean (81ms) : 72, 91
section CallTarget+Inlining+NGEN
This PR (8430) - mean (1,069ms) : 1024, 1114
master - mean (1,161ms) : 1045, 1278
FakeDbCommand (.NET Core 3.1)gantt
title Execution time (ms) FakeDbCommand (.NET Core 3.1)
dateFormat x
axisFormat %Q
todayMarker off
section Baseline
This PR (8430) - mean (112ms) : 108, 115
master - mean (132ms) : 126, 139
section Bailout
This PR (8430) - mean (113ms) : 110, 115
master - mean (133ms) : 126, 139
section CallTarget+Inlining+NGEN
This PR (8430) - mean (782ms) : 758, 806
master - mean (807ms) : 769, 844
FakeDbCommand (.NET 6)gantt
title Execution time (ms) FakeDbCommand (.NET 6)
dateFormat x
axisFormat %Q
todayMarker off
section Baseline
This PR (8430) - mean (99ms) : 95, 102
master - mean (104ms) : 98, 109
section Bailout
This PR (8430) - mean (100ms) : 97, 103
master - mean (104ms) : 100, 108
section CallTarget+Inlining+NGEN
This PR (8430) - mean (932ms) : 900, 964
master - mean (944ms) : 903, 985
FakeDbCommand (.NET 8)gantt
title Execution time (ms) FakeDbCommand (.NET 8)
dateFormat x
axisFormat %Q
todayMarker off
section Baseline
This PR (8430) - mean (98ms) : 95, 101
master - mean (101ms) : 97, 106
section Bailout
This PR (8430) - mean (99ms) : 97, 100
master - mean (102ms) : 98, 106
section CallTarget+Inlining+NGEN
This PR (8430) - mean (812ms) : 778, 846
master - mean (825ms) : 788, 862
HttpMessageHandler (.NET Framework 4.8)gantt
title Execution time (ms) HttpMessageHandler (.NET Framework 4.8)
dateFormat x
axisFormat %Q
todayMarker off
section Baseline
This PR (8430) - mean (195ms) : 190, 200
master - mean (194ms) : 190, 199
section Bailout
This PR (8430) - mean (198ms) : 195, 200
master - mean (198ms) : 195, 201
section CallTarget+Inlining+NGEN
This PR (8430) - mean (1,157ms) : 1107, 1208
master - mean (1,159ms) : 1114, 1204
HttpMessageHandler (.NET Core 3.1)gantt
title Execution time (ms) HttpMessageHandler (.NET Core 3.1)
dateFormat x
axisFormat %Q
todayMarker off
section Baseline
This PR (8430) - mean (281ms) : 275, 287
master - mean (279ms) : 273, 285
section Bailout
This PR (8430) - mean (281ms) : 275, 288
master - mean (281ms) : 275, 286
section CallTarget+Inlining+NGEN
This PR (8430) - mean (941ms) : 919, 962
master - mean (942ms) : 918, 966
HttpMessageHandler (.NET 6)gantt
title Execution time (ms) HttpMessageHandler (.NET 6)
dateFormat x
axisFormat %Q
todayMarker off
section Baseline
This PR (8430) - mean (273ms) : 266, 279
master - mean (274ms) : 267, 282
section Bailout
This PR (8430) - mean (273ms) : 267, 279
master - mean (276ms) : 272, 280
section CallTarget+Inlining+NGEN
This PR (8430) - mean (1,148ms) : 1109, 1187
master - mean (1,146ms) : 1118, 1175
HttpMessageHandler (.NET 8)gantt
title Execution time (ms) HttpMessageHandler (.NET 8)
dateFormat x
axisFormat %Q
todayMarker off
section Baseline
This PR (8430) - mean (269ms) : 265, 273
master - mean (274ms) : 268, 281
section Bailout
This PR (8430) - mean (269ms) : 265, 272
master - mean (271ms) : 267, 275
section CallTarget+Inlining+NGEN
This PR (8430) - mean (1,026ms) : 978, 1074
master - mean (1,024ms) : 984, 1064
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
BenchmarksBenchmark execution time: 2026-04-10 18:15:50 Comparing candidate commit 552a8eb in PR branch Found 28 performance improvements and 41 performance regressions! Performance is the same for 211 metrics, 8 unstable metrics.
|
The ARM64 integration test container was missing the Docker socket volume mount, causing Testcontainers to fail with DockerUnavailableException. The x64 IntegrationTests service already had this mount.
Summary of changes
This attempts to port the ServiceStack.Redis integration tests to use Testcontainers
Reason for change
Implementation details
Test coverage
Ran locally fine, will see with CI
Other details
I tried this with SqlServer first but it proved to be pretty challenging so trying this instead