git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [PATCH 2/2] http-push: remove MOVE step after PUT when sending objects to server

From
Ray Chuan <rctay89@gmail.com>
Date
Jan 18, 2009, 03:19 UTC
Message-ID
<be6fef0d0901171919ub28dda7ref6443abec3627aa@mail.gmail.com>
In-Reply-To
<7viqod5thi.fsf@gitster.siamese.dyndns.org>
Hi,
On Sun, Jan 18, 2009 at 12:48 AM, Junio C Hamano <gitster@pobox.com> wrote:
Show 12 quoted lines
> "Ray Chuan" <rctay89@gmail.com> writes:
>
>> Currently, git PUTs to
>>
>>  /repo.git/objects/1a/1a2b...9z_opaquelocktoken:1234-....
>>
>> then MOVEs to
>>
>>  /repo.git/objects/1a/1a2b...9z
>>
>> This is needless. In fact, the only time MOVE requests are sent is for
>> this sole purpose (ie. of renaming an object).

this would be my "true" reason. i do believe PUTting to a "temporary" file (ie with '__opaquelocktoken:1234-....' appended) to be a needless step.

Show 9 quoted lines
>> A concern raised was repository corruption in the event of failure
>> during PUT. "put && move" won't afford any more protection than using
>> simply "put", since info/refs is not updated if a PUT fails, so there
>> is no cause for concern.
>
> That's a completely bogus reasoning.  Normal operation inside the
> repository that was pushed into won't look at info/refs at all.
>
> The true reason you want to avoid put-then-move is...?

i mentioned this "repository corruption" issue as it was raised previously by Johannes (towards the bottom):

  http://article.gmane.org/gmane.comp.version-control.git/106031
-- 
Cheers,
Ray Chuan
Previous: Junio C HamanoNext: Johannes Schindelin
Message 3 of 10 in “http-push: remove MOVE step after PUT when sending objects to server”
  1. 2/2 http-push: remove MOVE step after PUT when sending objects to serverRay Chuan, Jan 17, 2009
  2. Junio C HamanoJan 18, 2009
  3. Ray ChuanJan 18, 2009
  4. Johannes SchindelinJan 18, 2009
  5. Junio C HamanoJan 18, 2009
  6. Johannes SchindelinJan 18, 2009
  7. Junio C HamanoJan 18, 2009
  8. Johannes SchindelinJan 18, 2009
  9. Sverre RabbelierJan 19, 2009
  10. Junio C HamanoJan 19, 2009

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.