Versions Compared

Key

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

Table of Contents
outlinetrue

...

  • Data Export tests finished successfully on qcon environment using the profiles Default instances export job profile and srs - holdings and items job profile.
  • Data Export test were run on College and Central tenants, but results for comparing between environment releases were taken from College tenant.
  • Comparing with previous testing results Poppy and Quesnelia releases
    • Data Export processed all files including file with 500k records without errors for Quesnelia releases.
    • Data Export durations improved  - 80% in Average for Quesnelia releases.
  • During testing, we noticed spikes in the mod-data-export up to 452% 593% CPU.
  • No memory leak is suspected for Data Export modules.

Test Results

This table contains durations for Data Export with 2 job profiles. 

...

Profile

...

  •  
  • For Test №5 Data Export started on College tenant(cs00000int_0001)

...

  • Central

...

  • tenant(cs00000int)

...

  • and Professional tenant(cs00000int_0002) concurrently using the Default instances export job profile

...

  • we observed that the CPU usage of the mod-data-export module was initially at 44% before the test began then it spiked to 109% during the test and remained elevated without returning to the initial state

Test Results

This table contains durations for Data Export with 2 job profiles. 

Profile

CSV  FileTenant College (cs00000int_0001)Central Tenant (cs00000int)
ResultStatusResultStatus
DE MARC Bib (Default instances export job profile)

1k.csv0:00:02COMPLETED0:00:05COMPLETED
100k.csv0:02:39COMPLETED0:04:24COMPLETED
500k.csv0:05:21COMPLETED0:06:17COMPLETED
DE MARC Bib (srs - holdings and items)

1k.csv0:00:05COMPLETED0:00:05COMPLETED
100k.csv0:08:15COMPLETED0:05:58COMPLETED
500k.csv0:09:22COMPLETED0:08:28COMPLETED

...

#TOP 5 SQL statements
1
select mre1_0.id,mre1_0.content,mre1_0.external_id,mre1_0.leader_record_status,mre1_0.record_type,mre1_0.state,mre1_0.suppress_discovery from v_marc_records_lb mre1_0 where mre1_0.external_id in ($1,$2,$3,$4,$5,$6,$7,$8,$9,$10,$11,$12,$13,$14,$15,$16,$17,$18,$19,$20,$21,$22,$23,$24,$25,$26,$27,$28,$29,$30,$31,$32,$33,$34,$35,$36,$37,$38,$39,$40,$41,$42,$43,$44,$45,$46,$47,$48,$49,$50,$51,$52,$53,$54,$55,$56,$57,$58,$59,$60,$61,$62,$63,$64,$65,$66,$67,$68,$69,$70,$71,$72,$73,$74,$75,$76,$77,$78,$
2
INSERT INTO job_executions_export_ids (job_execution_id, instance_id) VALUES ($1, $2) ON CONFLICT DO NOTHING
3
select ie1_0.id,ie1_0.holdings_record_id,ie1_0.jsonb from v_item ie1_0 where ie1_0.holdings_record_id in ($1)
4
select hre1_0.id,hre1_0.instance_id,hre1_0.jsonb from v_holdings_record hre1_0 where hre1_0.instance_id=$1
5
select eie1_0.id,eie1_0.instance_id,eie1_0.job_execution_id from job_executions_export_ids eie1_0 where eie1_0.job_execution_id=$1 and eie1_0.instance_id>=$2 and eie1_0.instance_id<=$3 order by eie1_0.instance_id offset $4 rows fetch first $5 rows only

Resource utilization for Test #5

...

only


Resource utilization for Test #5

Expand
titleResource utilization table


CPURAM
mod-data-export-b592%mod-data-export-b108%
mod-inventory-b10%mod-inventory-b78%
mod-source-record-storage-b1.80%mod-source-record-storage-b40%
mod-authtoken-b1.70%mod-source-record-manager-b39%
mod-source-record-manager-b1.50%okapi-b32%
okapi-b1.50%mod-users-bl-b24%
mod-inventory-storage-b0.60%mod-authtoken-b18%
mod-users-bl-b0.60%mod-inventory-storage-b13%
nginx-okapi0.40%nginx-okapi4%


Service CPU Utilization

Here we can see that mod-data-export used 336% 593% CPU in spike.

Image Added

Service Memory Utilization

Here we can see that all modules show a stable trend.

We observed that the CPU usage of the mod-data-export module was initially at 44% before the test began. It spiked to 109% during the test and remained elevated without returning to the initial state.

Image Added

DB CPU Utilization

DB CPU was 35%50%.

Image Added

DB Connections

DB connections was 13771368.

Image Added

DB load

    Image Added                                                                                                                    

Top SQL-queries

Image Added

Appendix

Infrastructure

PTF - environment Quesnelia (qcon)

...

  • Test 1: Manually tested 1k, 100k and 500k records files Data Export started on College tenant(cs00000int_0001) only using Default instances export job profile.
  • Test 2: Manually tested 1k, 100k and 500k records files Data Export started on College tenant(cs00000int_0001) only using srs - holdings and items job profile.
  • Test 3: Manually tested 1k, 100k and 500k records files Data Export started on Central tenant(cs00000int) only using Default instances export job profile.
  • Test 4: Manually tested 1k, 100k and 500k records files Data Export started on Central tenant(cs00000int) only using srs - holdings and items job profile.
  • Test 5: Manually tested 500k records file Data Export started on College tenant(cs00000int_0001), Central tenant(cs00000int) and Professional tenant(cs00000int_0002) concurrently using Default instances export job profile

To get status and time range for export jobs the query used: 

...