On 10 September 2016 at 21:23, 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>

Thanks for looking into this, it fixes the issue.

Tested-by: Joe Stringer <j...@ovn.org>
_______________________________________________
dev mailing list
dev@openvswitch.org
http://openvswitch.org/mailman/listinfo/dev

Reply via email to