Re: Lockless Refs?
- From
Jeff King <peff@peff.net>
- Date
- Dec 29, 2012, 08:16 UTC
- Message-ID
- <20121229081657.GE15408@sigill.intra.peff.net>
- In-Reply-To
- <7vhan6jdx3.fsf@alter.siamese.dyndns.org>
On Fri, Dec 28, 2012 at 09:15:52AM -0800, Junio C Hamano wrote:
Show 18 quoted lines
> Martin Fick <mfick@codeaurora.org> writes: > > > Hmm, actually I believe that with a small modification to the > > semantics described here it would be possible to make multi > > repo/branch commits work.... > > > > Shawn talked about adding multi repo/branch transaction > > semantics to jgit, this might be something that git wants to > > support also at some point? > > Shawn may have talked about it and you may have listened to it, but > others wouldn't have any idea what kind of "multi repo/branch > transaction" you are talking about. Is it about "I want to push > this ref to that repo and push this other ref to that other repo", > in what situation will it be used/useful, what are the failure > modes, what are failure tolerances by the expected use cases, ...? > > Care to explain?
I cannot speak for Martin, but I am assuming the point is to atomically update 2 (or more) refs on the same repo. That is, if I have a branch "refs/heads/foo" and a ref pointing to meta-information (say, notes about commits in foo, in "refs/notes/meta/foo"), I would want to "git push" them, and only update them if _both_ will succeed, and otherwise fail and update nothing.
I think Shawn mentioned this at the last GitTogether as a stumbling block for pushing more of Gerrit's meta-information as refs over the git protocol. But I might be mis-remembering.
-Peff