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.