Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

yadm not working with gitconfig core.fsmonitor=true on MacOS #506

Open
knthmn opened this issue Nov 23, 2024 · 4 comments
Open

yadm not working with gitconfig core.fsmonitor=true on MacOS #506

knthmn opened this issue Nov 23, 2024 · 4 comments
Labels

Comments

@knthmn
Copy link

knthmn commented Nov 23, 2024

Describe the bug

Many of the yadm commands misbehave when core.fsmonitor=true is set for Git.

  • yadm status hangs indefinitely, it sometimes shows the output correctly after pressing ^C.
  • yadm log shows the result after pressing ^C.
  • yadm pull does not work at all

To reproduce

Can this be reproduced with the yadm/testbed docker image: No

I reproduced this issue with two different Macbooks (one running Apple Silicon and one running Intel). The issue does not exist on my Linux machines.

Step to reproduce

  • Use a Mac
  • Run git config --global core.fsmonitor true
  • Test any yadm features

Please tell me how to investigate this issue further.

Expected behavior

yadm should function even if core.fsmonitor is set to true.

Environment

  • Operating system: Mac OS
  • Version yadm: 3.30
  • Version Git: both on 2.39.5 (Apple Git-154) and 2.47.0 (current Homebrew version)
@knthmn knthmn added the bug label Nov 23, 2024
@erijo
Copy link
Collaborator

erijo commented Nov 25, 2024

I was able to reproduce the bug on a test machine I got my hands on. It's possible to unhang the process by killing one of the fsmonitor daemon processes started by git.

I did some web searching and it could perhaps be related to the issue reported here: https://lore.kernel.org/git/[email protected]/

If you're confident building git you could perhaps try the patch posted in a mail linked to from the thread?

@erijo
Copy link
Collaborator

erijo commented Nov 25, 2024

The fix is in git master so perhaps it can be tested with brew install --HEAD git?

@knthmn
Copy link
Author

knthmn commented Nov 26, 2024

I tested with git version 2.47.1.284.g6ea2d9d271.dirty and it still has the same issue.

For me, after killing the fsmonitor process, yadm prints the status but still doesn't exit.

@erijo
Copy link
Collaborator

erijo commented Nov 26, 2024

Too bad it didn't work. Did you kill all the fsmonitor processes before trying the new git?

Otherwise you can perhaps try setting GIT_TRACE or GIT_TRACE_FSMONITOR and see if you can get something useful out of the traces.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants