From f075fe89452be519949d3311728d4f4b5bb5ddd3 Mon Sep 17 00:00:00 2001 From: ttt161 Date: Mon, 13 Apr 2026 15:43:58 +0300 Subject: [PATCH 1/2] fix sequence migration --- .../priv/migrations/sequence/1770994589112-copy-sequence.erl | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/apps/bender/priv/migrations/sequence/1770994589112-copy-sequence.erl b/apps/bender/priv/migrations/sequence/1770994589112-copy-sequence.erl index 5599bcd..809eb59 100644 --- a/apps/bender/priv/migrations/sequence/1770994589112-copy-sequence.erl +++ b/apps/bender/priv/migrations/sequence/1770994589112-copy-sequence.erl @@ -35,7 +35,9 @@ perform_batch(Connection, Offset, Limit) -> ), {ok, _} = epg_pool:query( Connection, - "INSERT INTO bender_sequence_values (id, value) VALUES " ++ Values + "INSERT INTO bender_sequence_values (id, value) VALUES " ++ Values ++ + " ON CONFLICT (id) DO UPDATE " + " SET value = GREATEST(EXCLUDED.value, bender_sequence_values.value)" ), perform_batch(Connection, Offset + erlang:length(Rows), Limit) end. From 7fa116f3dab209d9859ebdc7daaa7b30bad8cd07 Mon Sep 17 00:00:00 2001 From: ttt161 Date: Tue, 14 Apr 2026 08:36:04 +0300 Subject: [PATCH 2/2] fix sequence migration --- .../migrations/sequence/1770994589112-copy-sequence.erl | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/apps/bender/priv/migrations/sequence/1770994589112-copy-sequence.erl b/apps/bender/priv/migrations/sequence/1770994589112-copy-sequence.erl index 809eb59..b339fce 100644 --- a/apps/bender/priv/migrations/sequence/1770994589112-copy-sequence.erl +++ b/apps/bender/priv/migrations/sequence/1770994589112-copy-sequence.erl @@ -8,7 +8,7 @@ perform(Connection, MigrationOpts) -> perform_batch(Connection, 0, BatchSize). perform_batch(Connection, Offset, Limit) -> - SQL = "SELECT process_id, aux_state FROM bender_sequence_processes ORDER BY created_at OFFSET $1 LIMIT $2", + SQL = "SELECT process_id, aux_state FROM bender_sequence_processes ORDER BY ctid OFFSET $1 LIMIT $2", case epg_pool:query(Connection, SQL, [Offset, Limit]) of {ok, _, []} -> ok; @@ -35,9 +35,7 @@ perform_batch(Connection, Offset, Limit) -> ), {ok, _} = epg_pool:query( Connection, - "INSERT INTO bender_sequence_values (id, value) VALUES " ++ Values ++ - " ON CONFLICT (id) DO UPDATE " - " SET value = GREATEST(EXCLUDED.value, bender_sequence_values.value)" + "INSERT INTO bender_sequence_values (id, value) VALUES " ++ Values ), perform_batch(Connection, Offset + erlang:length(Rows), Limit) end.