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

Re: [Xen-devel] [PATCH OSSTEST v2] cs-adjust-flight: Add jobs-rename command which applies a perlop to job names

On Tue, 2016-01-19 at 14:44 +0000, Ian Jackson wrote:
> Ian Campbell writes ("Re: [PATCH OSSTEST v2] cs-adjust-flight: Add jobs-
> rename command which applies a perlop to job names"):
> > On Tue, 2016-01-19 at 14:25 +0000, Ian Jackson wrote:
> > > And if that happens, there might be entries in the steps table which
> > > ought also to be renamed.ÂÂIf you don't rename them you will trip the
> > > foreign key constraint.
> > 
> > But fail immediately in this invocation of cs-adjust-flight with a
> > (hopefully) comprehensible SQL error spew?
> Yes.
> > Or is that the distinction between INNTIALLY IMMEDIATE vs DEFERRED you
> > were
> > trying to get at?
> Indeed.ÂÂWith the current (and likely future) configuration of the
> constraint, the UPDATE statement will fail and the transaction will
> not commit.ÂÂSo none of the updates in the invocation will take
> effect.
> > Having stuffed the flight in this way would it have effects elsewhere
> > (i.e.
> > on production flights) or do you just get to keep both pieces of this
> > particular flight?
> If the constraints were changed, you might manage to use
> cs-adjust-flight to produce strangeness in the flight you were
> adjusting.ÂÂIf that flight were later exposed to archaeologists it
> might contain lies.ÂÂTBH this seems far-fetched.

Indeed, especially since:

 * Archaeologists typically don't look at play flights (or if you ask them
   to you should expect breakage).

 * If a real flight somehow got into this state (via running:N or being
   constructing) then I would expect it would trip over the constraint
   before it could complete, and therefore never get to its intended
   blessing in the db, and would again be ignored by archaeologists in
   general I think?

 * cs-adjust-flight already stops one from messing with a completed flight.



Xen-devel mailing list



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