From 565a057d649288058ff3a92626dd227a89676ca9 Mon Sep 17 00:00:00 2001 From: fogelito Date: Wed, 8 Mar 2023 09:40:23 +0200 Subject: [PATCH 1/3] change char to varchar --- src/Database/Adapter/MariaDB.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Database/Adapter/MariaDB.php b/src/Database/Adapter/MariaDB.php index 12d376d39..43e8ae132 100644 --- a/src/Database/Adapter/MariaDB.php +++ b/src/Database/Adapter/MariaDB.php @@ -102,7 +102,7 @@ public function createCollection(string $name, array $attributes = [], array $in $this->getPDO() ->prepare("CREATE TABLE IF NOT EXISTS `{$database}`.`{$namespace}_{$id}` ( `_id` int(11) unsigned NOT NULL AUTO_INCREMENT, - `_uid` CHAR(255) NOT NULL, + `_uid` VARCHAR(255) NOT NULL, `_createdAt` datetime(3) DEFAULT NULL, `_updatedAt` datetime(3) DEFAULT NULL, `_permissions` MEDIUMTEXT DEFAULT NULL, From 8879dfab03b03c308ea19f617d8ab7581a1ae25c Mon Sep 17 00:00:00 2001 From: fogelito Date: Wed, 8 Mar 2023 14:14:17 +0200 Subject: [PATCH 2/3] max value for varchar mb4 = 16120 --- src/Database/Adapter/MariaDB.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Database/Adapter/MariaDB.php b/src/Database/Adapter/MariaDB.php index 43e8ae132..b384a0a78 100644 --- a/src/Database/Adapter/MariaDB.php +++ b/src/Database/Adapter/MariaDB.php @@ -1067,7 +1067,7 @@ protected function getSQLType(string $type, int $size, bool $signed = true): str return 'MEDIUMTEXT'; } - if ($size > 16383) { + if ($size > 16120) { return 'TEXT'; } From 94ed8a294ec0b06c311ccf11d0f083e8faadcea5 Mon Sep 17 00:00:00 2001 From: fogelito Date: Wed, 8 Mar 2023 14:16:30 +0200 Subject: [PATCH 3/3] max value for varchar mb4 = 16120 --- src/Database/Adapter/Postgres.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Database/Adapter/Postgres.php b/src/Database/Adapter/Postgres.php index b83b0f2be..bc65d319f 100644 --- a/src/Database/Adapter/Postgres.php +++ b/src/Database/Adapter/Postgres.php @@ -1059,7 +1059,7 @@ protected function getSQLType(string $type, int $size, bool $signed = true): str switch ($type) { case Database::VAR_STRING: // $size = $size * 4; // Convert utf8mb4 size to bytes - if ($size > 16383) { + if ($size > 16120) { // consistency with MariaDB return 'TEXT'; }