Skip to content

Commit 0792e0b

Browse files
alexhb1imnotjames
andauthored
fix(db): add explicit collation for icon map migration (#1944)
Co-authored-by: James Ward <james@notjam.es>
1 parent 9c59e91 commit 0792e0b

1 file changed

Lines changed: 5 additions & 4 deletions

File tree

backend/src/main/resources/db/migration/V144__Migrate_entity_icons_to_lucide.sql

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,8 @@
22
CREATE TEMPORARY TABLE prime_to_lucide_icon_map (
33
prime_icon VARCHAR(64) NOT NULL PRIMARY KEY,
44
lucide_icon VARCHAR(64) NOT NULL
5-
);
5+
) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
6+
-- Explicitly add character set / collation to handle improperly configured servers.
67

78
INSERT INTO prime_to_lucide_icon_map (prime_icon, lucide_icon) VALUES
89
('address-book', 'contact'),
@@ -322,21 +323,21 @@ INSERT INTO prime_to_lucide_icon_map (prime_icon, lucide_icon) VALUES
322323

323324
UPDATE library
324325
LEFT JOIN prime_to_lucide_icon_map
325-
ON REPLACE(REPLACE(library.icon, 'pi pi-', ''), 'pi-', '') = prime_to_lucide_icon_map.prime_icon
326+
ON REPLACE(REPLACE(library.icon, 'pi pi-', ''), 'pi-', '') = prime_to_lucide_icon_map.prime_icon COLLATE utf8mb4_general_ci
326327
SET library.icon = COALESCE(prime_to_lucide_icon_map.lucide_icon, IF(library.icon IS NULL, NULL, 'book')),
327328
library.icon_type = IF(library.icon IS NULL, NULL, 'LUCIDE')
328329
WHERE library.icon_type = 'PRIME_NG';
329330

330331
UPDATE shelf
331332
LEFT JOIN prime_to_lucide_icon_map
332-
ON REPLACE(REPLACE(shelf.icon, 'pi pi-', ''), 'pi-', '') = prime_to_lucide_icon_map.prime_icon
333+
ON REPLACE(REPLACE(shelf.icon, 'pi pi-', ''), 'pi-', '') = prime_to_lucide_icon_map.prime_icon COLLATE utf8mb4_general_ci
333334
SET shelf.icon = COALESCE(prime_to_lucide_icon_map.lucide_icon, IF(shelf.icon IS NULL, NULL, 'book')),
334335
shelf.icon_type = IF(shelf.icon IS NULL, NULL, 'LUCIDE')
335336
WHERE shelf.icon_type = 'PRIME_NG';
336337

337338
UPDATE magic_shelf
338339
LEFT JOIN prime_to_lucide_icon_map
339-
ON REPLACE(REPLACE(magic_shelf.icon, 'pi pi-', ''), 'pi-', '') = prime_to_lucide_icon_map.prime_icon
340+
ON REPLACE(REPLACE(magic_shelf.icon, 'pi pi-', ''), 'pi-', '') = prime_to_lucide_icon_map.prime_icon COLLATE utf8mb4_general_ci
340341
SET magic_shelf.icon = COALESCE(prime_to_lucide_icon_map.lucide_icon, IF(magic_shelf.icon IS NULL, NULL, 'book')),
341342
magic_shelf.icon_type = IF(magic_shelf.icon IS NULL, NULL, 'LUCIDE')
342343
WHERE magic_shelf.icon_type = 'PRIME_NG';

0 commit comments

Comments
 (0)