Transactions that are still incomplete (waiting for a reply from the server) are kept in the IDL's 'outstanding_txns' map. When a transaction is destroyed, ovsdb_idl_txn_destroy() will take care of removing the transaction from the 'outstanding_txns' map if the transaction was incomplete.
When destroying the IDL loop, instead of trying to abort the committing_txn which would set the state to "aborted", just disassemble it, such that ovsdb_idl_txn_destroy() properly cleans it up. Fixes: 53a540e5311c ("ovsdb-idl: ovsdb_idl_loop_destroy must also destroy the committing txn.") Signed-off-by: Dumitru Ceara <dce...@redhat.com> --- lib/ovsdb-idl.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/ovsdb-idl.c b/lib/ovsdb-idl.c index 46f51a527356..9064baa88a4b 100644 --- a/lib/ovsdb-idl.c +++ b/lib/ovsdb-idl.c @@ -4243,7 +4243,7 @@ ovsdb_idl_loop_destroy(struct ovsdb_idl_loop *loop) { if (loop) { if (loop->committing_txn) { - ovsdb_idl_txn_abort(loop->committing_txn); + ovsdb_idl_txn_disassemble(loop->committing_txn); ovsdb_idl_txn_destroy(loop->committing_txn); } ovsdb_idl_destroy(loop->idl); -- 2.27.0 _______________________________________________ dev mailing list d...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-dev