ITADN

Local filesystem catalog drops the drive letter on Windows (os error 123)

#397ClosedTheR1sing3un 创建于 2026-06-19
T
TheR1sing3uncommented
### Bug The local `FileIO` (`fs` storage) corrupts absolute Windows paths. In `crates/paimon/src/io/storage.rs`, `fs_relative_path` turns an absolute path into the path opendal joins onto its `/` root by dropping the first character. That is correct for POSIX (`/tmp/wh` -> `tmp/wh`), but on Windows it drops the **drive letter** (`C:\wh` -> `:\wh`), producing an invalid path. Every `FileSystemCatalog` operation then fails with `The filename, directory name, or volume label syntax is incorrect (os error 123)`. Because of this, the `filesystem`, `factory`, and `manifest` test modules are currently gated behind `#[cfg(not(windows))] // Skip on Windows due to path compatibility issues`. ### Expected Local paths with a Windows drive specifier (`C:\...`) should work, matching Java Paimon — whose `Path` (modeled on Hadoop) keeps the drive letter and normalizes separators — and the Windows test gates should be removable so CI covers the local FileIO. ### Reproduce Run the `paimon` crate's `filesystem`/`factory`/`manifest` tests (or any `FileSystemCatalog` operation over a `C:\...` warehouse) on Windows. ### Environment paimon-rust `main`, Windows.
关闭于 2026-06-20 0 条评论