sharkdp/fd

8.1.0 find the targets very slow in a large directory when using fzf. 8.0.0 works well.

Open

#599 opened on May 23, 2020

View on GitHub
 (26 comments) (1 reaction) (0 assignees)Rust (1,059 forks)batch import
help wantedperformance

Repository metrics

Stars
 (42,984 stars)
PR merge metrics
 (Avg merge 15d 23h) (16 merged PRs in 30d)

Description

Hi,

I am using fd as the default command of fzf. After updating to the latest version, I find it is very slow to find the target in a large directory (like home).

For FZF, I set export FZF_DEFAULT_COMMAND="fd --hidden --follow --exclude .git". Then I run fzf under my home directory. Next, I type a directory name which is right under home directory say .config, and it will take very very long to find ~/.config. It shows many files under ~/Library which I do not care about. I attached a screenshot below. You can see that ~/.config won't show up even though it has scanned 1080073 entries.

Before updating fd and I cannot remember which version it was, it works very well. When I type .config, it will show up almost immediately. The results could be adjusted automatically based on which query I typed so that my target will show up right away. For example, when I typed .config, it would not show me all those Library/..../config which I did not care about, and instead it would show ~/.config. Very smart.

image

What version of fd are you using?

fd 8.1.0

Which operating system / distribution are you on?

macOS 10.15.4 (the latest)

Thank you very much!!

Update1:

To be clearer, I put two GIF below (this time I ran fzf under home and tried to search a directory, ~/gitrepos):

1). I didn't set fzf default command, which means let fzf use the default find. When I started to type gitrepos, the targets appeared immediately.

find

2). I set fzf default command to fd --type f. This time when I started to type gitrepos, the targets wouldn't appear until all entries were scanned.

fd

Update2:

I just now deleted the latest version of fd and re-installed version 8.0.0 (with brew install https://raw.githubusercontent.com/Homebrew/homebrew-core/d874b06712ec20efd86f2fbf20e97aa2f24e9f5b/Formula/fd.rb). The original performance is back. So I am sure the latest version has a bug. Thank you!

Contributor guide