On Sat, Sep 10, 2016 at 9:23 PM, Ben Pfaff <b...@ovn.org> wrote: > The code here wasn't careful about parsing JSON received from the remote > OVSDB server. It assumed, for example, that a row that the remote server > implied was new was actually new, without looking to see whether there was > already a row with that UUID. This commit improves this validation. It > also rewrites code that translated updates locally into calls into the > query engine, via JSON, into simple lookups by UUID. > > For me, this fixes a test failure in test 1866 > (ovsdb-server/active-backup-role-switching), which caused the following > valgrind report: > > ==18725== Process terminating with default action of signal 11 (SIGSEGV): > dumping core > ==18725== Access not within mapped region at address 0x0 > ==18725== at 0x43937E: ovsdb_datum_compare_3way (ovsdb-data.c:1626) > ==18725== by 0x439344: ovsdb_datum_equals (ovsdb-data.c:1616) > ==18725== by 0x4166CC: update_monitor_row_data (monitor.c:310) > ==18725== by 0x414A90: ovsdb_monitor_changes_update (monitor.c:1255) > ==18725== by 0x417009: ovsdb_monitor_change_cb (monitor.c:1339) > ==18725== by 0x41DB52: ovsdb_txn_for_each_change (transaction.c:906) > ==18725== by 0x416CC9: ovsdb_monitor_commit (monitor.c:1553) > ==18725== by 0x41D993: ovsdb_txn_commit_ (transaction.c:868) > ==18725== by 0x41D6F5: ovsdb_txn_commit (transaction.c:893) > ==18725== by 0x418185: process_notification (replication.c:576) > ==18725== by 0x417705: replication_run (replication.c:185) > ==18725== by 0x408240: main_loop (ovsdb-server.c:198) > ==18725== by 0x406432: main (ovsdb-server.c:429) > > I don't know the exact cause of the problem, but this new implementation > leaves me more confident due to its simplicity. > > Reported-by: Joe Stringer <j...@ovn.org> > Reported-at: http://openvswitch.org/pipermail/dev/2016-September/ > 079315.html > Fixes: 60e0cd041958 ("ovsdb: Replication usability improvements") > Signed-off-by: Ben Pfaff <b...@ovn.org> >
Acked-by: Andy Zhou <az...@ovn.org> Thanks for tracking this down the issue and for the simplification. Sorry for not jumpping on Joe's original report sonner. I did not have internet access from my laptop for the last few days. _______________________________________________ dev mailing list dev@openvswitch.org http://openvswitch.org/mailman/listinfo/dev