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

Re: [PATCH] bundle, fast-import: detect write failure

From
Jim Meyering <jim@meyering.net>
Date
Jan 10, 2008, 13:00 UTC
Message-ID
<87hchlhm3k.fsf@rho.meyering.net>
In-Reply-To
<alpine.LSU.1.00.0801101234580.31053@racer.site>
Johannes Schindelin <Johannes.Schindelin@gmx.de> wrote:
> Are you aware what this code does?  It writes a ".keep" file.  Whose
> purpose is to _exist_, and whose purpose is fulfilled, even if the write
> or the push-back did not succeed.
Hi,
I do see what you mean.

If the write is not necessary, then perhaps you would prefer a comment documenting that failures of the write and following close are ignorable. And add a '(void)' stmt prefix, to tell compilers that ignoring the return value is deliberate.

However, even if it's not technically required to fail at that point, if it were my choice, I'd prefer to know when a .keep file whose contents are unimportant just happens to reside on a bad spot on my disk. I/O errors should never be ignored.

> I could not care less what the manual says.  What is important is if the
> defensive programming is done mindlessly, and therefore can fail so not
> gracefully.

On the other hand, if that write failure is truly ignorable, a mindless minimalist :-) might argue that it's best just to omit the syscall.

Previous: Johannes SchindelinNext: Pierre Habouzit
Message 6 of 13 in “bundle, fast-import: detect write failure”
  1. bundle, fast-import: detect write failureJim Meyering, Jan 10, 2008
  2. Pierre HabouzitJan 10, 2008
  3. Johannes SchindelinJan 10, 2008
  4. Jim MeyeringJan 10, 2008
  5. Johannes SchindelinJan 10, 2008
  6. Jim MeyeringJan 10, 2008
  7. Pierre HabouzitJan 10, 2008
  8. Jim MeyeringJan 10, 2008
  9. Pierre HabouzitJan 10, 2008
  10. Jakub NarebskiJan 11, 2008
  11. Junio C HamanoJan 11, 2008
  12. David TweedJan 11, 2008
  13. Johannes SchindelinJan 11, 2008

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.