Versions Compared

Key

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

...

This document contains the results of performance testing for searching SRS records based on the LDR05 value on the OCP3 environment for POST /source-storage/stream/marc-record-identifiers request with the following parameters

Jira Legacy
serverSystem Jira
serverId01505d01-b853-3c2e-90f1-ee9b165564fc
keyPERF-703
:

Summary

  • The average time to respond to HTTP requests used in Test 1

...

{"leaderSearchExpression": "p_05 = 'd'", } this request returns 66 records.

Test 2. Request method POST, path source-storage/stream/marc-record-identifiers , body data

{"leaderSearchExpression": "p_05 = 'd'", "deleted": true, "suppressFromDiscovery": true,} this request returns 66 records, generated by DELETE /source-storage/records/${id}.

Test 3. Request method POST, path source-storage/stream/marc-record-identifiers , body data

{"leaderSearchExpression": "p_05 = 'd'", "deleted": true, "suppressFromDiscovery": true,} this request returns 20,000 records, generated by DELETE /source-storage/records/${id}.

...

  • and Test 2 for returning 66 records is about 6,4 seconds. The average time to respond to requests used in Test 3 for returning 20,000 records is about 6,9 seconds. The average time to respond to requests used in Test 4 for filtering using data range is about 6,7 seconds;

  • The high response time from the server to the HTTP request is caused by the duration of the SQL query to the database, which is about 6 seconds for all types of queries, ticket for optimization is created;

  • The memory utilization didn`t increase during Test 1- Test 4;

  • The maximal CPU utilization increases up to 3.5% on mod-source-record-storage;

  • RDS CPU utilization was about 80% during Test 1- Test 4, number on DB connection ~ 400;

Recommendations & Jiras

Test RunsĀ 

Test 1. Request method POST, path source-storage/stream/marc-record-identifiers , body data

{"leaderSearchExpression": "p_05 = 'd'", "deleted": true, "suppressFromDiscovery} this request returns 66 records.

Test 2. Request method POST, path source-storage/stream/marc-record-identifiers , body data

{"leaderSearchExpression": "p_05 = 'd'", "deleted": true, "fieldsSearchExpressionsuppressFromDiscovery": "005.date in '20141106-20231108'"true,} this request returns 574 records.

Summary

  • The average time to respond to HTTP requests used in Test 1 and Test 2 for returning 66 records is about 6,4 seconds. The average time to respond to requests used in Test 3 for returning 20,000 records is about 6,9 seconds. The average time to respond to requests used in Test 4 for filtering using data range is about 6,7 seconds;

  • The high response time from the server to the HTTP request is caused by the duration of the SQL query to the database, which is about 6 seconds for all types of queries, ticket for optimization is created;

  • The memory utilization didn`t increase during Test 1- Test 4;

  • The maximal CPU utilization increases up to 3.5% on mod-source-record-storage;

  • RDS CPU utilization was about 80% during Test 1- Test 4, number on DB connection ~ 400;

Recommendations & Jiras

...

Conduct repeated testing for Test 3 and Test 4 after the SQL changes are added [MODSOURCE-753] Change SQL query parameters for MARC Search - FOLIO Jira (atlassian.net)

...

66 records, generated by DELETE /source-storage/records/${id}.

Test 3. Request method POST, path source-storage/stream/marc-record-identifiers , body data

{"leaderSearchExpression": "p_05 = 'd'", "deleted": true, "suppressFromDiscovery": true,} this request returns 20,000 records, generated by DELETE /source-storage/records/${id}.

Test 4. Request method POST, path source-storage/stream/marc-record-identifiers , body data

{"leaderSearchExpression": "p_05 = 'd'", "deleted": true, "suppressFromDiscovery": true, "fieldsSearchExpression": "005.date in '20141106-20231108'"} this request returns 574 records.

Results

The table contains the main testing metrics. The duration of all of the tests was about 30 minutes.

...