XiaoHongbo-Hope opened a new pull request, #9239:
URL: https://github.com/apache/paimon/pull/9239
## Purpose
Allow applications to update selected rows of a data-evolution table from
their existing values, without handling row IDs or data-file layout.
`update_by_predicate` filters the target, applies an Arrow batch transform,
and writes only the selected columns. Large backfills are processed and
committed in file-group-aligned row ranges.
```python
update_by_predicate(
target="database.table",
predicate="topic = 'imu'",
read_columns=["payload"],
update_cols=["payload"],
transform=negate_coordinates,
rows_per_commit=1_000_000,
catalog_options={"warehouse": "..."},
)
```
The first version requires `read_columns` to be included in `update_cols`,
matching the existing row-id update conflict semantics.
## Tests
- New predicate-transform tests on Ray 2.51 and 2.56
- Existing row-id update tests
- Related transform, VARIANT, conflict-detection, and table-update tests
- Flake8 and `git diff --check`
182 related tests passed locally.
--
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]