[jira] [Updated] (HADOOP-9637) Adding Native Fstat for Windows as needed by YARN
[ https://issues.apache.org/jira/browse/HADOOP-9637?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Kengo Seki updated HADOOP-9637: --- Assignee: Chuan Liu (was: Kengo Seki) > Adding Native Fstat for Windows as needed by YARN > - > > Key: HADOOP-9637 > URL: https://issues.apache.org/jira/browse/HADOOP-9637 > Project: Hadoop Common > Issue Type: Bug >Affects Versions: 2.1.0-beta, 3.0.0 >Reporter: Chuan Liu >Assignee: Chuan Liu > Fix For: 2.1.0-beta > > Attachments: HADOOP-9637-trunk.2.patch, HADOOP-9637-trunk.3.patch, > HADOOP-9637-trunk.patch > > > In the YARN, nodemanager need to enforce the log file can only be accessed by > the owner. At various places, {{SecureIOUtils.openForRead()}} was called to > enforce this check. We don't have {{NativeIO.Posix.getFstat()}} used by > {{SecureIOUtils.openForRead()}} on Windows, and this make the check fail on > Windows. The YARN unit tests > TestAggregatedLogFormat.testContainerLogsFileAccess and > TestContainerLogsPage.testContainerLogPageAccess fail on Windows because of > this. > The JIRA try to provide a Windows implementation of > {{NativeIO.Posix.getFstat()}}. > TestAggregatedLogFormat.testContainerLogsFileAccess test case fails on > Windows. The test case try to simulate a situation where first log file is > owned by different user (probably symlink) and second one by the user itself. > In this situation, the attempt to try to aggregate the logs should fail with > the error message "Owner ... for path ... did not match expected owner ...". > The check on file owner happens at {{AggregatedLogFormat.write()}} method. > The method calls {{SecureIOUtils.openForRead()}} to read the log files before > writing out to the OutputStream. > {{SecureIOUtils.openForRead()}} use {{NativeIO.Posix.getFstat()}} to get the > file owner and group. We don't have {{NativeIO.Posix.getFstat()}} > implementation on Windows; thus, the failure. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Updated] (HADOOP-9637) Adding Native Fstat for Windows as needed by YARN
[ https://issues.apache.org/jira/browse/HADOOP-9637?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Chuan Liu updated HADOOP-9637: -- Attachment: HADOOP-9637-trunk.3.patch Attaching a new patch. Adding Native Fstat for Windows as needed by YARN - Key: HADOOP-9637 URL: https://issues.apache.org/jira/browse/HADOOP-9637 Project: Hadoop Common Issue Type: Bug Affects Versions: 3.0.0, 2.1.0-beta Reporter: Chuan Liu Assignee: Chuan Liu Attachments: HADOOP-9637-trunk.2.patch, HADOOP-9637-trunk.3.patch, HADOOP-9637-trunk.patch In the YARN, nodemanager need to enforce the log file can only be accessed by the owner. At various places, {{SecureIOUtils.openForRead()}} was called to enforce this check. We don't have {{NativeIO.Posix.getFstat()}} used by {{SecureIOUtils.openForRead()}} on Windows, and this make the check fail on Windows. The YARN unit tests TestAggregatedLogFormat.testContainerLogsFileAccess and TestContainerLogsPage.testContainerLogPageAccess fail on Windows because of this. The JIRA try to provide a Windows implementation of {{NativeIO.Posix.getFstat()}}. TestAggregatedLogFormat.testContainerLogsFileAccess test case fails on Windows. The test case try to simulate a situation where first log file is owned by different user (probably symlink) and second one by the user itself. In this situation, the attempt to try to aggregate the logs should fail with the error message Owner ... for path ... did not match expected owner The check on file owner happens at {{AggregatedLogFormat.write()}} method. The method calls {{SecureIOUtils.openForRead()}} to read the log files before writing out to the OutputStream. {{SecureIOUtils.openForRead()}} use {{NativeIO.Posix.getFstat()}} to get the file owner and group. We don't have {{NativeIO.Posix.getFstat()}} implementation on Windows; thus, the failure. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Updated] (HADOOP-9637) Adding Native Fstat for Windows as needed by YARN
[ https://issues.apache.org/jira/browse/HADOOP-9637?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Chris Nauroth updated HADOOP-9637: -- Hadoop Flags: Reviewed +1 for the patch. I verified on Mac (without native libs), Linux (with native libs), and Windows (with native libs). Chuan, thank you for incorporating all of the feedback. I'll commit this. Adding Native Fstat for Windows as needed by YARN - Key: HADOOP-9637 URL: https://issues.apache.org/jira/browse/HADOOP-9637 Project: Hadoop Common Issue Type: Bug Affects Versions: 3.0.0, 2.1.0-beta Reporter: Chuan Liu Assignee: Chuan Liu Attachments: HADOOP-9637-trunk.2.patch, HADOOP-9637-trunk.3.patch, HADOOP-9637-trunk.patch In the YARN, nodemanager need to enforce the log file can only be accessed by the owner. At various places, {{SecureIOUtils.openForRead()}} was called to enforce this check. We don't have {{NativeIO.Posix.getFstat()}} used by {{SecureIOUtils.openForRead()}} on Windows, and this make the check fail on Windows. The YARN unit tests TestAggregatedLogFormat.testContainerLogsFileAccess and TestContainerLogsPage.testContainerLogPageAccess fail on Windows because of this. The JIRA try to provide a Windows implementation of {{NativeIO.Posix.getFstat()}}. TestAggregatedLogFormat.testContainerLogsFileAccess test case fails on Windows. The test case try to simulate a situation where first log file is owned by different user (probably symlink) and second one by the user itself. In this situation, the attempt to try to aggregate the logs should fail with the error message Owner ... for path ... did not match expected owner The check on file owner happens at {{AggregatedLogFormat.write()}} method. The method calls {{SecureIOUtils.openForRead()}} to read the log files before writing out to the OutputStream. {{SecureIOUtils.openForRead()}} use {{NativeIO.Posix.getFstat()}} to get the file owner and group. We don't have {{NativeIO.Posix.getFstat()}} implementation on Windows; thus, the failure. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Updated] (HADOOP-9637) Adding Native Fstat for Windows as needed by YARN
[ https://issues.apache.org/jira/browse/HADOOP-9637?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Chris Nauroth updated HADOOP-9637: -- Resolution: Fixed Fix Version/s: 2.1.0-beta 3.0.0 Target Version/s: 3.0.0, 2.1.0-beta Status: Resolved (was: Patch Available) I committed this to trunk, branch-2, and branch-2.1-beta. Chuan, thank you for the contribution. Adding Native Fstat for Windows as needed by YARN - Key: HADOOP-9637 URL: https://issues.apache.org/jira/browse/HADOOP-9637 Project: Hadoop Common Issue Type: Bug Affects Versions: 3.0.0, 2.1.0-beta Reporter: Chuan Liu Assignee: Chuan Liu Fix For: 3.0.0, 2.1.0-beta Attachments: HADOOP-9637-trunk.2.patch, HADOOP-9637-trunk.3.patch, HADOOP-9637-trunk.patch In the YARN, nodemanager need to enforce the log file can only be accessed by the owner. At various places, {{SecureIOUtils.openForRead()}} was called to enforce this check. We don't have {{NativeIO.Posix.getFstat()}} used by {{SecureIOUtils.openForRead()}} on Windows, and this make the check fail on Windows. The YARN unit tests TestAggregatedLogFormat.testContainerLogsFileAccess and TestContainerLogsPage.testContainerLogPageAccess fail on Windows because of this. The JIRA try to provide a Windows implementation of {{NativeIO.Posix.getFstat()}}. TestAggregatedLogFormat.testContainerLogsFileAccess test case fails on Windows. The test case try to simulate a situation where first log file is owned by different user (probably symlink) and second one by the user itself. In this situation, the attempt to try to aggregate the logs should fail with the error message Owner ... for path ... did not match expected owner The check on file owner happens at {{AggregatedLogFormat.write()}} method. The method calls {{SecureIOUtils.openForRead()}} to read the log files before writing out to the OutputStream. {{SecureIOUtils.openForRead()}} use {{NativeIO.Posix.getFstat()}} to get the file owner and group. We don't have {{NativeIO.Posix.getFstat()}} implementation on Windows; thus, the failure. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Updated] (HADOOP-9637) Adding Native Fstat for Windows as needed by YARN
[ https://issues.apache.org/jira/browse/HADOOP-9637?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Chuan Liu updated HADOOP-9637: -- Summary: Adding Native Fstat for Windows as needed by YARN (was: TestAggregatedLogFormat and TestContainerLogsPage fail on Windows) Adding Native Fstat for Windows as needed by YARN - Key: HADOOP-9637 URL: https://issues.apache.org/jira/browse/HADOOP-9637 Project: Hadoop Common Issue Type: Bug Affects Versions: 3.0.0, 2.1.0-beta Reporter: Chuan Liu Assignee: Chuan Liu Attachments: HADOOP-9637-trunk.patch TestAggregatedLogFormat.testContainerLogsFileAccess test case fails on Windows. The test case try to simulate a situation where first log file is owned by different user (probably symlink) and second one by the user itself. In this situation, the attempt to try to aggregate the logs should fail with the error message Owner ... for path ... did not match expected owner The check on file owner happens at {{AggregatedLogFormat.write()}} method. The method calls {{SecureIOUtils.openForRead()}} to read the log files before writing out to the OutputStream. {{SecureIOUtils.openForRead()}} use {{NativeIO.Posix.getFstat()}} to get the file owner and group. We don't have {{NativeIO.Posix.getFstat()}} implementation on Windows; thus, the failure. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Updated] (HADOOP-9637) Adding Native Fstat for Windows as needed by YARN
[ https://issues.apache.org/jira/browse/HADOOP-9637?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Chuan Liu updated HADOOP-9637: -- Attachment: HADOOP-9637-trunk.2.patch Adding Native Fstat for Windows as needed by YARN - Key: HADOOP-9637 URL: https://issues.apache.org/jira/browse/HADOOP-9637 Project: Hadoop Common Issue Type: Bug Affects Versions: 3.0.0, 2.1.0-beta Reporter: Chuan Liu Assignee: Chuan Liu Attachments: HADOOP-9637-trunk.2.patch, HADOOP-9637-trunk.patch TestAggregatedLogFormat.testContainerLogsFileAccess test case fails on Windows. The test case try to simulate a situation where first log file is owned by different user (probably symlink) and second one by the user itself. In this situation, the attempt to try to aggregate the logs should fail with the error message Owner ... for path ... did not match expected owner The check on file owner happens at {{AggregatedLogFormat.write()}} method. The method calls {{SecureIOUtils.openForRead()}} to read the log files before writing out to the OutputStream. {{SecureIOUtils.openForRead()}} use {{NativeIO.Posix.getFstat()}} to get the file owner and group. We don't have {{NativeIO.Posix.getFstat()}} implementation on Windows; thus, the failure. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Updated] (HADOOP-9637) Adding Native Fstat for Windows as needed by YARN
[ https://issues.apache.org/jira/browse/HADOOP-9637?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Chuan Liu updated HADOOP-9637: -- Description: In the YARN, nodemanager need to enforce the log file can only be accessed by the owner. At various places, {{SecureIOUtils.openForRead()}} was called to enforce this check. We don't have {{NativeIO.Posix.getFstat()}} used by {{SecureIOUtils.openForRead()}} on Windows, and this make the check fail on Windows. The YARN unit tests TestAggregatedLogFormat.testContainerLogsFileAccess and TestContainerLogsPage.testContainerLogPageAccess fail on Windows because of this. The JIRA try to provide a Windows implementation of {{NativeIO.Posix.getFstat()}}. TestAggregatedLogFormat.testContainerLogsFileAccess test case fails on Windows. The test case try to simulate a situation where first log file is owned by different user (probably symlink) and second one by the user itself. In this situation, the attempt to try to aggregate the logs should fail with the error message Owner ... for path ... did not match expected owner The check on file owner happens at {{AggregatedLogFormat.write()}} method. The method calls {{SecureIOUtils.openForRead()}} to read the log files before writing out to the OutputStream. {{SecureIOUtils.openForRead()}} use {{NativeIO.Posix.getFstat()}} to get the file owner and group. We don't have {{NativeIO.Posix.getFstat()}} implementation on Windows; thus, the failure. was: TestAggregatedLogFormat.testContainerLogsFileAccess test case fails on Windows. The test case try to simulate a situation where first log file is owned by different user (probably symlink) and second one by the user itself. In this situation, the attempt to try to aggregate the logs should fail with the error message Owner ... for path ... did not match expected owner The check on file owner happens at {{AggregatedLogFormat.write()}} method. The method calls {{SecureIOUtils.openForRead()}} to read the log files before writing out to the OutputStream. {{SecureIOUtils.openForRead()}} use {{NativeIO.Posix.getFstat()}} to get the file owner and group. We don't have {{NativeIO.Posix.getFstat()}} implementation on Windows; thus, the failure. Adding Native Fstat for Windows as needed by YARN - Key: HADOOP-9637 URL: https://issues.apache.org/jira/browse/HADOOP-9637 Project: Hadoop Common Issue Type: Bug Affects Versions: 3.0.0, 2.1.0-beta Reporter: Chuan Liu Assignee: Chuan Liu Attachments: HADOOP-9637-trunk.2.patch, HADOOP-9637-trunk.patch In the YARN, nodemanager need to enforce the log file can only be accessed by the owner. At various places, {{SecureIOUtils.openForRead()}} was called to enforce this check. We don't have {{NativeIO.Posix.getFstat()}} used by {{SecureIOUtils.openForRead()}} on Windows, and this make the check fail on Windows. The YARN unit tests TestAggregatedLogFormat.testContainerLogsFileAccess and TestContainerLogsPage.testContainerLogPageAccess fail on Windows because of this. The JIRA try to provide a Windows implementation of {{NativeIO.Posix.getFstat()}}. TestAggregatedLogFormat.testContainerLogsFileAccess test case fails on Windows. The test case try to simulate a situation where first log file is owned by different user (probably symlink) and second one by the user itself. In this situation, the attempt to try to aggregate the logs should fail with the error message Owner ... for path ... did not match expected owner The check on file owner happens at {{AggregatedLogFormat.write()}} method. The method calls {{SecureIOUtils.openForRead()}} to read the log files before writing out to the OutputStream. {{SecureIOUtils.openForRead()}} use {{NativeIO.Posix.getFstat()}} to get the file owner and group. We don't have {{NativeIO.Posix.getFstat()}} implementation on Windows; thus, the failure. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira