After the 1st of March 2024, we'll discontinue the support of PostgreSQL 14 and PostgreSQL 15 will become the mandatory version.
Both statements mean, we do not perform any tests during the development and QA stages with any PostgreSQL versions except mandatory one, hence we cannot guarantee Allure Testops will be able to perform or start with PostgreSQL versions different from the mandatory one.
It's highly recommended using enterprise grade SSD for the database.
PostgreSQL parameters recommendations
Allure Testops heavily uses the databases and objects storage during the processing of the test results of automated tests and generation of the widgets in the projects dashboards, thus there are some recommendations based on our experience when working with highly loaded Allure Testops instances in our clients' environments.
random page cost
The setting of parameter random_page_cost considerably affects the performance of PostgreSQL database and depends on the used storage's disks type.
in case of SSD use 1.5.
in case of really quick SSD like AWS gp2/gp3 with high IOPS use 1.2.
in case of HDD - use default value 4.0.
do not use the default value 4.0 with SSD.
work_mem parameter depends on the RAM available for the database and max session allowed to the database.
New value of work_mem parameter will require restarting of the database.
The following formula is to be used to calculate the work_mem:
work_mem = db_available_ram x 0.2 / max_sessions_count,
max_sessions_count = num_of_report_service_instances x connection_pool_size_per_instance
connection_pool_size_per_instance is 10 by default.
work_mem calculation example
Given 64GB RAM dedicated to your DB
and you have 10 replicas of report service instances with connection pool size equal to 10
you need to set
work_mem = 64000*0.2/100 = 128MB
effective io concurrency
effective_io_concurrency is to be set to
64 in case of SSD
1 in case of HDD (the default value)
If you are using AWS RDS, make sure that IOPS is not limited.
For average/huge size customers, AWS RDS has at least 3 000 IOPS that is equal to 1 000 GB gp2 storage.