Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Overview

This document contains the results of testing Fiscal year rollover in scope of ticket

Jira Legacy
serverSystem Jira
serverId01505d01-b853-3c2e-90f1-ee9b165564fc
keyPERF-289
.

...

  • Service CPU utilization for mod-orders-storage increased up to 40- 60% during orders phase of 10K rollover, while during 50K and 100K orders rollover mod-orders-storage CPU utilization reaches only 20% maximum.
  • DB CPU utilization shows different behavior for rollovers of different data quantity. During 10K and 50k rollover DB CPU utilization increased during orders phase (31% → 83%, 61% → 85%), while during 100K rollover DB CPU utilization decreased during orders phase (65% → 30%, 67% → 40%). 
  • Lock wait type wait was observed during orders phase of rollover. Lock waiting time is higher during 10K orders rollover than during 50K and 100K orders rollover.
  • "Out of shared memory" error occurred during 100K orders rollover with 90K open orders. This issue was reported previously in
    Jira Legacy
    serverSystem Jira
    serverId01505d01-b853-3c2e-90f1-ee9b165564fc
    keyMODFISTO-428
    .
  • "504 Gateway Time-out" error occurred during 100K orders rollover with 50K open orders. This issue was reported and marked as fixed previously (
    Jira Legacy
    serverSystem Jira
    serverId01505d01-b853-3c2e-90f1-ee9b165564fc
    keyMODORDERS-865
    ) but should be investigated furhter.
  • A set of improvements was prepared by dev team:
    Jira Legacy
    serverSystem Jira
    serverId01505d01-b853-3c2e-90f1-ee9b165564fc
    keyMODFISTO-439
    . When this fixes are implemented, tests will be conducted again to assess performance and compare results with current ones.

...

Test #

Scenario

Load levelData quantityFiscal year rollover durationComments
1.Fiscal year rollover1 rollover at a time

10K orders:

5K - open

5K - closed

3 hours

(2 hours financial rollover, 1 hour orders rollover)

No errors
2.

50K orders:

40K - open

10K - closed

2 days 6 hours

(1 day 8 hours financial rollover, 22 hours orders rollover)

No errors
3.100K orders:

90K - open

10K - closed

8 days

(6 days 6 hours financial rollover, 1 day 18 hours orders rollover)

Rollover was stoped manually, "Out of shared memory" error occurred.

4.100K orders:

50K - open

50K - closed

6 days 13 hours

(3 days 9 hours financial rollover, 3 days 4 hours orders rollover)

Rollover finished by itself, "504 Gateway Time-out error occurred.


Service CPU Utilization

Service CPU utilization for mod-orders-storage increased up to 60% during orders phase of 10K rollover, while during 50K and 100K orders rollover mod-orders-storage CPU utilization reaches only 20% maximum.

10K orders

According to the graph, mod-orders-storage is about 40-60% during orders rollover stage.



50K orders

spike - mod-finance-storage

According to the graph, mod-orders-storage is about 15-20% during orders rollover stage stage.

Also, there is a spike between 06/28 and 06/29 for mod-finance-storage module.

100K orders (90K - open, 10K - closed)

There is a spike - for mod-orders and mod-orders-storage at the end of the rollover.

100K orders (50K - open, 50K - closed)

According to the graph, mod-orders-storage cpu utilization is about 10% during orders rollover stage stage.


Memory Utilization

10K orders

50K orders

There is an increase of service memory usage from 44% to 65% for mod-finance-storage - increase from 44% to 65%.

100K orders (90K - open, 10K - closed)

...

100K orders (50K - open, 50K - closed)

Srvice memory usage increase by services:

  • mod-finance-storage - increase from 37% to 59%;
  • okapi - increase from 44% to 57%;
  • mod-orders-storage - increase from 42% to 54%;
  • mod-orders - increase from 59% to 64%;
  • mod-rinance - increase from 40% to 44%.


DB CPU Utilization

DB CPU utilization shows different behavior for rollovers of different data quantity. During 10K and 50k rollover DB CPU utilization increased during orders phase (31% → 83%, 61% → 85%), while during 100K rollover DB CPU utilization decreased during orders phase (65% → 30%, 67% → 40%). 

10K orders

COU  According to the graph, CPU utilization during finance part - was about 31%, during orders part - 83%.

50K orders

COU  According to the graph,  CPU utilization during finance part - was 63%, during orders part - 85%.

100K orders (90K - open, 10K - closed)

COU  According to the graph, CPU utilization during finance part - was 65%, during orders part - 30%.

100K orders (50K - open, 50K - closed)

COU  According to the graph, CPU utilization during finance part - was 67%, during orders part - 40%.


DB Connections

10K orders

50K orders

...

100K orders (50K - open, 50K - closed)


Database load

Lock wait type was observed during orders phase of rollover. Lock waiting time is higher during 10K orders rollover than during 50K and 100K orders rollover.

10K orders

50K orders

100K orders (90K - open, 10K - closed)

...

Modules

Version

Task Definition

Running Tasks 

CPU

Memory

MemoryReservation

MaxMetaspaceSize

Xmx

mod-orders

12.6.6

1021024204814405121024
mod-orders-storage

13.5.0

521281024896128768
mod-finance4.7.1521281024896128768
mod-finance-storage8.4.1821281024896128700
okapi5.0.163102416841440512922
nginx-okapi2022.03.02621281024896--
pub-okapi2022.03.02621281024896-768

...

For other orders quantity and data structure JMeter script should be used (perf-testing/workflows-scripts/fiscal_year/FY_rollover_preparation on the GitHub). But in this case data generation will take a lot of time.

...