[Fwd: Re: strange git delays]
From: James Utter <hidden>
Date: 2016-06-15 22:44:24
On Thu, 2008-03-20 at 14:53 -0700, Linus Torvalds wrote:
On Fri, 21 Mar 2008, James Utter wrote:quoted
james@timesink:~/testgit$ time git commit --message "initial commit" Created initial commit 4f4b3a3: initial commit 1 files changed, 1 insertions(+), 0 deletions(-) create mode 100644 hello real 0m10.008s user 0m0.000s sys 0m0.008sOk, that is almost exactly 10 seconds longer than it should take. And I can almost guarantee that it's something like a problem looking up your hostname or perhaps user identity - I would guess you have some name service problem. Do an strace -tT git commit --message "initial commit" on that git commit to make sure, but I would almost bet that it's when git does tget "getpwuid()" thing to get your name from the gecos fields, and you have some setup problem with nscd o similar. It might just go away if you set up your user name and email manually, ie try doing git config --global user.name "James Utter" git config --global user.email james.utter@gmail.com and see if that makes the delay go away. It probably tries to look up your login info from some non-existent NIS setup, and then times out after ten seconds and picks the data from your /etc/passwd file instead. (There can be other things that do similar things - misconfigured name servers etc can cause delay etc. So maybe I'm wrogn on blaming nscd, but it would be my first guess). Linus
It looks like you are right. Setting the git config --global settings makes the problem disappear. I am not aware of (actively) setting up any NIS, but there may be trouble in the DNS server.
From the strace (attached):
10:55:34 sendto(3, "\307\304\1\0\0\1\0\0\0\0\0\0\ttimesink\n\5svana
\3net"..., 37, MSG_NOSIGNAL, NULL, 0) = 37 <0.000159>
10:55:34 poll([{fd=3, events=POLLIN}], 1, 5000) = 0 <4.995564>
10:55:39 poll([{fd=3, events=POLLOUT, revents=POLLOUT}], 1, 0) = 1
<0.000098>
10:55:39 sendto(3, "\307\304\1\0\0\1\0\0\0\0\0\0\ttimesink\n\5svana
\3net"..., 37, MSG_NOSIGNAL, NULL, 0) = 37 <0.000130>
10:55:39 poll([{fd=3, events=POLLIN}], 1, 5000) = 0 <4.999161>
10:55:44 close(3) = 0 <0.000111>
10:55:44 open("/etc/ld.so.cache", O_RDONLY) = 3 <0.000066>
Thank you,
James Utter