Combined test for data export worker - (Nolana) 2022-11-08

Combined test for data export worker - (Nolana) 2022-11-08

 

Overview

Per https://folio-org.atlassian.net/browse/PERF-315 the following tests were performed using the data export workflow (bulk edits, eHoldings, and edifacts) to determine what load can the exports run successfully together 

Infrastructure

PTF -environment

  • m6i.2xlarge EC2 instances located in US West (Oregon)us-west-2 AWS region (comparing to 10 m6i.2xlarge EC2 instances located in US East (N. Virginia)us-east-1 for Morning Glory release)

  • 2 instances of db.r6.xlarge database instances, one reader, and one writer

  • MSK ptf-kakfka-1

    • 4 m5.2xlarge brokers in 2 zones

    • Apache Kafka version 2.8.0

    • EBS storage volume per broker 300 GiB

    • auto.create.topics.enable=truec

    • log.retention.minutes=480

    • default.replication.factor=3

Modules memory and CPU parameters

Modules

Version

Task Definition

Running Tasks 

CPU

Memory

MemoryReservation

MaxMetaspaceSize

Xmx

Modules

Version

Task Definition

Running Tasks 

CPU

Memory

MemoryReservation

MaxMetaspaceSize

Xmx

mod-data-export-spring

1.5.0-SNAPSHOT.58

2

1

256

2048

1844

512

1536 (1236 in MG)

mod-data-export-worker

2.1.0-SNAPSHOT.85

2

2

1024

3072

2600

512

2048 (1536 in MG)

mod-users

19.0.0-SNAPSHOT.573

4

2

128 (258 in MG)

1024

896

128

768

mod-notes

4.0.0-SNAPSHOT.237

2

2

128

1024

896

128m

322 (768m in MG)

mod-inventory

19.0.0-SNAPSHOT.383

2

2

1024

2880

2592

512m

1814m

mod-inventory-storage

25.0.0-SNAPSHOT.631

5

2

1024

2208

1952

512m

1440m

okapi

4.14.4

2

3

1024

1684

1440

512m

922m

mod-orders

mod-orders-12.5.0-SNAPSHOT.229

3

2

1024

2048

1440

512m

896m

mod-orders-storage

mod-orders-storage-13.4.0-SNAPSHOT.154

2

2

128

1024

896

128m

768m

mod-circulation

mod-circulation-23.3.0-SNAPSHOT.544

3

2

1024

1024

896

128m

768m

mod-circulation-storage

mod-circulation-storage-15.1.0-SNAPSHOT.296

6

2

1024

1536

1440

512m

896m

mod-agreements

5.4.0-SNAPSHOT.104

2

2

128

1592

1488

512m

968m

MG- Morning Glory release

Summary

Test report for combined mod-data-export-worker functionality 2022-11-08. 

In general, Nolana is more stable compared to the Morning Glory release. All were tested with a higher load and MODEXPW-306: [Bulk edit] Index 798 out of bounds for length 13(ArrayIndexOutOfBoundsException)Closed occurs very rarely. As for PERF-335: 404 response for Bulk edits with multiple parallel jobsClosed, it can be reproduced only if mod-data-export-worker is overloaded and will be solved in UI.

Results

Test Runs (initial assumption of the data sets for combo testing)

Bulk edit files are located at https://github.com/folio-org/perf-testing/tree/Bulk-edit/workflows-scripts/Bulk-edit

Test Run

Edifact

eHoldings

Bulk-edit

user barcodes

Bulk edit

item barcodes

Bulk edit

Holdings HRIDs

Bursar

Circulation log

Memory Behavior (Trend)

Comment

Time to process 

Results

#1

10 jobs 1K orders each

7 jobs 9,194 titles each

5 jobs -2500 records each

5 jobs -10k records each

-

DNR

35K records


memory usage increases for mod-data-export-worker during the test by 2% up to 111%. Stable for all other modules.

28 jobs total

About 27 min (time to process the longest one - 5 jobs -10k item records)

 

#2

10 jobs 1K orders each

7 jobs 9,194 titles each

5 jobs -2500 records each

5 jobs -10k records each

-

DNR

35K records

28 jobs total

About 27 min (time to process the longest one - 5 jobs -10k item records)

24 successful, 4 failed
PERF-335: 404 response for Bulk edits with multiple parallel jobsClosed

#3

10 jobs 1K orders each

7 jobs 9,194 titles each

5 jobs -2500 records each

5 jobs -10k records each

-

DNR

35K records

28 jobs total

About 29 min (time to process the longest one - 5 jobs -10k item records)

24 successful, 4 failed
PERF-335: 404 response for Bulk edits with multiple parallel jobsClosed

 

 

 

 

 

 

 

 

 

 

 

Test results

Test Run

Edifact

Time to process 

Results

eHoldings

Time to process 

Results

Bulk-edit

user barcodes

Time to process 

Results

Bulk edit

item barcodes

Time to process 

Results

Comment

#1

10 jobs 1K orders each

1 min 40 s

success

7 jobs 9,194 titles each

±10 min

success

5 jobs -2500 records each

3 min 45 sec

success

5 jobs -10k records each

26-27 min

success

 

 

Sometimes Bulk edit jobs can be failed with MODEXPW-306: [Bulk edit] Index 798 out of bounds for length 13(ArrayIndexOutOfBoundsException)Closed or PERF-335: 404 response for Bulk edits with multiple parallel jobsClosed

#2

10 jobs 1K orders each

1 min 50 s

success

7 jobs 9,194 titles each

±12 min

success

5 jobs -2500 records each

2 min 10 sec for a successful job

1 Successful - 4 failed

PERF-335: 404 response for Bulk edits with multiple parallel jobsClosed

5 jobs -10k records each

27 min

success

#3

10 jobs 1K orders each

1 min 37 s

success

7 jobs 9,194 titles each

±12 min

success

5 jobs -2500 records each

2 min 50 sec for a successful job

1 Successful - 4 failed

PERF-335: 404 response for Bulk edits with multiple parallel jobsClosed

5 jobs -10k records each

28 min 30 sec

success

Test Run

Bursar

Time to process 

Results

Circulation log

Time to process 

Results

Bulk edit

Holdings HRIDs

Time to process 

Results

Comment

#1

DNR

DNR

DNR

35K records

8 min 52 s

success

 

 

 

 

#2

DNR

DNR

DNR

35K records

±8 min

success

 

 

 

 

#3

DNR

DNR

DNR

35K records

7 min 50 s

success

 

 

 

 

 * - average job processing time for the number of records specified ( upload identifiers + editing)

Note- To manipulate with number of records to export in Circulation log workflow we just change dates in from-to section.

 

Resource Usage

 

 

 

 

Note: Between test #2 and test #3 we have restarted mod-data-export-worker manually. 

 

RDS CPU utilization