[jira] [Commented] (IO-319) FileUtils.sizeOfDirectory follows symbolic links.
[ https://issues.apache.org/jira/browse/IO-319?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13251624#comment-13251624 ] Ravi Prakash commented on IO-319: - I'll be happy to. I'm working on it now. I'm not sure how platform-independent the test code needs to be, but I'll give it a fair shot and hopefully you'll be able to guide me to a better iteration. FileUtils.sizeOfDirectory follows symbolic links. - Key: IO-319 URL: https://issues.apache.org/jira/browse/IO-319 Project: Commons IO Issue Type: Bug Affects Versions: 2.1 Reporter: Ravi Prakash Priority: Critical First of all Thanks tons Apache Commons folks for all the amazing work! :) My first JIRA. Yayyy. I contributed B-) A symbolic link may create a cycle and so sizeOfDirectory crashes with an IllegalArgumentException. e.g. {noformat} $ tree test test ├── file └── ravi ├── cycle - ../../test └── file {noformat} causes FileUtils.sizeOfDirectory to crash like so {noformat} java TestJAVA Exception in thread main java.lang.IllegalArgumentException: somepath/test/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle does not exist at org.apache.commons.io.FileUtils.sizeOf(FileUtils.java:2053) at org.apache.commons.io.FileUtils.sizeOfDirectory(FileUtils.java:2089) at org.apache.commons.io.FileUtils.sizeOf(FileUtils.java:2057) at org.apache.commons.io.FileUtils.sizeOfDirectory(FileUtils.java:2089) at org.apache.commons.io.FileUtils.sizeOf(FileUtils.java:2057) at org.apache.commons.io.FileUtils.sizeOfDirectory(FileUtils.java:2089) at org.apache.commons.io.FileUtils.sizeOf(FileUtils.java:2057) at org.apache.commons.io.FileUtils.sizeOfDirectory(FileUtils.java:2089) {noformat} We faced the same issue in Hadoop :(. Checkout https://issues.apache.org/jira/browse/HADOOP-6963 for our solution -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (IO-319) FileUtils.sizeOfDirectory follows symbolic links.
[ https://issues.apache.org/jira/browse/IO-319?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13251626#comment-13251626 ] Gary D. Gregory commented on IO-319: Great, thank you Ravi. FileUtils.sizeOfDirectory follows symbolic links. - Key: IO-319 URL: https://issues.apache.org/jira/browse/IO-319 Project: Commons IO Issue Type: Bug Affects Versions: 2.1 Reporter: Ravi Prakash Priority: Critical First of all Thanks tons Apache Commons folks for all the amazing work! :) My first JIRA. Yayyy. I contributed B-) A symbolic link may create a cycle and so sizeOfDirectory crashes with an IllegalArgumentException. e.g. {noformat} $ tree test test ├── file └── ravi ├── cycle - ../../test └── file {noformat} causes FileUtils.sizeOfDirectory to crash like so {noformat} java TestJAVA Exception in thread main java.lang.IllegalArgumentException: somepath/test/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle does not exist at org.apache.commons.io.FileUtils.sizeOf(FileUtils.java:2053) at org.apache.commons.io.FileUtils.sizeOfDirectory(FileUtils.java:2089) at org.apache.commons.io.FileUtils.sizeOf(FileUtils.java:2057) at org.apache.commons.io.FileUtils.sizeOfDirectory(FileUtils.java:2089) at org.apache.commons.io.FileUtils.sizeOf(FileUtils.java:2057) at org.apache.commons.io.FileUtils.sizeOfDirectory(FileUtils.java:2089) at org.apache.commons.io.FileUtils.sizeOf(FileUtils.java:2057) at org.apache.commons.io.FileUtils.sizeOfDirectory(FileUtils.java:2089) {noformat} We faced the same issue in Hadoop :(. Checkout https://issues.apache.org/jira/browse/HADOOP-6963 for our solution -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (IO-319) FileUtils.sizeOfDirectory follows symbolic links.
[ https://issues.apache.org/jira/browse/IO-319?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13251677#comment-13251677 ] Gary D. Gregory commented on IO-319: On Windows, the sym link is called an NTFS junction point. This has been available since Windows 2000 according to https://en.wikipedia.org/wiki/NTFS_symbolic_link MKLINK [[/D] | [/H] | [/J]] Link Target /D Creates a directory symbolic link. Default is a file symbolic link. /H Creates a hard link instead of a symbolic link. /J Creates a Directory Junction. Linkspecifies the new symbolic link name. Target specifies the path (relative or absolute) that the new link refers to. FileUtils.sizeOfDirectory follows symbolic links. - Key: IO-319 URL: https://issues.apache.org/jira/browse/IO-319 Project: Commons IO Issue Type: Bug Affects Versions: 2.1 Reporter: Ravi Prakash Priority: Critical Attachments: commons-io-319.patch First of all Thanks tons Apache Commons folks for all the amazing work! :) My first JIRA. Yayyy. I contributed B-) A symbolic link may create a cycle and so sizeOfDirectory crashes with an IllegalArgumentException. e.g. {noformat} $ tree test test ├── file └── ravi ├── cycle - ../../test └── file {noformat} causes FileUtils.sizeOfDirectory to crash like so {noformat} java TestJAVA Exception in thread main java.lang.IllegalArgumentException: somepath/test/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle does not exist at org.apache.commons.io.FileUtils.sizeOf(FileUtils.java:2053) at org.apache.commons.io.FileUtils.sizeOfDirectory(FileUtils.java:2089) at org.apache.commons.io.FileUtils.sizeOf(FileUtils.java:2057) at org.apache.commons.io.FileUtils.sizeOfDirectory(FileUtils.java:2089) at org.apache.commons.io.FileUtils.sizeOf(FileUtils.java:2057) at org.apache.commons.io.FileUtils.sizeOfDirectory(FileUtils.java:2089) at org.apache.commons.io.FileUtils.sizeOf(FileUtils.java:2057) at org.apache.commons.io.FileUtils.sizeOfDirectory(FileUtils.java:2089) {noformat} We faced the same issue in Hadoop :(. Checkout https://issues.apache.org/jira/browse/HADOOP-6963 for our solution -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (IO-319) FileUtils.sizeOfDirectory follows symbolic links.
[ https://issues.apache.org/jira/browse/IO-319?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13251747#comment-13251747 ] Gary D. Gregory commented on IO-319: Thank you Ravi, the patch applies and tests OK but... How can this really work when FileUtils.isSymlink(File file) always returns true on Windows? FileUtils.sizeOfDirectory follows symbolic links. - Key: IO-319 URL: https://issues.apache.org/jira/browse/IO-319 Project: Commons IO Issue Type: Bug Affects Versions: 2.1 Reporter: Ravi Prakash Priority: Critical Attachments: commons-io-319.patch, commons-io-319.patch First of all Thanks tons Apache Commons folks for all the amazing work! :) My first JIRA. Yayyy. I contributed B-) A symbolic link may create a cycle and so sizeOfDirectory crashes with an IllegalArgumentException. e.g. {noformat} $ tree test test ├── file └── ravi ├── cycle - ../../test └── file {noformat} causes FileUtils.sizeOfDirectory to crash like so {noformat} java TestJAVA Exception in thread main java.lang.IllegalArgumentException: somepath/test/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle does not exist at org.apache.commons.io.FileUtils.sizeOf(FileUtils.java:2053) at org.apache.commons.io.FileUtils.sizeOfDirectory(FileUtils.java:2089) at org.apache.commons.io.FileUtils.sizeOf(FileUtils.java:2057) at org.apache.commons.io.FileUtils.sizeOfDirectory(FileUtils.java:2089) at org.apache.commons.io.FileUtils.sizeOf(FileUtils.java:2057) at org.apache.commons.io.FileUtils.sizeOfDirectory(FileUtils.java:2089) at org.apache.commons.io.FileUtils.sizeOf(FileUtils.java:2057) at org.apache.commons.io.FileUtils.sizeOfDirectory(FileUtils.java:2089) {noformat} We faced the same issue in Hadoop :(. Checkout https://issues.apache.org/jira/browse/HADOOP-6963 for our solution -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (IO-319) FileUtils.sizeOfDirectory follows symbolic links.
[ https://issues.apache.org/jira/browse/IO-319?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13251767#comment-13251767 ] Ravi Prakash commented on IO-319: - Thanks Gary! Aah! I did not notice that. You probably meant isSymLink always returns false bq. Note: the current implementation always returns false if the system is detected as Windows using FilenameUtils#isSystemWindows() causing isSymLink to always be true on Windows. I guess the real fix would be to make the isSymlink() method not do that. Could you please append to the patch and fix it on Windows? I'm sorry I don't have a Windows machine :( FileUtils.sizeOfDirectory follows symbolic links. - Key: IO-319 URL: https://issues.apache.org/jira/browse/IO-319 Project: Commons IO Issue Type: Bug Affects Versions: 2.1 Reporter: Ravi Prakash Priority: Critical Attachments: commons-io-319.patch, commons-io-319.patch First of all Thanks tons Apache Commons folks for all the amazing work! :) My first JIRA. Yayyy. I contributed B-) A symbolic link may create a cycle and so sizeOfDirectory crashes with an IllegalArgumentException. e.g. {noformat} $ tree test test ├── file └── ravi ├── cycle - ../../test └── file {noformat} causes FileUtils.sizeOfDirectory to crash like so {noformat} java TestJAVA Exception in thread main java.lang.IllegalArgumentException: somepath/test/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle does not exist at org.apache.commons.io.FileUtils.sizeOf(FileUtils.java:2053) at org.apache.commons.io.FileUtils.sizeOfDirectory(FileUtils.java:2089) at org.apache.commons.io.FileUtils.sizeOf(FileUtils.java:2057) at org.apache.commons.io.FileUtils.sizeOfDirectory(FileUtils.java:2089) at org.apache.commons.io.FileUtils.sizeOf(FileUtils.java:2057) at org.apache.commons.io.FileUtils.sizeOfDirectory(FileUtils.java:2089) at org.apache.commons.io.FileUtils.sizeOf(FileUtils.java:2057) at org.apache.commons.io.FileUtils.sizeOfDirectory(FileUtils.java:2089) {noformat} We faced the same issue in Hadoop :(. Checkout https://issues.apache.org/jira/browse/HADOOP-6963 for our solution -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (IO-319) FileUtils.sizeOfDirectory follows symbolic links.
[ https://issues.apache.org/jira/browse/IO-319?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13251777#comment-13251777 ] Sebb commented on IO-319: - Symbolic links are likely to be very rare on Windows. IMO it does not matter if the patch does not fix the crash for Windows hosts, so long as it does not otherwise change the behaviour on Windows. FileUtils.sizeOfDirectory follows symbolic links. - Key: IO-319 URL: https://issues.apache.org/jira/browse/IO-319 Project: Commons IO Issue Type: Bug Affects Versions: 2.1 Reporter: Ravi Prakash Priority: Critical Attachments: commons-io-319.patch, commons-io-319.patch First of all Thanks tons Apache Commons folks for all the amazing work! :) My first JIRA. Yayyy. I contributed B-) A symbolic link may create a cycle and so sizeOfDirectory crashes with an IllegalArgumentException. e.g. {noformat} $ tree test test ├── file └── ravi ├── cycle - ../../test └── file {noformat} causes FileUtils.sizeOfDirectory to crash like so {noformat} java TestJAVA Exception in thread main java.lang.IllegalArgumentException: somepath/test/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle does not exist at org.apache.commons.io.FileUtils.sizeOf(FileUtils.java:2053) at org.apache.commons.io.FileUtils.sizeOfDirectory(FileUtils.java:2089) at org.apache.commons.io.FileUtils.sizeOf(FileUtils.java:2057) at org.apache.commons.io.FileUtils.sizeOfDirectory(FileUtils.java:2089) at org.apache.commons.io.FileUtils.sizeOf(FileUtils.java:2057) at org.apache.commons.io.FileUtils.sizeOfDirectory(FileUtils.java:2089) at org.apache.commons.io.FileUtils.sizeOf(FileUtils.java:2057) at org.apache.commons.io.FileUtils.sizeOfDirectory(FileUtils.java:2089) {noformat} We faced the same issue in Hadoop :(. Checkout https://issues.apache.org/jira/browse/HADOOP-6963 for our solution -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (IO-319) FileUtils.sizeOfDirectory follows symbolic links.
[ https://issues.apache.org/jira/browse/IO-319?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13249792#comment-13249792 ] Gary D. Gregory commented on IO-319: Can you provide a patch for [io] trunk please? FileUtils.sizeOfDirectory follows symbolic links. - Key: IO-319 URL: https://issues.apache.org/jira/browse/IO-319 Project: Commons IO Issue Type: Bug Affects Versions: 2.1 Reporter: Ravi Prakash Priority: Critical First of all Thanks tons Apache Commons folks for all the amazing work! :) My first JIRA. Yayyy. I contributed B-) A symbolic link may create a cycle and so sizeOfDirectory crashes with an IllegalArgumentException. e.g. {noformat} $ tree test test ├── file └── ravi ├── cycle - ../../test └── file {noformat} causes FileUtils.sizeOfDirectory to crash like so {noformat} java TestJAVA Exception in thread main java.lang.IllegalArgumentException: somepath/test/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle/ravi/cycle does not exist at org.apache.commons.io.FileUtils.sizeOf(FileUtils.java:2053) at org.apache.commons.io.FileUtils.sizeOfDirectory(FileUtils.java:2089) at org.apache.commons.io.FileUtils.sizeOf(FileUtils.java:2057) at org.apache.commons.io.FileUtils.sizeOfDirectory(FileUtils.java:2089) at org.apache.commons.io.FileUtils.sizeOf(FileUtils.java:2057) at org.apache.commons.io.FileUtils.sizeOfDirectory(FileUtils.java:2089) at org.apache.commons.io.FileUtils.sizeOf(FileUtils.java:2057) at org.apache.commons.io.FileUtils.sizeOfDirectory(FileUtils.java:2089) {noformat} We faced the same issue in Hadoop :(. Checkout https://issues.apache.org/jira/browse/HADOOP-6963 for our solution -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira