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

consistency problem on ZFS

From
Yann Hodique <yann.hodique@gmail.com>
Date
Apr 28, 2013, 19:11 UTC
Message-ID
<m2bo8yxyg2.fsf@jarvis.hodique.info>
Hi,

I have a weird problem that seems to manifest itself only on ZFS (actually the Zevo distribution, on OSX). With git 1.8.2.1 by the way. I just switched to ZFS, so I can't blame that particular version of git.

"Sometimes" (I'd say something like 10-15% of the time, fairly reproducible anyway), "git diff-files" will see changes that don't exist for some time, then will catch up with the actual state of the file:

$ git checkout next; git diff-files; git checkout next; git diff-files Already on 'next' :100644 100644 bd774cccaa14e061c3c26996567ee28f4f77ec80 0000000000000000000000000000000000000000 M magit.el Already on 'next' $

Here it was pretty quick, but sometimes I would see those phantom diffs for more than 5 seconds.

Interestingly, if I manage to run "git diff" during that time, this one reports no changes. See https://gist.github.com/sigma/5477827 for a more complex trace: "git merge" was complaining about changes, yet neither "git diff" nor "git status" did show any. That's the scenario I tried to minimize to the invocation above.

I'm willing to accept that the filesystem has some responsibility there, but the inconsistency bothers me. Anything I can provide to help finding the root cause of the issue ?

Thanks for any hint (and workarounds are highly welcome, as it breaks many of my scripts, and magit too :))

Yann.
-- 
A Duke must always take control of his household, for if he does not
rule those closest to him, he cannot hope to govern a planet.

  -- DUKE PAULUS ATREIDES
Next: Thomas Rast
Message 1 of 9 in “consistency problem on ZFS”
  1. Yann HodiqueApr 28, 2013
  2. Thomas RastApr 28, 2013
  3. Yann HodiqueApr 28, 2013
  4. John SzakmeisterApr 28, 2013
  5. Yann HodiqueApr 28, 2013
  6. Junio C HamanoApr 28, 2013
  7. Yann HodiqueApr 29, 2013
  8. Junio C HamanoApr 29, 2013
  9. Yann HodiqueApr 29, 2013

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.