On Thu, Dec 15, 2016 at 03:14:47PM -0800, Ben Pfaff wrote:

> This was implemented because it led to databases that couldn't be read
> from disk upon restart.  The code comment gives more of the story:
> 
> +    if (ovsdb_base_type_is_strong_ref(base) && !refTable->is_root) {
> +        /* We cannot allow a strong reference to a non-root table to be
> +         * ephemeral: if it is the only reference to a row, then replaying 
> the
> +         * database log from disk will cause the referenced row to be 
> deleted,
> +         * even though it did exist in memory.  If there are references to 
> that
> +         * row later in the log (to modify it, to delete it, or just to point
> +         * to it), then this will yield a transaction error. */
> +        column->persistent = true;
> +    }

Aha...

Thanks Ben!

Marcelo
_______________________________________________
dev mailing list
[email protected]
https://mail.openvswitch.org/mailman/listinfo/ovs-dev

Reply via email to