Check-in-check-out Test Report (Orchid)
Overview
The test's target is to investigate the behaviour of the Check-In/Check-Out activities during fixed load tests.
PERF-470: [Orchid] [Regular performance testing] CI/CO RetestClosed
Summary
The essential difference (even without absolute comparing): ~20% of degradation for average response time between current test results and:
8 Container instances for ncp5 instead 9 for ncp3 could have a negative impact but not critical
No memory leaks were found during the series of tests
Based on the longevity test results, the response time for 30 virtual users during the long period of time was degraded by ~ 75% in comparison with the fixed load test for 8 virtual users of the same configuration. Moreover, 'mod-users' CPU Utilization was more than 100% during all test execution. After ~16 hours of the longevity test run, significant degradation of CPU Utilization took place by services involved in Check-in/Check-out operations.
Unexpected behaviour of 'mod-search' CPU utilization during fixed load retests with 20 virtual users
ERROR LOG Messages have not been found, but there were a lot of WARN LOG Messages (see Additional) connected to the queries usage without an index
Recommendations
Discuss & analyze the situation with WARN LOG Messages (see Additional):
Potentially create indexes based on WARN LOG messages
Clarify action items for 'The configuration' WARN LOG Messages
Discuss & analyze the worst API calls and potential root causes with a development team
Decrease the number of virtual users for longevity testing Orchid release candidate (down to 20 or even 8)
Discuss & analyze the involvement of 'mod-search' in Check-in/Check-out operations, and pay attention to 'mod-search' CPU utilization during future tests
Test Runs
The following table contains information about a test model and related Grafana snapshots:
Test # | Test Conditions | vUsers | Ramp-up, sec | Duration, sec | Grafana |
1. | circulation_checkInCheckOut_orchid | 8 | 80 | 2'780 | |
2. | circulation_checkInCheckOut_orchid | 20 | 200 | 2'900 | |
3. | circulation_checkInCheckOut_orchid | 30 | 300 | 3'000 | |
4. | circulation_checkInCheckOut_orchid | 75 | 750 | 3'450 | |
5. | circulation_checkInCheckOut_orchid | 30 | 300 | 86'700 |
Based on previous results, the decision of additional execution was made:
Test # | Test Conditions | vUsers | Ramp-up, sec | Duration, sec | Grafana |
1* | circulation_checkInCheckOut_orchid | 8 | 80 | 2'780 | |
2* | circulation_checkInCheckOut_orchid | 8 | 80 | 2'780 | |
3* | circulation_checkInCheckOut_orchid | 20 | 200 | 2'900 | |
4* | circulation_checkInCheckOut_orchid | 20 | 200 | 2'900 |
Results
The following table contains information about test results and their comparison with the baseline (circulation_checkInCheckOut_orchid 8 VU).
Response Times
Test # | Test Conditions | vUsers | Action | Request count | MIN, ms | AVG, ms | Median, ms | 95pct, ms | MAX, ms | Std.Dev | MoE Confidence 95% | CoV |
1. | circulation_checkInCheckOut_orchid Baseline | 8 | Check-in | 1'435 | 379 | 534 | 456 | 1'041 | 2'770 | 231 | 11.95 | 43.26% |
Check-out | 1'845 | 605 | 909
| 797 | 1'462 | 3'390 | 286 | 13.05 | 31.46% | |||
2. | circulation_checkInCheckOut_orchid | 20 | Check-in | 3'513 | 318 | 600 +12.36% | 482 +5.70% | 1'196 +14.89% | 2'580 | 291 | 9.62 | 48.50% |
Check-out | 4'682 | 599 | 1'110 +22.11% | 1'010 +26.73% | 1'807 +23.60% | 3'670 | 396 | 11.34 | 35.68% | |||
3. | circulation_checkInCheckOut_orchid | 30 | Check-in | 5'109 | 341 | 834 +56.18% | 662 +45.18% | 1'708 +64.07% | 4'810 | 469 | 12.86 | 56.24% |
Check-out | 6'783 | 609 | 1'590 +12.36% | 1'511 +89.59% | 2'777 +89.95% | 6'470 | 635 | 15.11 | 39.94% | |||
4. | circulation_checkInCheckOut_orchid | 75 | Check-in | 13'378 | 337 | 825 +54.49% | 688 +50.88% | 1'566 +50.43% | 4'230 | 411 | 6.96 | 49.82% |
Check-out | 17'744 | 644 | 1'960 +115.62% | 1'904 +138.90% | 3'142 +114.91% | 6'370 | 667 | 9.81 | 34.03% | |||
5. | circulation_checkInCheckOut_orchid | 30 | Check-in | 208'809 | 311 | 550 +3.00% | 455 -0.22% | 1'061 +1.92% | 16'108 | 257 | 1.10 | 46.73% |
Check-out | 277'292 | 111 | 1'597 +75.69% | 1'306 +63.86% | 3'233 +121.14% | 133'698 | 852 | 3.17 | 53.35% |
Comparisons
The following table contains information about additional test executions, their results and a comparison with Nolana's results:
Test # | Test Conditions | vUsers | Action | AVG, ms | Median, ms | 95pct, ms | Std.Dev |
B | circulation_checkInCheckOut_nolana | 8 | Check-in | 456 | 441 | 534 |
|
Check-out | 698 | 672 | 839 |
| |||
1-Retest | circulation_checkInCheckOut_orchid | 8 | Check-in | 534 +17.11% | 474 +7.48% | 1,027 +92.32% | 239 |
Check-out | 811 +16.19% | 749 +11.46% | 1,201 +43.15% | 252 | |||
2-Retest | circulation_checkInCheckOut_orchid | 8 | Check-in | 538 +17.98% | 475 +7.71% | 1,428 +167.42% | 241 |
Check-out | 799 +14.47% | 747 +11.16% | 1,008 +20.14% | 214 | |||
B | circulation_checkInCheckOut_nolana | 20 | Check-in | 425 | 414 | 489 |
|
Check-out | 658 | 638 | 758 |
| |||
3-Retest | circulation_checkInCheckOut_orchid | 20 | Check-in | 513 +20.71% | 460 +11.11% | 812 +66.05% | 229 |
Check-out | 798 +21.28% | 737 |