From beb1bdb31fa3f067c2848d71d9a8c97c353ce50b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fran=C3=A7ois-Xavier=20Talbot?= <108630700+fetchfern@users.noreply.github.com> Date: Tue, 30 Sep 2025 15:36:41 +0100 Subject: [PATCH] Skip synchronizing transactions to Anrok if missing payment intent ID (#4446) * Skip succeeded txns with no payment platform ID * chore: query cache, clippy, fmt --- ...a5351276138443870b98a10aa94f4d878a6c8fa4d8ed5d718196.json} | 4 ++-- apps/labrinth/src/database/models/charge_item.rs | 1 + 2 files changed, 3 insertions(+), 2 deletions(-) rename apps/labrinth/.sqlx/{query-8b4979c9f0eb427d5f8a0e4c4e89eb8127f1cb3cd07f89fc2d206e3b5c8805f6.json => query-43667ed4b45ca5351276138443870b98a10aa94f4d878a6c8fa4d8ed5d718196.json} (93%) diff --git a/apps/labrinth/.sqlx/query-8b4979c9f0eb427d5f8a0e4c4e89eb8127f1cb3cd07f89fc2d206e3b5c8805f6.json b/apps/labrinth/.sqlx/query-43667ed4b45ca5351276138443870b98a10aa94f4d878a6c8fa4d8ed5d718196.json similarity index 93% rename from apps/labrinth/.sqlx/query-8b4979c9f0eb427d5f8a0e4c4e89eb8127f1cb3cd07f89fc2d206e3b5c8805f6.json rename to apps/labrinth/.sqlx/query-43667ed4b45ca5351276138443870b98a10aa94f4d878a6c8fa4d8ed5d718196.json index d79efd64..e9cc40f0 100644 --- a/apps/labrinth/.sqlx/query-8b4979c9f0eb427d5f8a0e4c4e89eb8127f1cb3cd07f89fc2d206e3b5c8805f6.json +++ b/apps/labrinth/.sqlx/query-43667ed4b45ca5351276138443870b98a10aa94f4d878a6c8fa4d8ed5d718196.json @@ -1,6 +1,6 @@ { "db_name": "PostgreSQL", - "query": "\n SELECT\n charges.id, charges.user_id, charges.price_id, charges.amount, charges.currency_code, charges.status, charges.due, charges.last_attempt,\n charges.charge_type, charges.subscription_id, charges.tax_amount, charges.tax_platform_id,\n -- Workaround for https://github.com/launchbadge/sqlx/issues/3336\n charges.subscription_interval AS \"subscription_interval?\",\n charges.payment_platform,\n charges.payment_platform_id AS \"payment_platform_id?\",\n charges.parent_charge_id AS \"parent_charge_id?\",\n charges.net AS \"net?\",\n\t\t\t\tcharges.tax_last_updated AS \"tax_last_updated?\",\n\t\t\t\tcharges.tax_drift_loss AS \"tax_drift_loss?\"\n FROM charges\n \n\t\t\tWHERE\n\t\t\t status = 'succeeded'\n\t\t\t AND tax_platform_id IS NULL\n\t\t\tORDER BY due ASC\n\t\t\tFOR NO KEY UPDATE SKIP LOCKED\n\t\t\tLIMIT $1\n\t\t\t", + "query": "\n SELECT\n charges.id, charges.user_id, charges.price_id, charges.amount, charges.currency_code, charges.status, charges.due, charges.last_attempt,\n charges.charge_type, charges.subscription_id, charges.tax_amount, charges.tax_platform_id,\n -- Workaround for https://github.com/launchbadge/sqlx/issues/3336\n charges.subscription_interval AS \"subscription_interval?\",\n charges.payment_platform,\n charges.payment_platform_id AS \"payment_platform_id?\",\n charges.parent_charge_id AS \"parent_charge_id?\",\n charges.net AS \"net?\",\n\t\t\t\tcharges.tax_last_updated AS \"tax_last_updated?\",\n\t\t\t\tcharges.tax_drift_loss AS \"tax_drift_loss?\"\n FROM charges\n \n\t\t\tWHERE\n\t\t\t status = 'succeeded'\n\t\t\t AND tax_platform_id IS NULL\n AND payment_platform_id IS NOT NULL\n\t\t\tORDER BY due ASC\n\t\t\tFOR NO KEY UPDATE SKIP LOCKED\n\t\t\tLIMIT $1\n\t\t\t", "describe": { "columns": [ { @@ -126,5 +126,5 @@ true ] }, - "hash": "8b4979c9f0eb427d5f8a0e4c4e89eb8127f1cb3cd07f89fc2d206e3b5c8805f6" + "hash": "43667ed4b45ca5351276138443870b98a10aa94f4d878a6c8fa4d8ed5d718196" } diff --git a/apps/labrinth/src/database/models/charge_item.rs b/apps/labrinth/src/database/models/charge_item.rs index b619e3ad..d994bc6b 100644 --- a/apps/labrinth/src/database/models/charge_item.rs +++ b/apps/labrinth/src/database/models/charge_item.rs @@ -351,6 +351,7 @@ impl DBCharge { WHERE status = 'succeeded' AND tax_platform_id IS NULL + AND payment_platform_id IS NOT NULL ORDER BY due ASC FOR NO KEY UPDATE SKIP LOCKED LIMIT $1