huaheh opened a new issue, #9188: URL: https://github.com/apache/pinot/issues/9188
In a partial upsert table, we can define an upsert strategy for each column, for example, OVERWRITE. This leads to the column's value always being overwritten by the next incoming event. The suggestion is to have control over merging the existing column value and the field value of the incoming event. For example, a table has two columns, col1 and col2, both having OVERWRITE upsert strategy. With incoming event {"f1":"v1", "f2": null}, the expected transformation is like ``` { "columnName": "col1", "transformFunction": "OVERWRITE_IF(f1 != null, f1, col1)" }, { "columnName": "col2", "transformFunction": "OVERWRITE_IF(f2 != null, f2, col2)" }, ``` This way col1 will be updated with v1 while col2 will remain its old value. This flexibility allows us to ingest some fields of an event and drop the other fields, and not have to drop the whole event if we merely don't want some columns to be overwritten. -- 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: commits-unsubscr...@pinot.apache.org.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@pinot.apache.org For additional commands, e-mail: commits-h...@pinot.apache.org