# [PATCH] Make git status print a helpful death message if the disk is full

3 messages from 2009-09-01 to 2009-09-01. Participants: David Reiss, Junio C Hamano, Thomas Rast.
Thread: https://gitlist.dev/t/20812

## David Reiss, 2009-09-01 19:51

Subject: [PATCH] Make git status print a helpful death message if the disk is full
Message-ID: <4A9D7B54.5020902@facebook.com>
URL: https://gitlist.dev/e/4A9D7B54.5020902%40facebook.com

```
The old behavior just said that it failed.  Now it includes the error
information, which makes it much easier to debug.

There is a risk that some failure paths could result in misleading error
messages that actually make debugging more difficult.

Signed-off-by: David Reiss <dreiss@facebook.com>
---
 builtin-commit.c |    6 +++---
 1 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/builtin-commit.c b/builtin-commit.c
index 4bcce06..3527c73 100644
--- a/builtin-commit.c
+++ b/builtin-commit.c
@@ -256,7 +256,7 @@ static char *prepare_index(int argc, const char **argv, const char *prefix)
 		refresh_cache(REFRESH_QUIET);
 		if (write_cache(fd, active_cache, active_nr) ||
 		    close_lock_file(&index_lock))
-			die("unable to write new_index file");
+			die("unable to write new_index file: %s", strerror(errno));
 		commit_style = COMMIT_NORMAL;
 		return index_lock.filename;
 	}
@@ -275,7 +275,7 @@ static char *prepare_index(int argc, const char **argv, const char *prefix)
 		refresh_cache(REFRESH_QUIET);
 		if (write_cache(fd, active_cache, active_nr) ||
 		    commit_locked_index(&index_lock))
-			die("unable to write new_index file");
+			die("unable to write new_index file: %s", strerror(errno));
 		commit_style = COMMIT_AS_IS;
 		return get_index_file();
 	}
@@ -318,7 +318,7 @@ static char *prepare_index(int argc, const char **argv, const char *prefix)
 	refresh_cache(REFRESH_QUIET);
 	if (write_cache(fd, active_cache, active_nr) ||
 	    close_lock_file(&index_lock))
-		die("unable to write new_index file");
+		die("unable to write new_index file: %s", strerror(errno));
 
 	fd = hold_lock_file_for_update(&false_lock,
 				       git_path("next-index-%"PRIuMAX,
-- 
1.6.0.4

```

## Junio C Hamano, 2009-09-01 20:19

Subject: Re: [PATCH] Make git status print a helpful death message if the disk is full
Message-ID: <7v3a76fmdu.fsf@alter.siamese.dyndns.org>
URL: https://gitlist.dev/e/7v3a76fmdu.fsf%40alter.siamese.dyndns.org
In-Reply-To: <4A9D7B54.5020902@facebook.com>

```
Don't we have die_errno() or something since at least 1.6.4?

```

## Thomas Rast, 2009-09-01 20:35

Subject: Re: [PATCH] Make git status print a helpful death message if the disk is full
Message-ID: <200909012235.10091.trast@student.ethz.ch>
URL: https://gitlist.dev/e/200909012235.10091.trast%40student.ethz.ch
In-Reply-To: <4A9D7B54.5020902@facebook.com>

```
David Reiss wrote:
> The old behavior just said that it failed.  Now it includes the error
> information, which makes it much easier to debug.
> 
> There is a risk that some failure paths could result in misleading error
> messages that actually make debugging more difficult.
[...]
>  		if (write_cache(fd, active_cache, active_nr) ||
>  		    close_lock_file(&index_lock))
> -			die("unable to write new_index file");
> +			die("unable to write new_index file: %s", strerror(errno));

Junio C Hamano wrote:
> Don't we have die_errno() or something since at least 1.6.4?

Yes.  And during the conversion, I ignored call sites like this one
precisely because I did not (and still do not) have enough knowledge
of the index and lock file machinery to decide at what stage I need to
read errno to get the *real* error message.  You're of course welcome
to dig into the code to verify that the above is correct, but I am
against blindly hoping that it gives the right error.

-- 
Thomas Rast
trast@{inf,student}.ethz.ch

```
