# [PATCH] Clarify the "cannot lock existing info/refs" error

4 messages from 2009-03-04 to 2009-03-05. Participants: John Tapsell, Clemens Buchacher.
Thread: https://gitlist.dev/t/18133

## John Tapsell, 2009-03-04 15:37

Subject: [PATCH] Clarify the "cannot lock existing info/refs" error
Message-ID: <1236181026-15385-1-git-send-email-johnflux@gmail.com>
URL: https://gitlist.dev/e/1236181026-15385-1-git-send-email-johnflux%40gmail.com

```
---
 http-push.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/http-push.c b/http-push.c
index 30d2d34..6666956 100644
--- a/http-push.c
+++ b/http-push.c
@@ -2293,7 +2293,7 @@ int main(int argc, char **argv)
 		if (info_ref_lock)
 			remote->can_update_info_refs = 1;
 		else {
-			fprintf(stderr, "Error: cannot lock existing info/refs\n");
+			error("cannot lock existing info/refs on remote server\nPerhaps the server is currently busy, or your ~/.netrc file is not configured correctly.");
 			rc = 1;
 			goto cleanup;
 		}
-- 
1.6.2.rc2.23.g77740

```

## Clemens Buchacher, 2009-03-04 19:28

Subject: Re: [PATCH] Clarify the "cannot lock existing info/refs" error
Message-ID: <20090304192853.GA10567@localhost>
URL: https://gitlist.dev/e/20090304192853.GA10567%40localhost
In-Reply-To: <1236181026-15385-1-git-send-email-johnflux@gmail.com>

```
On Wed, Mar 04, 2009 at 03:37:06PM +0000, John Tapsell wrote:
> -fprintf(stderr, "Error: cannot lock existing info/refs\n");
> +error("cannot lock existing info/refs on remote server\nPerhaps the
> server is currently busy, or your ~/.netrc file is not configured
> correctly.");

In my experience this is usually caused by http-push crashing and leaving
stale locks behind until it times out after 10 minutes. I don't think we
should speculate here unless we can narrow down the error condition.

```

## John Tapsell, 2009-03-05 08:00

Subject: Re: [PATCH] Clarify the "cannot lock existing info/refs" error
Message-ID: <43d8ce650903050000g4466ab2fne5fb8ed009808346@mail.gmail.com>
URL: https://gitlist.dev/e/43d8ce650903050000g4466ab2fne5fb8ed009808346%40mail.gmail.com
In-Reply-To: <20090304192853.GA10567@localhost>

```
2009/3/4 Clemens Buchacher <drizzd@aon.at>:
> On Wed, Mar 04, 2009 at 03:37:06PM +0000, John Tapsell wrote:
>> -fprintf(stderr, "Error: cannot lock existing info/refs\n");
>> +error("cannot lock existing info/refs on remote server\nPerhaps the
>> server is currently busy, or your ~/.netrc file is not configured
>> correctly.");
>
> In my experience this is usually caused by http-push crashing and leaving
> stale locks behind until it times out after 10 minutes. I don't think we
> should speculate here unless we can narrow down the error condition.

Yeah, I was thinking of trying to narrow it down as well.

I personally get that error 3 out of 4 times, roughly, that I try to
push.  But that's probably because I'm using a very busy git server.
So in my case, I just keep retrying until it succeeds.

On google I found that people had been getting that error if they have
the wrong password.

Can we at least change it to:

-fprintf(stderr, "Error: cannot lock existing info/refs\n");
+error("cannot lock existing info/refs on remote server\n");

It's currently confusing as to whether it's a local error or a remote error.

John

```

## Clemens Buchacher, 2009-03-05 08:50

Subject: Re: [PATCH] Clarify the "cannot lock existing info/refs" error
Message-ID: <20090305085052.GA24669@localhost>
URL: https://gitlist.dev/e/20090305085052.GA24669%40localhost
In-Reply-To: <43d8ce650903050000g4466ab2fne5fb8ed009808346@mail.gmail.com>

```
On Thu, Mar 05, 2009 at 08:00:37AM +0000, John Tapsell wrote:
> On google I found that people had been getting that error if they have
> the wrong password.

That's easy enough to verify. Using the wrong username/password I get

	error: Cannot access URL $url, return code 22
	error: failed to push some refs to '$url'

which is not very helpful, but otherwise unrelated.

> -fprintf(stderr, "Error: cannot lock existing info/refs\n");
> +error("cannot lock existing info/refs on remote server\n");

That's a less ambiguous but equally unhelpful error message.

```
