You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
When you run upsert, any columns not specified get deleted. this is a BIG problem. the behavior of train actions (other than overwrite) should be to maintain any data not explicitly requested to change (i.e. non-destructive). For example:
- train.lookup:
model_id: ecca50a5-7fa0-404a # Category Attributesaction: upsertcolumns:
- Key
- Schema # <- should not have to include - it exists and I do not want to update
- Mandatory/SEQ # <- should not have to include - it exists and I do not want to update
- Mapping
For my use case, I only need to update the Mapping column. But if that's all I specify then the other 2 get deleted.
Please also review behavior when columns are not specified. I think we should make it a mandatory parameter and only add / update what is specified.
Check other actions to ensure they also take this non-destructive approach to rows and columns
Key should be able to be specified as both the only return value or one of multiple.
Currently if you just specify Key, it treats it like an arbitray name for the dict with all columns (except key!)
And if you include it with another colm in the output you get an error!
Activity
ebhills commentedon Jun 16, 2026
see my comments on the PR.