]> git.ipfire.org Git - thirdparty/knot-resolver.git/commitdiff
utils/kr_cache_gc: re-initialize lmdb txn in case of error
authorTomas Krizek <tomas.krizek@nic.cz>
Wed, 15 May 2019 16:05:41 +0000 (18:05 +0200)
committerPetr Špaček <petr.spacek@nic.cz>
Wed, 3 Jul 2019 13:28:19 +0000 (15:28 +0200)
utils/kr_cache_gc/kr_cache_gc.c

index 14985ac99a7b683d3c574a2eb31043966f328251..fb448501e0b17ec31f8f2dd0fa7152d08f61d2bc 100644 (file)
@@ -228,6 +228,11 @@ int kr_cache_gc(kr_cache_gc_cfg_t *cfg)
                        break;
                default:
                        printf("Warning: skipping deleting because of error (%s)\n", knot_strerror(ret));
+                       api->txn_abort(&txn);
+                       ret = api->txn_begin(db, &txn, 0);
+                       if (ret != KNOT_EOK) {
+                               break;
+                       }
                        continue;
                }
                if ((cfg->rw_txn_items > 0 &&