[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] [OSSTEST PATCH 4/9] mg-schema-test-database: Borrow shares properly



On Thu, 2015-12-17 at 17:06 +0000, Ian Jackson wrote:
> Signed-off-by: Ian Jackson <Ian.Jackson@xxxxxxxxxxxxx>
> ---
> Âmg-schema-test-database |ÂÂÂ14 ++++++++++++--
> Â1 file changed, 12 insertions(+), 2 deletions(-)
> 
> diff --git a/mg-schema-test-database b/mg-schema-test-database
> index a4cb732..4e0ee68 100755
> --- a/mg-schema-test-database
> +++ b/mg-schema-test-database
> @@ -448,12 +448,22 @@ END
> Â     done
> Â
> Â     # As we copy, we note everything we're not borrowing as
> -     # belonging to the parent db.
> +     # belonging to the parent db.ÂÂWe borrow shares of a shared
> +     # resource.ÂÂIf we borrow only some rather than all of the
> +     # shares, neither DB will be able to unshare it.

This is what actually happens, rather than this comment explaining a thing
we are avoiding, right?

I ask because although the text (and the use of "properly" in the subject)
seems pretty clear it's the former I was surprised to find this code was
borrowing partial shares and therefore setting up such a situation. Given
the caveat below would it not be better to just never allow this? I suppose
that given the list of tasks to borrow came from the user this might be
considered a "keep both pieces" situation.

> +
> +     # In principle it might be possible to actually use different
> +     # shares of the same resource with different dbs.ÂÂHowever the
> +     # `sharetype' contains the osstest revision, which prevents
> +     # sharing between test and real versions of osstest code.
> +
> Â     cat >>$t.import <<END
> Â             $(make_xdbref_task $maindbname 'not borrowed' '' PARENT)
> Â             UPDATE resources
> Â                     SET owntaskid = $(taskid xdbref $maindbname)
> -                     WHERE owntaskid != $(borrowtaskid $task);
> +                     WHERE owntaskid != $(borrowtaskid $task)
> +                     ÂÂAND owntaskid != $(taskid magic shared)
> +                     ÂÂAND owntaskid != $(taskid magic preparing);
> Â             COMMIT;
> ÂEND
> Â

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.