From af4434dee2772422f92a2414b7938a7618133016 Mon Sep 17 00:00:00 2001 From: Liviu-Mihail Concioiu Date: Sun, 29 May 2022 19:54:04 +0200 Subject: [PATCH 1/5] Fix database names dissapearing from Processes tab Signed-off-by: Liviu-Mihail Concioiu --- libraries/classes/Server/Status/Processes.php | 23 ++++++++----------- templates/server/status/processes/list.twig | 18 +++++++++++++-- .../Server/Status/ProcessesControllerTest.php | 2 +- 3 files changed, 26 insertions(+), 17 deletions(-) diff --git a/libraries/classes/Server/Status/Processes.php b/libraries/classes/Server/Status/Processes.php index 3ac414d8d1..19b9b26a17 100644 --- a/libraries/classes/Server/Status/Processes.php +++ b/libraries/classes/Server/Status/Processes.php @@ -70,26 +70,21 @@ final class Processes while ($process = $result->fetchAssoc()) { // Array keys need to modify due to the way it has used // to display column values - if ( - (! empty($params['order_by_field']) && ! empty($params['sort_order'])) - || ! empty($params['showExecuting']) - ) { - foreach (array_keys($process) as $key) { - $newKey = ucfirst(mb_strtolower($key)); - if ($newKey === $key) { - continue; - } - - $process[$newKey] = $process[$key]; - unset($process[$key]); + foreach (array_keys($process) as $key) { + $newKey = ucfirst(mb_strtolower($key)); + if ($newKey === $key) { + continue; } + + $process[$newKey] = $process[$key]; + unset($process[$key]); } $rows[] = [ 'id' => $process['Id'], 'user' => $process['User'], 'host' => $process['Host'], - 'db' => ! isset($process['db']) || strlen($process['db']) === 0 ? '' : $process['db'], + 'db' => ! isset($process['Db']) || strlen($process['Db']) === 0 ? '' : $process['Db'], 'command' => $process['Command'], 'time' => $process['Time'], 'state' => ! empty($process['State']) ? $process['State'] : '---', @@ -124,7 +119,7 @@ final class Processes ], [ 'column_name' => __('Database'), - 'order_by_field' => 'db', + 'order_by_field' => 'Db', ], [ 'column_name' => __('Command'), diff --git a/templates/server/status/processes/list.twig b/templates/server/status/processes/list.twig index 4492f3b1a5..4a97a8adcd 100644 --- a/templates/server/status/processes/list.twig +++ b/templates/server/status/processes/list.twig @@ -45,11 +45,25 @@ {{ row.id }} - {{ row.user }} + + + {{ row.user }} + + {{ row.host }} {% if row.db != '' %} - {{ row.db }} + + {{ row.db }} + {% else %} {% trans 'None' %} {% endif %} diff --git a/test/classes/Controllers/Server/Status/ProcessesControllerTest.php b/test/classes/Controllers/Server/Status/ProcessesControllerTest.php index 324d9cc64e..2102ba3bce 100644 --- a/test/classes/Controllers/Server/Status/ProcessesControllerTest.php +++ b/test/classes/Controllers/Server/Status/ProcessesControllerTest.php @@ -77,7 +77,7 @@ class ProcessesControllerTest extends AbstractTestCase $_POST['full'] = '1'; $_POST['column_name'] = 'Database'; - $_POST['order_by_field'] = 'db'; + $_POST['order_by_field'] = 'Db'; $_POST['sort_order'] = 'ASC'; $this->dummyDbi->addSelectDb('mysql'); From e9a5ec01f5ceab7ab9614570f4ade23010a65624 Mon Sep 17 00:00:00 2001 From: Liviu-Mihail Concioiu Date: Mon, 30 May 2022 00:39:39 +0200 Subject: [PATCH 2/5] Revert "Fix database names dissapearing from Processes tab" This reverts commit af4434dee2772422f92a2414b7938a7618133016. --- libraries/classes/Server/Status/Processes.php | 23 +++++++++++-------- templates/server/status/processes/list.twig | 18 ++------------- .../Server/Status/ProcessesControllerTest.php | 2 +- 3 files changed, 17 insertions(+), 26 deletions(-) diff --git a/libraries/classes/Server/Status/Processes.php b/libraries/classes/Server/Status/Processes.php index 19b9b26a17..3ac414d8d1 100644 --- a/libraries/classes/Server/Status/Processes.php +++ b/libraries/classes/Server/Status/Processes.php @@ -70,21 +70,26 @@ final class Processes while ($process = $result->fetchAssoc()) { // Array keys need to modify due to the way it has used // to display column values - foreach (array_keys($process) as $key) { - $newKey = ucfirst(mb_strtolower($key)); - if ($newKey === $key) { - continue; - } + if ( + (! empty($params['order_by_field']) && ! empty($params['sort_order'])) + || ! empty($params['showExecuting']) + ) { + foreach (array_keys($process) as $key) { + $newKey = ucfirst(mb_strtolower($key)); + if ($newKey === $key) { + continue; + } - $process[$newKey] = $process[$key]; - unset($process[$key]); + $process[$newKey] = $process[$key]; + unset($process[$key]); + } } $rows[] = [ 'id' => $process['Id'], 'user' => $process['User'], 'host' => $process['Host'], - 'db' => ! isset($process['Db']) || strlen($process['Db']) === 0 ? '' : $process['Db'], + 'db' => ! isset($process['db']) || strlen($process['db']) === 0 ? '' : $process['db'], 'command' => $process['Command'], 'time' => $process['Time'], 'state' => ! empty($process['State']) ? $process['State'] : '---', @@ -119,7 +124,7 @@ final class Processes ], [ 'column_name' => __('Database'), - 'order_by_field' => 'Db', + 'order_by_field' => 'db', ], [ 'column_name' => __('Command'), diff --git a/templates/server/status/processes/list.twig b/templates/server/status/processes/list.twig index 4a97a8adcd..4492f3b1a5 100644 --- a/templates/server/status/processes/list.twig +++ b/templates/server/status/processes/list.twig @@ -45,25 +45,11 @@ {{ row.id }} - - - {{ row.user }} - - + {{ row.user }} {{ row.host }} {% if row.db != '' %} - - {{ row.db }} - + {{ row.db }} {% else %} {% trans 'None' %} {% endif %} diff --git a/test/classes/Controllers/Server/Status/ProcessesControllerTest.php b/test/classes/Controllers/Server/Status/ProcessesControllerTest.php index 2102ba3bce..324d9cc64e 100644 --- a/test/classes/Controllers/Server/Status/ProcessesControllerTest.php +++ b/test/classes/Controllers/Server/Status/ProcessesControllerTest.php @@ -77,7 +77,7 @@ class ProcessesControllerTest extends AbstractTestCase $_POST['full'] = '1'; $_POST['column_name'] = 'Database'; - $_POST['order_by_field'] = 'Db'; + $_POST['order_by_field'] = 'db'; $_POST['sort_order'] = 'ASC'; $this->dummyDbi->addSelectDb('mysql'); From fb1afbe44489fce3746f28f34ac7250ffbf5bf62 Mon Sep 17 00:00:00 2001 From: Liviu-Mihail Concioiu Date: Mon, 30 May 2022 00:44:38 +0200 Subject: [PATCH 3/5] Fix database names dissapearing from Processes tab Signed-off-by: Liviu-Mihail Concioiu --- libraries/classes/Server/Status/Processes.php | 23 ++++++++----------- .../Server/Status/ProcessesControllerTest.php | 2 +- 2 files changed, 10 insertions(+), 15 deletions(-) diff --git a/libraries/classes/Server/Status/Processes.php b/libraries/classes/Server/Status/Processes.php index 3ac414d8d1..19b9b26a17 100644 --- a/libraries/classes/Server/Status/Processes.php +++ b/libraries/classes/Server/Status/Processes.php @@ -70,26 +70,21 @@ final class Processes while ($process = $result->fetchAssoc()) { // Array keys need to modify due to the way it has used // to display column values - if ( - (! empty($params['order_by_field']) && ! empty($params['sort_order'])) - || ! empty($params['showExecuting']) - ) { - foreach (array_keys($process) as $key) { - $newKey = ucfirst(mb_strtolower($key)); - if ($newKey === $key) { - continue; - } - - $process[$newKey] = $process[$key]; - unset($process[$key]); + foreach (array_keys($process) as $key) { + $newKey = ucfirst(mb_strtolower($key)); + if ($newKey === $key) { + continue; } + + $process[$newKey] = $process[$key]; + unset($process[$key]); } $rows[] = [ 'id' => $process['Id'], 'user' => $process['User'], 'host' => $process['Host'], - 'db' => ! isset($process['db']) || strlen($process['db']) === 0 ? '' : $process['db'], + 'db' => ! isset($process['Db']) || strlen($process['Db']) === 0 ? '' : $process['Db'], 'command' => $process['Command'], 'time' => $process['Time'], 'state' => ! empty($process['State']) ? $process['State'] : '---', @@ -124,7 +119,7 @@ final class Processes ], [ 'column_name' => __('Database'), - 'order_by_field' => 'db', + 'order_by_field' => 'Db', ], [ 'column_name' => __('Command'), diff --git a/test/classes/Controllers/Server/Status/ProcessesControllerTest.php b/test/classes/Controllers/Server/Status/ProcessesControllerTest.php index 324d9cc64e..2102ba3bce 100644 --- a/test/classes/Controllers/Server/Status/ProcessesControllerTest.php +++ b/test/classes/Controllers/Server/Status/ProcessesControllerTest.php @@ -77,7 +77,7 @@ class ProcessesControllerTest extends AbstractTestCase $_POST['full'] = '1'; $_POST['column_name'] = 'Database'; - $_POST['order_by_field'] = 'db'; + $_POST['order_by_field'] = 'Db'; $_POST['sort_order'] = 'ASC'; $this->dummyDbi->addSelectDb('mysql'); From e3f3c70481bfbaf86b54af922c61cee19a6f61a3 Mon Sep 17 00:00:00 2001 From: Liviu-Mihail Concioiu Date: Mon, 30 May 2022 00:55:14 +0200 Subject: [PATCH 4/5] Add links for user and database columns Signed-off-by: Liviu-Mihail Concioiu --- templates/server/status/processes/list.twig | 22 +++++++++++++++++++-- 1 file changed, 20 insertions(+), 2 deletions(-) diff --git a/templates/server/status/processes/list.twig b/templates/server/status/processes/list.twig index 4492f3b1a5..9a36b31485 100644 --- a/templates/server/status/processes/list.twig +++ b/templates/server/status/processes/list.twig @@ -45,11 +45,29 @@ {{ row.id }} - {{ row.user }} + + {% if row.user != 'system user' %} + + {{ row.user }} + + {% else %} + {{ row.user }} + {% endif %} + {{ row.host }} {% if row.db != '' %} - {{ row.db }} + + {{ row.db }} + {% else %} {% trans 'None' %} {% endif %} From 8ddfd4893ffd0730fa3cdadf451045b6871c4d85 Mon Sep 17 00:00:00 2001 From: Liviu-Mihail Concioiu Date: Mon, 30 May 2022 01:13:15 +0200 Subject: [PATCH 5/5] Show Progress column only on MariaDB Signed-off-by: Liviu-Mihail Concioiu --- libraries/classes/Server/Status/Processes.php | 16 ++++++++++------ templates/server/status/processes/list.twig | 4 +++- 2 files changed, 13 insertions(+), 7 deletions(-) diff --git a/libraries/classes/Server/Status/Processes.php b/libraries/classes/Server/Status/Processes.php index 19b9b26a17..7af9f34f39 100644 --- a/libraries/classes/Server/Status/Processes.php +++ b/libraries/classes/Server/Status/Processes.php @@ -133,14 +133,18 @@ final class Processes 'column_name' => __('Status'), 'order_by_field' => 'State', ], - [ + ]; + + if ($this->dbi->isMariaDB()) { + $sortableColumns[] = [ 'column_name' => __('Progress'), 'order_by_field' => 'Progress', - ], - [ - 'column_name' => __('SQL query'), - 'order_by_field' => 'Info', - ], + ]; + } + + $sortableColumns[] = [ + 'column_name' => __('SQL query'), + 'order_by_field' => 'Info', ]; $sortableColCount = count($sortableColumns); diff --git a/templates/server/status/processes/list.twig b/templates/server/status/processes/list.twig index 9a36b31485..44ed19769a 100644 --- a/templates/server/status/processes/list.twig +++ b/templates/server/status/processes/list.twig @@ -75,7 +75,9 @@ {{ row.command }} {{ row.time }} {{ row.state }} - {{ row.progress }} + {% if is_mariadb %} + {{ row.progress }} + {% endif %} {{ row.info|raw }} {% endfor %}