From e28ad8b32c9df02ff473bf2cb9c9f5f846154438 Mon Sep 17 00:00:00 2001 From: Gregoo Date: Mon, 10 Feb 2025 16:42:23 +0100 Subject: [PATCH] Fix orphaned parts blocking database upgrade --- CHANGELOG.md | 4 ++++ bricktracker/sql/migrations/0011.sql | 13 +++++++++++++ bricktracker/version.py | 2 +- compose.legacy.yml | 2 +- compose.yaml | 2 +- 5 files changed, 20 insertions(+), 3 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 6840795..033e95f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,9 @@ # Changelog +## 1.2.2: + +This release fixes a bug where orphaned parts in the `inventory` table are blocking the database upgrade. + ## 1.2.1: This release fixes a bug where you could not add a set if no metadata was configured. diff --git a/bricktracker/sql/migrations/0011.sql b/bricktracker/sql/migrations/0011.sql index 54962f3..eed3d11 100644 --- a/bricktracker/sql/migrations/0011.sql +++ b/bricktracker/sql/migrations/0011.sql @@ -4,6 +4,19 @@ PRAGMA foreign_keys = ON; BEGIN TRANSACTION; +-- Fix: somehow a deletion bug was introduced in an older release? +DELETE FROM "inventory" +WHERE "inventory"."u_id" NOT IN ( + SELECT "bricktracker_sets"."id" + FROM "bricktracker_sets" +); + +DELETE FROM "missing" +WHERE "missing"."u_id" NOT IN ( + SELECT "bricktracker_sets"."id" + FROM "bricktracker_sets" +); + -- Create a Bricktracker parts table: an amount of parts linked to a Bricktracker set CREATE TABLE "bricktracker_parts" ( "id" TEXT NOT NULL, diff --git a/bricktracker/version.py b/bricktracker/version.py index 30a339d..323ef94 100644 --- a/bricktracker/version.py +++ b/bricktracker/version.py @@ -1,4 +1,4 @@ from typing import Final -__version__: Final[str] = '1.2.1' +__version__: Final[str] = '1.2.2' __database_version__: Final[int] = 15 diff --git a/compose.legacy.yml b/compose.legacy.yml index b6125a9..d025599 100644 --- a/compose.legacy.yml +++ b/compose.legacy.yml @@ -2,7 +2,7 @@ services: bricktracker: container_name: BrickTracker restart: unless-stopped - image: gitea.baerentsen.space/frederikbaerentsen/bricktracker:1.2.1 + image: gitea.baerentsen.space/frederikbaerentsen/bricktracker:1.2.2 ports: - "3333:3333" volumes: diff --git a/compose.yaml b/compose.yaml index 06be916..535c64f 100644 --- a/compose.yaml +++ b/compose.yaml @@ -2,7 +2,7 @@ services: bricktracker: container_name: BrickTracker restart: unless-stopped - image: gitea.baerentsen.space/frederikbaerentsen/bricktracker:1.2.1 + image: gitea.baerentsen.space/frederikbaerentsen/bricktracker:1.2.2 ports: - "3333:3333" volumes: