Page MenuHomePhabricator

Case insensitive file system leads to extra processes when running 'arc unit'
Open, Needs TriagePublic

Description

If I run 'arc unit' when on a system with a case insensitive filesystem (e.g. OSX or an NFS-mounted share from OSX to a linux VM), PhpunitTestEngine forks more processes than it needs to.

Output from "ps aux | grep ' php'":

vagrant  17433  0.0  1.0 195760 22244 pts/0    S+   22:48   0:00 php /home/vagrant/arcanist/bin/../scripts/arcanist.php unit
vagrant  17458 49.5  7.8 335372 161352 pts/0   R+   22:48   9:42 php vendor/bin/phpunit ... /home/vagrant/Web/src/[Path]/tests/[Path1]Test.php
vagrant  17460 49.6  6.5 309128 135180 pts/0   R+   22:48   9:44 php vendor/bin/phpunit ... /home/vagrant/Web/src/[Path]/tests/[Path2]Test.php
vagrant  17463 49.5  6.5 309128 135184 pts/0   R+   22:48   9:43 php vendor/bin/phpunit ... /home/vagrant/Web/src/[Path]/Tests/[Path2]Test.php
vagrant  17464 49.4  7.8 335364 161640 pts/0   R+   22:48   9:41 php vendor/bin/phpunit ... /home/vagrant/Web/src/[Path]/Tests/[Path1]Test.php

As you can see, both of the $test_dir_names have resolved to files that 'exist' on the filesystem, however they are the same file.

Event Timeline

agenticarus raised the priority of this task from to Needs Triage.
agenticarus updated the task description. (Show Details)
agenticarus added a project: Arcanist.
agenticarus added a subscriber: agenticarus.