Skip to content

Command discovery on systems with symlinks to slow filesystems is slow #6577

@SurferJeffAtGoogle

Description

@SurferJeffAtGoogle

Not all commands. ls takes 20 seconds. dir is nearly instant. This is just the simplest example, but the overall experience makes me want to stop using powershell on Linux. :-( Tab completion also takes around 20 seconds.

Steps to reproduce

PS > measure-command { ls }                                 


Days              : 0
Hours             : 0
Minutes           : 0
Seconds           : 20
Milliseconds      : 25
Ticks             : 200252179
TotalDays         : 0.000231773355324074
TotalHours        : 0.00556256052777778
TotalMinutes      : 0.333753631666667
TotalSeconds      : 20.0252179
TotalMilliseconds : 20025.2179

PS > measure-command { dir }                                


Days              : 0
Hours             : 0
Minutes           : 0
Seconds           : 0
Milliseconds      : 3
Ticks             : 33095
TotalDays         : 3.83043981481481E-08
TotalHours        : 9.19305555555556E-07
TotalMinutes      : 5.51583333333333E-05
TotalSeconds      : 0.0033095
TotalMilliseconds : 3.3095

Expected behavior

ls takes a second or so.

Actual behavior

ls takes 20 seconds.

Environment data

> $PSVersionTable
Name                           Value
----                           -----
PSVersion                      6.1.0-preview.1
PSEdition                      Core
GitCommitId                    v6.1.0-preview.1
OS                             Linux 4.9.0-6-amd64 #1 SMP Debian 4.9.82-1+deb9u3 (2018-03-02)
Platform                       Unix
PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0...}
PSRemotingProtocolVersion      2.3
SerializationVersion           1.1.0.1
WSManStackVersion              3.0

Metadata

Metadata

Assignees

Labels

Area-FileSystem-Providerspecific to the FileSystem providerIssue-Questionideally support can be provided via other mechanisms, but sometimes folks do open an issue to get aOS-LinuxResolution-No ActivityIssue has had no activity for 6 months or moreWG-Engine-Performancecore PowerShell engine, interpreter, and runtime performanceWaiting - DotNetCorewaiting on a fix/change in .NET

Type

No type

Projects

Status

Done

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions