lakeFS
lakeFS copied to clipboard
lakectl local init on a branch used for the same purpose with another user fails with git error
What happened?
One user ran lakectl local init on a lakeFS branch and completed successfully. Output: lakectl local init <lakefs URL> <local dir> Successfully linked local directory '<mount path>/users/<user>/<local path>' with remote '<lakefs URL>
A 2nd user is trying to run the same and runs into this error: lakectl local init <same lakefs URL> <2nd local dir> fatal: Not a git repository (or any parent up to mount point <same mount path as above> ) Stopping at filesystem boundary (GIT_DISCOVERY_ACROSS_FILESYSTEM not set). : exit status 128 Error executing command.
Additional information - running on RHEL7, original user directory does not contain a .git file.
Expected behavior
lakectl local init should not depend on previous mount path from a different user
lakeFS version
1.31.0
How lakeFS is installed
Cloud
Affected clients
No response
Relevant log output
No response
Contact details
@treeverse/product how much do we want to pursue this?
This happens in a special setup that we couldn't reproduce + can be WA by passing the --gitignore flag
Moving it backlog since I don't think this requires our focus ATM @itaiad200 FYI
Offir Cohen Thursday at 6:13 AM:
By the way, I think the issue is related to the filesystem being mounted (in which case the lakectl local clone / init error happens), but when no filesystem is mounted the error doesn't happen. I believe this is the case because of the difference in the git status output when no git repository exists between non-mounted and mounted file systems. Running git status on my laptop (in a non-mounted file system):
% git status fatal: not a git repository (or any of the parent directories): .gitRunning git status on the cluster (in a mounted file system):
$ git status fatal: Not a git repository (or any parent up to mount point /home/<redacted>) Stopping at filesystem boundary (GIT_DISCOVERY_ACROSS_FILESYSTEM not set).The second error is the same that gets returned from lakectl local clone / init when running on the cluster.