From 8b9ec771d02a91161595bc61af5e99f24f4e0e32 Mon Sep 17 00:00:00 2001 From: Alex Grintsvayg Date: Fri, 12 Jul 2019 21:49:07 -0400 Subject: [PATCH] commit every 10 inserts --- db/db.go | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/db/db.go b/db/db.go index 0b66b10..bfdef9c 100644 --- a/db/db.go +++ b/db/db.go @@ -526,18 +526,25 @@ BEGIN DECLARE minid BIGINT UNSIGNED DEFAULT 0; SELECT min(id) INTO minid FROM blob_ WHERE id < first_trigger_blob_id AND id > (SELECT coalesce(max(id),0) from blob_new where id < first_trigger_blob_id); wloop: WHILE minid is not null DO - #IF (i >= 100000) THEN + #IF (i >= 100) THEN # LEAVE wloop; #END IF; SET i = i + 1; IF (i % 5000 = 0) THEN - SELECT concat('loop ', i, ', id ', minid) as progress; + SELECT concat('loop ', i, ', id ', minid) as progress; END IF; - START TRANSACTION; + IF (i % 10 = 1) THEN # we start our loops on 1, like normal people + START TRANSACTION; + END IF; + INSERT INTO blob_new (id, hash, is_stored, length) SELECT id, hash, is_stored, length from blob_ where id = minid; - COMMIT; + + IF (i % 10 = 0) THEN + COMMIT; + END IF; + SELECT min(id) INTO minid FROM blob_ WHERE id < first_trigger_blob_id AND id > minid; END WHILE wloop; END$$