From 3bb11dc4873e84ffc749e7be97368172b1a3e924 Mon Sep 17 00:00:00 2001 From: callebtc <93376500+callebtc@users.noreply.github.com> Date: Tue, 6 Dec 2022 16:21:19 +0100 Subject: [PATCH] separate migrations --- lnbits/core/migrations.py | 10 +++++++--- lnbits/db.py | 2 ++ 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/lnbits/core/migrations.py b/lnbits/core/migrations.py index 9853c33b..9c237349 100644 --- a/lnbits/core/migrations.py +++ b/lnbits/core/migrations.py @@ -197,14 +197,18 @@ async def m005_balance_check_balance_notify(db): async def m006_add_invoice_expiry_to_apipayments(db): """ - Adds invoice expiry column to apipayments and precomputes them for - existing entries + Adds invoice expiry column to apipayments. """ try: await db.execute("ALTER TABLE apipayments ADD COLUMN expiry TIMESTAMP") except OperationalError: pass + +async def m007_set_invoice_expiries(db): + """ + Precomputes invoice expiry for existing pending incoming payments. + """ try: rows = await ( await db.execute( @@ -232,7 +236,7 @@ async def m006_add_invoice_expiry_to_apipayments(db): invoice.date + invoice.expiry ) logger.info( - f"Mirgraion: {i}/{len(rows)} setting expiry of invoice {invoice.payment_hash} to {expiration_date}" + f"Mirgraion: {i+1}/{len(rows)} setting expiry of invoice {invoice.payment_hash} to {expiration_date}" ) await db.execute( """ diff --git a/lnbits/db.py b/lnbits/db.py index e4ee3882..7d294197 100644 --- a/lnbits/db.py +++ b/lnbits/db.py @@ -132,6 +132,8 @@ class Database(Compat): import psycopg2 # type: ignore def _parse_timestamp(value, _): + if value is None: + return None f = "%Y-%m-%d %H:%M:%S.%f" if not "." in value: f = "%Y-%m-%d %H:%M:%S"