From 3cde95d19d4014d67f9e13669bdcc10b310858a2 Mon Sep 17 00:00:00 2001 From: Bozana Bokan Date: Thu, 6 Feb 2025 12:24:08 +0100 Subject: [PATCH] pkp/pkp-lib#9822 Increase timeout and improve DB table indexes for usage stats jobs --- classes/migration/install/MetricsMigration.php | 6 +++--- dbscripts/xml/upgrade.xml | 1 + jobs/statistics/CompileUniqueInvestigations.php | 2 ++ jobs/statistics/CompileUniqueRequests.php | 2 ++ 4 files changed, 8 insertions(+), 3 deletions(-) diff --git a/classes/migration/install/MetricsMigration.php b/classes/migration/install/MetricsMigration.php index 02af9911d1..7fda594f97 100644 --- a/classes/migration/install/MetricsMigration.php +++ b/classes/migration/install/MetricsMigration.php @@ -270,7 +270,7 @@ public function up(): void $table->string('city', 255)->default(''); $table->string('load_id', 50); - $table->index(['load_id', 'context_id', 'ip'], 'ust_load_id_context_id_ip'); + $table->index(['load_id', 'context_id', 'ip', 'user_agent', 'canonical_url'], 'ust_load_id_context_id_ip_ua_url'); }); // Usage stats unique item investigations temporary records @@ -306,7 +306,7 @@ public function up(): void $table->string('city', 255)->default(''); $table->string('load_id', 50); - $table->index(['load_id', 'context_id', 'ip'], 'usii_load_id_context_id_ip'); + $table->index(['load_id', 'context_id', 'ip', 'user_agent'], 'usii_load_id_context_id_ip_ua'); }); // Usage stats unique item requests temporary records @@ -341,7 +341,7 @@ public function up(): void $table->string('city', 255)->default(''); $table->string('load_id', 50); - $table->index(['load_id', 'context_id', 'ip'], 'usir_load_id_context_id_ip'); + $table->index(['load_id', 'context_id', 'ip', 'user_agent'], 'usir_load_id_context_id_ip_ua'); }); // Usage stats institution temporary records diff --git a/dbscripts/xml/upgrade.xml b/dbscripts/xml/upgrade.xml index 81c4b91259..4d3e3e158f 100644 --- a/dbscripts/xml/upgrade.xml +++ b/dbscripts/xml/upgrade.xml @@ -109,6 +109,7 @@ + diff --git a/jobs/statistics/CompileUniqueInvestigations.php b/jobs/statistics/CompileUniqueInvestigations.php index d44d41127e..648259adb1 100644 --- a/jobs/statistics/CompileUniqueInvestigations.php +++ b/jobs/statistics/CompileUniqueInvestigations.php @@ -22,6 +22,8 @@ class CompileUniqueInvestigations extends BaseJob { + public int $timeout = 600; + /** * Create a new job instance. * diff --git a/jobs/statistics/CompileUniqueRequests.php b/jobs/statistics/CompileUniqueRequests.php index ddcfea4e00..7353393f62 100644 --- a/jobs/statistics/CompileUniqueRequests.php +++ b/jobs/statistics/CompileUniqueRequests.php @@ -22,6 +22,8 @@ class CompileUniqueRequests extends BaseJob { + public int $timeout = 600; + /** * Create a new job instance. *