mirror of
https://github.com/s3fs-fuse/s3fs-fuse.git
synced 2026-04-25 13:26:00 +03:00
[GH-ISSUE #2740] CI(GHA) and local test fail on Ubuntu 25.10 #1283
Labels
No labels
bug
bug
dataloss
duplicate
enhancement
feature request
help wanted
invalid
need info
performance
pull-request
question
question
testing
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
starred/s3fs-fuse#1283
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @ggtakec on GitHub (Oct 12, 2025).
Original GitHub issue: https://github.com/s3fs-fuse/s3fs-fuse/issues/2740
Related Issues/PRs
#2738 #2737
Details
CI was passing at the time of PR, but it's now failing frequently on Ubuntu 25.10.
The errors observed are in the following tests:
@ggtakec commented on GitHub (Oct 12, 2025):
The five pjdfstest errors appear to be related to the s3proxy settings.
The following errors were found in the test log:
In other words, the header size requested by s3fs is larger than 8192 bytes, and it seems to be rejected by s3proxy(jetty).
@gaul
This seems like it could be avoided by configuring jetty's requestHeaderSize setting, but is there a way to load that setting into s3proxy?
I will continue to investigate other errors.
@gaul commented on GitHub (Oct 12, 2025):
There is a tension here between what S3 supports, the S3Proxy behavior, and what the s3fs tests expect. S3 only supports a maximum key length of 1024 bytes. It seems that S3Proxy allows a larger limit, 8192, the default Jetty size. The test appears to create files with
PATH_MAX, or 4096 characters, although this increases with headers likex-amz-copy-source. From my perspective the easiest thing to do is increase the header limit as you suggest. Let me see if there is some way that users can pass through arbitrary properties but otherwise I can run another S3Proxy release to fix this.@ggtakec commented on GitHub (Oct 13, 2025):
The header size changes depending on the PATH length (or the values of other headers, etc.), so the upper limit was exceeded, but so far this has only occurred on Ubuntu 25.10.
Personally, I think that since this is an issue that occurs in part of s3fs-fuse's pjdfstest, it would be good to avoid it if possible using a configuration file or something similar.
(A fix that does not require integration into s3proxy)
@ggtakec commented on GitHub (Oct 13, 2025):
Related to this issue, I submitted PR #2741 to handle errors in xmlReadMemory calls in s3fs.
@ggtakec commented on GitHub (Oct 13, 2025):
I found out why the
test_update_parent_directory_time(which is only executed when theupdate_parent_dir_stat optionis used) is failing.There seems to be a problem with the behavior of the
statcommand used inUbuntu 25.10.First, below is a comparison of the stat command with
Ubuntu 24.04.The results of obtaining each atime/ctime/mtime using the stat command are as follows:
The atime/ctime decimal fraction are being truncated.
This is causing the
test_update_parent_directory_timetest to fail. (The test fails because the decimal point difference is not reflected.)I'm still investigating whether this is an issue(bug) with
Ubuntu 25.10, but I'm sharing this information for now.@ggtakec commented on GitHub (Oct 13, 2025):
Additional information
Starting with Ubuntu 25.10, stat has been replaced by uutils coreutils (Rust), and it appears that the GNU version cannot be installed as a package.
Looking at the source code, I noticed that the format for the
X,Y, andZoptions is different in the following section, which intentionally truncates decimal points.https://github.com/uutils/coreutils/blob/main/src/uu/stat/src/stat.rs#L1118-L1130
If we run the stat command without any options, we can get the atime/ctime values with decimal points, which can be handled specially in Ubuntu 25.10(such as
get_ctime).@gaul commented on GitHub (Oct 13, 2025):
I sent an upstream PR but Ubuntu doesn't update packages within a given release often. So it might be better for us to add a local workaround.
@ggtakec commented on GitHub (Oct 14, 2025):
@gaul
I've confirmed that your PR to uutils/coreutils has been merged.
That's good, but as you said, a temporary solution will be necessary until the fix is reflected in the package.
I'll prepare the code (tests) for the temporary solution