All of lore.kernel.org
 help / color / mirror / Atom feed
From: Junio C Hamano <gitster@pobox.com>
To: Michael Haggerty <mhagger@alum.mit.edu>
Cc: "Stefan Beller" <sbeller@google.com>,
	"Ronnie Sahlberg" <ronniesahlberg@gmail.com>,
	"Jonathan Nieder" <jrnieder@gmail.com>,
	"Nguyễn Thái Ngọc Duy" <pclouds@gmail.com>,
	git@vger.kernel.org
Subject: Re: [PATCH 00/11] Allow reference values to be checked in a transaction
Date: Mon, 09 Feb 2015 10:41:08 -0800	[thread overview]
Message-ID: <xmqqtwyvapx7.fsf@gitster.dls.corp.google.com> (raw)
In-Reply-To: <1423412045-15616-1-git-send-email-mhagger@alum.mit.edu> (Michael Haggerty's message of "Sun, 8 Feb 2015 17:13:54 +0100")

Michael Haggerty <mhagger@alum.mit.edu> writes:

> The main purpose of this series is to simplify the interface to
> reference transactions as follows:
>
> * Remove the need to supply an explicit have_old parameter to
>   ref_transaction_update() and ref_transaction_delete(). Instead,
>   check the old_sha1 if and only if it is non-NULL.
>
> * Allow NULL to be supplied to ref_transaction_update() as new_sha1,
>   in which case old_sha1 will be verified under lock, but the
>   reference's value will not be altered.
>
> * Add a function ref_transaction_verify(), which verifies the current
>   value of a reference without changing it.
>
> * Make the similarity between ref_transaction_update() and
>   update_ref() more obvious.
>
> Along the way, it fixes a race that could happen if two processes try
> to create an orphan commit at the same time.
>
> This patch series applies on top of master merged together with
> sb/atomic-push, which in turn depends on mh/reflog-expire.

I am a bit puzzled by your intentions, so help me out.

I see that your understanding is that Stefan will be rerolling the
push atomicity thing; wouldn't we then want to have a "fix and
clean" topic like this one first and build the push atomicity thing
on top instead?

In other words, would it make sense to extend mh/reflog-expire (in
'next') topic with commits from "Fix some problems with reflog
expiration (8 patches)" series and this series to fix and clean it?

We may even want to rebase/reroll mh/reflog-expire on top of v2.3
while doing so to adjust to the transaction stuff, if that makes
some of the changes in the two new series unnecessary (if these "fix
and clean up" changes made in mh/reflog-expire in 'next', that is).

  parent reply	other threads:[~2015-02-09 18:41 UTC|newest]

Thread overview: 35+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-02-08 16:13 [PATCH 00/11] Allow reference values to be checked in a transaction Michael Haggerty
2015-02-08 16:13 ` [PATCH 01/11] refs: move REF_DELETING to refs.c Michael Haggerty
2015-02-09 18:09   ` Stefan Beller
2015-02-08 16:13 ` [PATCH 02/11] refs: remove the gap in the REF_* constant values Michael Haggerty
2015-02-09 18:14   ` Stefan Beller
2015-02-08 16:13 ` [PATCH 03/11] struct ref_update: move "have_old" into "flags" Michael Haggerty
2015-02-08 16:13 ` [PATCH 04/11] ref_transaction_update(): remove "have_old" parameter Michael Haggerty
2015-02-09 18:20   ` Stefan Beller
2015-02-11 15:32     ` Michael Haggerty
2015-02-08 16:13 ` [PATCH 05/11] ref_transaction_delete(): " Michael Haggerty
2015-02-09 18:22   ` Stefan Beller
2015-02-08 16:14 ` [PATCH 06/11] commit: add tests of commit races Michael Haggerty
2015-02-09 18:31   ` Stefan Beller
2015-02-10 19:12     ` Junio C Hamano
2015-02-11 15:05       ` Michael Haggerty
2015-02-11 18:10         ` Junio C Hamano
2015-02-11 18:24           ` Stefan Beller
2015-02-11 18:54             ` Junio C Hamano
2015-02-08 16:14 ` [PATCH 07/11] commit: avoid race when creating orphan commits Michael Haggerty
2015-02-09 18:35   ` Stefan Beller
2015-02-11 15:47     ` Michael Haggerty
2015-02-08 16:14 ` [PATCH 08/11] ref_transaction_create(): check that new_sha1 is valid Michael Haggerty
2015-02-09 18:35   ` Stefan Beller
2015-02-08 16:14 ` [PATCH 09/11] ref_transaction_delete(): check that old_sha1 is not null_sha1 Michael Haggerty
2015-02-09 18:37   ` Stefan Beller
2015-02-08 16:14 ` [PATCH 10/11] ref_transaction_verify(): new function to check a reference's value Michael Haggerty
2015-02-09 18:50   ` Stefan Beller
2015-02-11 16:11     ` Michael Haggerty
2015-02-08 16:14 ` [PATCH 11/11] update_ref(): improve documentation Michael Haggerty
2015-02-09 18:51   ` Stefan Beller
2015-02-09 18:41 ` Junio C Hamano [this message]
2015-02-09 19:05   ` [PATCH 00/11] Allow reference values to be checked in a transaction Stefan Beller
2015-02-09 20:40     ` Michael Haggerty
2015-02-09 20:41       ` Stefan Beller
2015-02-09 20:45       ` Junio C Hamano

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=xmqqtwyvapx7.fsf@gitster.dls.corp.google.com \
    --to=gitster@pobox.com \
    --cc=git@vger.kernel.org \
    --cc=jrnieder@gmail.com \
    --cc=mhagger@alum.mit.edu \
    --cc=pclouds@gmail.com \
    --cc=ronniesahlberg@gmail.com \
    --cc=sbeller@google.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.