plusplusjiajia opened a new pull request, #8710:
URL: https://github.com/apache/paimon/pull/8710
### Purpose
In OSS legacy mode (PyArrow < 7, still supported for Python < 3.8), PyArrow
parses the first key segment as a bucket name, so bucket-level operations
target the wrong bucket:
- `mkdirs()` issued CreateBucket for the database directory, leaving a
stray
object that blocks all subsequent create-table mkdirs in that database
(`ParentNotDirectoryException`). Now a no-op in legacy mode.
- `list_status()` failed with a misleading NoSuchKey error; now fails fast
with a message pointing to pyarrow >= 7 or the jindo backend.
- `exists()` on directories cannot be fixed (PyArrow strips the trailing
slash of marker keys); documented as a known limitation.
Modern mode (pyarrow >= 7) is unchanged.
### Tests
New `oss_legacy_mode_test.py` (6 unit tests, no credentials required),
passing
on pyarrow 6.0.1 and 19.0.1. Verified live against managed OSS with
pyarrow 6:
writes commit cleanly and no stray object appears at the database
directory key.
### API and Format
No changes.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]