On 11/03/2015 12:46 PM, John Snow wrote: > > > On 11/03/2015 10:22 AM, Stefan Hajnoczi wrote: >> On Fri, Oct 23, 2015 at 07:56:38PM -0400, John Snow wrote: >>> Welcome to V10! >>> >>> Where'd 8 and 9 go? Private off-list missives from Fam. >>> Now you, I, and everyone on qemu-devel are staring at V10. >>> >>> What's new in V10? >>> >>> I replaced the per-action "transactional-cancel" parameter with >>> a per-transaction paremeter named "err-cancel" which is implemented >>> as an enum in case we want to add new behaviors in the future, such >>> as a "jobs only" cancel mode. >>> >>> For now, it's "all" or "none", and if you use it with actions that >>> do not support the latent transactional cancel, you will receive >>> an error for your troubles. >> >> I left comments on a few patches. >> >> The "err-cancel" and "ActionCancelMode" naming does not describe the >> concept fully, since successful block jobs will also behave differently >> (waiting for each other to finish before fully completing). >> "blockjob-transactions" is the best name I can think of that describes >> the full concept rather than focus on just cancellation. >> > > There's two hard problems in Computer Science... > > I mean, cancellation certainly is the biggest change in net behavior, > though we are fiddling with the timings of the completion notices. > > OK, so continuing on my inability to name this feature ... > > blockjob-transactions = { individual, grouped, jobs-only } > > where we'd support "individual" as the default, > "grouped" is the forced cancellation mode, and > jobs-only is a hypothetical future mode that adds jobs to the group, and > ignoring non-jobs' inability to join the transaction. > > Still, it seems weird to have: > transaction 'properties': {'blockjob-transactions': 'grouped'}, > it feels redundant to me. > > > How about: > > completion-mode = { individual, grouped } > > Avoids repeating "Transaction" and does not hyperfocus on cancellation. >
Version "10.5" is on https://github.com/jnsnow/qemu.git - Rebased on master to play nice with the new QAPI checkins (#3, #12) - Fixed error path leak (#3) - Renamed the Transaction Property and enum values (#12, #13) as above ("completion-mode", "individual", "grouped") - Fixed a leak in the block_job_txn qtest (#14) If the names and QMP interface look good I'll publish as v11. --js >> Besides that I'm happy with the QMP interface. >>