HDDS-15102. Avoid ArchiveOutputStream.createArchiveEntry due to libnss issue#10117
HDDS-15102. Avoid ArchiveOutputStream.createArchiveEntry due to libnss issue#10117adoroszlai merged 4 commits intoapache:masterfrom
Conversation
adoroszlai
left a comment
There was a problem hiding this comment.
Thanks @symious for the patch.
adoroszlai
left a comment
There was a problem hiding this comment.
Thanks @symious for updating the patch.
| private static TarArchiveEntry createBasicTarArchiveEntry(File file, String entryName) | ||
| throws IOException { | ||
| TarArchiveEntry entry = new TarArchiveEntry(entryName); | ||
| entry.setMode(TarArchiveEntry.DEFAULT_FILE_MODE); |
There was a problem hiding this comment.
I don't think setMode should be called. TarArchiveEntry(String) sets mode depending on whether name ends with /. It also sets linkFlag, which cannot be updated later. I think we should rely on this behavior by ensuring name ends with / for directories.
|
Thanks @symious for updating the patch. Looks like there are some related test failures: https://github.com/apache/ozone/actions/runs/24875465109/job/72832265092?pr=10117#step:13:2514 https://github.com/apache/ozone/actions/runs/24875465109/job/72832265135?pr=10117#step:13:3765 https://github.com/apache/ozone/actions/runs/24875465109/job/72832265135?pr=10117#step:13:4039 |
|
@adoroszlai Thanks for the reminder. At first, it's only for includeFile, so the affected scope is smaller. Let me try to fix these errors. |
|
@adoroszlai Updated, PTAL. |
|
Thanks @symious for the patch. |
|
@adoroszlai Thank you for the review and merge. |
What changes were proposed in this pull request?
We encountered DN randomly crash in our cluster, should be related to sssd bugs. Some detailed error logs can be found below.
This ticket is a workaround for this issue, so that sssd won't be used to trigger the crash of Datanode.
What is the link to the Apache JIRA
https://issues.apache.org/jira/browse/HDDS-15102
How was this patch tested?
This is a replacement of TarArchiveEntry initialization, existing unit test will be enough.