http://www.perlmonks.org?node_id=810748


in reply to Re^2: 'unlink' seems to not work correctly ...
in thread 'unlink' seems to not work correctly ...

That is, if you're willing to pay the performance penalty for no_chdir, and in this case, it seemed unwarranted, since the workaround was so easy.

-- Randal L. Schwartz, Perl hacker

The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in RFC 2119.

  • Comment on Re^3: 'unlink' seems to not work correctly ...

Replies are listed 'Best First'.
Re^4: 'unlink' seems to not work correctly ...
by Anonymous Monk on Dec 03, 2009 at 07:34 UTC
    performance penalty?
      Yes, no_chdir means that find needs to keep readdirring and stating longer and longer paths, repeatedly traversing the parent directories. Real find, like the default File::Find, uses chdir to ensure that the readdir and stats traverse the minimal number of inodes.

      -- Randal L. Schwartz, Perl hacker

      The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in RFC 2119.

        Oh wow, is there a memoize option?