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

question: howto avoid slow nfs mount acceses #1885

Open
soundart opened this issue Mar 6, 2024 · 0 comments
Open

question: howto avoid slow nfs mount acceses #1885

soundart opened this issue Mar 6, 2024 · 0 comments

Comments

@soundart
Copy link

soundart commented Mar 6, 2024

Hi,

I am using doom emacs and projectile is a deeply integrated part.
Currently I have some very large and very slow filesystems mounted to /project over nfs.

I have a cmake based project which symlinks directories into subtrees of the slow filesystems.

When I try to open a small c++ header file on my laptops ssd emacs spawns a subprocess.

fdfind . -0 -H --color=never --type file --type symlink --follow --exclude .git --strip-cwd-prefix

and this runs for a very long time >20min (then I killed it) and walks over subtrees of the symlinked directories (checked via strace -f -p pid).

Projectile seems to initialize its cache.

The problematic item seems to be ---follow. I added "/project" to projectile-globally-ignored-directories but this did not help.

Is there a way to force the projectile cache to stay on the same file system?

Expected behavior

Allow me to open a file in a few seconds.

Actual behavior

takes too long.

Steps to reproduce the problem

mount something large and slow to /project. Hace a projectile project on a fast SSD (/home/me/work) and symlink to a directory inside the slow mount.

'''
cd /home/me/work
ln -s /project/big big
touch .projectile
touch hi.h
emacs hi.h
"""

projectile needs to be active as in doom emacs. I do not know how that is done excatly.

Environment & Version information

Projectile version information

~/.emacs.d/.local/straight/repos/projectile$ git log
commit e45f0b0 (HEAD -> master, replaced)
Author: Bozhidar Batsov bozhidar@batsov.dev
Date: Mon Feb 5 12:21:51 2024 +0200

Add support for Eask projects

Eask is a drop-in alternative of Cask.
Projectile 2.8.0

Emacs version

GNU Emacs 29.2

Operating system

$ cat /etc/debian_version
12.5

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

No branches or pull requests

1 participant