Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
Cloud:OpenStack:Newton:Staging
openstack-neutron
0001-Don-t-wait-on-TRY_AGAIN-when-calling-commi...
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File 0001-Don-t-wait-on-TRY_AGAIN-when-calling-commit_block.patch of Package openstack-neutron
From 742754bce3c9453f8c7186455a92e4f6d6b18ace Mon Sep 17 00:00:00 2001 From: Terry Wilson <twilson@redhat.com> Date: Wed, 15 Nov 2017 13:05:18 -0600 Subject: [PATCH] Don't wait on TRY_AGAIN when calling commit_block() commit_block() calls idl.run() already, so the seqno has already changed, and waiting again could potentially wait until a timeout occurs. From the ovs.db.idl docs: If the final status is Transaction.TRY_AGAIN, wait for Idl.change_seqno to change from the saved 'seqno' (it's possible that it's already changed, in which case the client should not wait at all), then start over from step 1. Only a call to Idl.run() will change the return value of Idl.change_seqno. (Transaction.commit_block() calls Idl.run().) NOTE(dmllr): backported to Newton Closes-Bug: #1627106 Change-Id: I1e5f4627f0488ba15ba2fb3509504bcf1b787b07 (cherry picked from commit 158ae06bce0f56e93677f94c59f81e5e76ee1ccc) --- ovsdbapp/backend/ovs_idl/transaction.py | 3 --- 1 file changed, 3 deletions(-) Index: neutron-9.4.2.dev21/neutron/agent/ovsdb/impl_idl.py =================================================================== --- neutron-9.4.2.dev21.orig/neutron/agent/ovsdb/impl_idl.py +++ neutron-9.4.2.dev21/neutron/agent/ovsdb/impl_idl.py @@ -103,12 +103,9 @@ class Transaction(api.Transaction): txn.abort() if not self.check_error: ctx.reraise = False - seqno = self.api.idl.change_seqno status = txn.commit_block() if status == txn.TRY_AGAIN: LOG.debug("OVSDB transaction returned TRY_AGAIN, retrying") - idlutils.wait_for_change(self.api.idl, self.time_remaining(), - seqno) continue elif status == txn.ERROR: msg = _("OVSDB Error: %s") % txn.get_error()
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor