X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=ovsdb%2Ftransaction.c;h=be40df9a853e2089c2ccc863b0ecbcc99f2f24e8;hb=HEAD;hp=4cbe9f051e69db891246983479eee1e82824565f;hpb=0a407cd6f2129793940bfbd42dc39fe97e93e14b;p=sliver-openvswitch.git diff --git a/ovsdb/transaction.c b/ovsdb/transaction.c index 4cbe9f051..be40df9a8 100644 --- a/ovsdb/transaction.c +++ b/ovsdb/transaction.c @@ -1,4 +1,4 @@ -/* Copyright (c) 2009, 2010, 2011, 2012, 2013 Nicira, Inc. +/* Copyright (c) 2009, 2010, 2011, 2012, 2013, 2014 Nicira, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -533,6 +533,7 @@ assess_weak_refs(struct ovsdb_txn *txn, struct ovsdb_txn_row *txn_row) } if (datum->n != orig_n) { + bitmap_set1(txn_row->changed, OVSDB_COL_VERSION); bitmap_set1(txn_row->changed, column->index); ovsdb_datum_sort_assert(datum, column->type.key.type); if (datum->n < column->type.n_min) { @@ -653,7 +654,7 @@ duplicate_index_row__(const struct ovsdb_column_set *index, ds_put_format(out, "%s row, with UUID "UUID_FMT", ", title, UUID_ARGS(ovsdb_row_get_uuid(row))); if (!row->txn_row - || bitmap_scan(row->txn_row->changed, 0, n_columns) == n_columns) { + || bitmap_scan(row->txn_row->changed, 1, 0, n_columns) == n_columns) { ds_put_cstr(out, "existed in the database before this " "transaction and was not modified by the transaction."); } else if (!row->txn_row->old) {