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

Re: Problem pushing to a Novell share

From
Junio C Hamano <gitster@pobox.com>
Date
Feb 3, 2012, 19:33 UTC
Message-ID
<7vipjnpv94.fsf@alter.siamese.dyndns.org>
In-Reply-To
<CAJ4nRM2+u9OcLgJBN7+_rv1OiXETGNhozAfvYtj=hVNTfCMxhQ@mail.gmail.com>

[jc: just forwarding to the list --- the msysgit list might have been a better place to forward to, but I know msysgit folks read this list too, so...]

Rüdiger Kessel <ruediger.kessel@gmail.com> writes:

I have confimed that it is not a mingw problem. Direct calls to CreateFile() in kernel32.dll show the same behaviour.

On a Novel share I get Error 80 "File exists" if a directory does not exist, while I get Error 3 "Path not found" on a local drive

2012/2/3 Rüdiger Kessel <ruediger.kessel@gmail.com>:
 Well, it is a Novell bug, but what can we do?
 I studied it in detail and open() sets errno=EEXIST if the directory
 is missing on a Novell share causing git_mkstemp_mode looping 16k
 times and never creates the dir.
 The correct errno would be ENOENT, but that not what the systems is sending.
 So it is either using stat on the directory before trying to create
 the tmp-file or GIT cannot be used with Novell shares. What is it
 going to be?
 Protocolling the mkdir error handling I saw that git creates quite a
 number of new directories this way. Therefore my pessimistic approach
 might be too costly at the end.
Previous: Junio C Hamano
Message 4 of 4 in “Problem pushing to a Novell share”
  1. Rüdiger KesselFeb 2, 2012
  2. Junio C HamanoFeb 2, 2012
  3. Junio C HamanoFeb 3, 2012
  4. Junio C HamanoFeb 3, 2012

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.