Skip to content

0.16.3+build.53

Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 10 Aug 06:06
a65a51b

What's Changed

  • Fixed silent data loss when overwriting a remote file. Each WinFsp file handle now tracks the visible length and allocation size it has reported and bounds constrained paged writes by that length instead of cached remote metadata, so a server whose reported length lags behind an acknowledged write no longer causes the tail of a copy to be dropped without an error. Allocation-size requests record the requested reservation instead of reporting the previous length.

  • A short remote write, and a short read before the tracked end of file, now report an error instead of a silently truncated range. A remote that returns fewer bytes than requested no longer counts as the end of the file; the requested range is refilled while the remote keeps making progress.

  • SFTP writes no longer read every acknowledged range back by default. A write now confirms the resulting remote length after its write handle is closed, which removes the second open and the duplicate transfer that made overwriting a remote file slow. The byte-for-byte read-back is available per mapping as Verify written content strictly.

更新内容

  • 修复覆盖远端文件时静默丢失数据的问题。每个 WinFsp 文件句柄现在跟踪自己已上报的可见长度和分配大小,受限分页写入以该长度为界,不再依赖可能滞后的远端元数据缓存;服务器上报长度落后于已确认写入时,复制不会再丢弃文件尾部且不报告任何错误。分配大小请求改为记录请求的预留量,而不是返回旧长度。

  • 远端写入不足,以及在跟踪的文件末尾之前读取不足,现在都会返回错误,而不是静默截断该范围。远端返回的字节数少于请求量不再等同于文件结束:只要远端仍有进展,请求范围会继续补齐。

  • SFTP 写入默认不再回读校验每个已确认范围。现在写入会在关闭写句柄后确认最终远端长度,去掉了导致覆盖远端文件缓慢的第二次打开和重复传输。逐字节回读比对改为按映射提供的「严格校验写入内容」选项。

Full Changelog / 完整变更: 0.16.2+build.52...0.16.3+build.53

Downloads / 下载

Platform / 平台 Architecture / 架构 Format / 格式 File / 文件
Windows x86_64 NSIS installer GugleFS_0.16.3_x64-setup.exe
Linux x86_64 DEB package GugleFS_0.16.3_amd64.deb
Linux x86_64 AppImage GugleFS_0.16.3_amd64.AppImage
macOS Apple Silicon (arm64) DMG GugleFS_0.16.3_aarch64.dmg
macOS Apple Silicon (arm64) App archive GugleFS_aarch64.app.tar.gz