[ 
https://issues.apache.org/jira/browse/IO-757?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17487774#comment-17487774
 ] 

Gary D. Gregory commented on IO-757:
------------------------------------

[~wma] ping?

> listFilesAndDirs doesn't list symbolicLinks when the original file has been 
> deleted. The link does exist on OS
> --------------------------------------------------------------------------------------------------------------
>
>                 Key: IO-757
>                 URL: https://issues.apache.org/jira/browse/IO-757
>             Project: Commons IO
>          Issue Type: Bug
>          Components: Utilities
>    Affects Versions: 2.9.0
>         Environment: Discovered on macOS Monterey 12.0.1 on Apple M1 Max
> openjdk version "11.0.13" 2021-10-19 LTS
> OpenJDK Runtime Environment Zulu11.52+13-CA (build 11.0.13+8-LTS)
> OpenJDK 64-Bit Server VM Zulu11.52+13-CA (build 11.0.13+8-LTS, mixed mode)
>            Reporter: wma
>            Priority: Major
>         Attachments: commons-io-bug.zip
>
>
> When upgrading from version 2.8.0 to 2.11.0 i found out a difference in 
> behaviour in the FileUtils.listFilesAndDirs method concerning symbolic links. 
> I tracked it back to version 2.9.0 that introduced it. On the changelist of 
> that release I found following that might be related/caused it:
> {quote}FileUtils.iterateFiles runs out of memory when executed for a 
> directory with large number of files. Re-implement FileUtils' iterateFiles(), 
> iterateFilesAndDirs(), listFiles(), listFilesAndDirs() to use NIO file tree 
> walking instead of IO file listings to avoid memory consumption issues on 
> large file trees. Fixes IO-597. Thanks to Gary Gregory, Arvind, Rob Spoor.
> {quote}
> The testcase is following:
> 1. create a file F in a directory D
> 2. create a symbolic link S to F in D
> 3. call FileUtils.listFilesAndDirs for D to verify setup is ok
> -> The results is 3 items, D, F and S
> 4. delete file F
> 5. call FileUtils.listFilesAndDirs for D
> -> Before release 2.9.0 the result here is 2 items. D and S, from release 
> 2.9.0 on, the result is 1 item, only D. The symbolic link is not listed 
> anymore while it does exist on disk still.
> I call this a bug as the result does not reflect the situation on disk and 
> Files.list does show the symbolic link
> Included unit test project, succeeds when using version 2.8.0, fails when 
> using 2.9.0



--
This message was sent by Atlassian Jira
(v8.20.1#820001)

Reply via email to