lakeFS icon indicating copy to clipboard operation
lakeFS copied to clipboard

lakectl local init on a branch used for the same purpose with another user fails with git error

Open offirc2 opened this issue 1 year ago • 2 comments

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

[email protected]

offirc2 avatar Aug 19 '24 15:08 offirc2

@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

N-o-Z avatar Sep 11 '24 22:09 N-o-Z

Moving it backlog since I don't think this requires our focus ATM @itaiad200 FYI

N-o-Z avatar Sep 13 '24 15:09 N-o-Z

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): .git

Running 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.

N-o-Z avatar Nov 04 '24 16:11 N-o-Z