Thanks. I applied this to master, as follows:
On Mon, Apr 08, 2013 at 11:07:28AM +0800, Yeming Zhao wrote: > Sorry for the delayed response. > > Yes your fix is correct and I tested that in my experiment. --8<--------------------------cut here-------------------------->8-- From: Ben Pfaff <b...@nicira.com> Date: Mon, 8 Apr 2013 10:44:40 -0700 Subject: [PATCH] python.ovs.db.idl: Fix Row.delete() of a row already committed to the db. Row.delete() handled the case of deleting a row that was added within the current transaction, but not yet committed, but it did not correctly handle the case of deleting a row that belonged to the database before the transaction started. This fixes the problem. Reported-by: Yeming Zhao <zhaoyem...@gmail.com> Tested-by: Yeming Zhao <zhaoyem...@gmail.com> Signed-off-by: Ben Pfaff <b...@nicira.com> --- AUTHORS | 1 + python/ovs/db/idl.py | 4 +++- 2 files changed, 4 insertions(+), 1 deletions(-) diff --git a/AUTHORS b/AUTHORS index 2ca0c2b..68bcf01 100644 --- a/AUTHORS +++ b/AUTHORS @@ -197,6 +197,7 @@ Vishal Swarankar vishal.swarn...@gmail.com Vjekoslav Brajkovic bal...@cs.washington.edu Voravit T. vora...@kth.se YAMAMOTO Takashi yamam...@valinux.co.jp +Yeming Zhao zhaoyem...@gmail.com Yongqiang Liu liuyq7...@gmail.com kk yap yap...@stanford.edu likunyun kunyu...@hotmail.com diff --git a/python/ovs/db/idl.py b/python/ovs/db/idl.py index 9e9bf0f..55fbcba 100644 --- a/python/ovs/db/idl.py +++ b/python/ovs/db/idl.py @@ -1,4 +1,4 @@ -# Copyright (c) 2009, 2010, 2011, 2012 Nicira, Inc. +# Copyright (c) 2009, 2010, 2011, 2012, 2013 Nicira, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -610,6 +610,8 @@ class Row(object): assert self._changes is not None if self._data is None: del self._idl.txn._txn_rows[self.uuid] + else: + self._idl.txn._txn_rows[self.uuid] = self self.__dict__["_changes"] = None del self._table.rows[self.uuid] -- 1.7.2.5 _______________________________________________ dev mailing list dev@openvswitch.org http://openvswitch.org/mailman/listinfo/dev