Why do I have to drop the blink attribute and re-add it to create a partitioned blink table?

I can create a partitioned blink table, but why do I have to drop the blink attribute and re-add it to do so?

Aggregations on blink tables are defined to act as if you had full history from the time of operation instantiation. For example, if you use last_by on a blink table, you get the last n rows for each bucket, considering all rows that have ever been processed by the operation since it was created - even if those rows are no longer part of the current update cycle. Deephaven does not allow users to perform operations that can't deliver those semantics - meaning group_by, partition_by, and rollup tables with constituents will not work.

To get around these restrictions, you can use remove_blink to opt out of special semantics. Then, you can use partition_by to get a result with constituents that will blink in and out of existence.

Note

These FAQ pages contain answers to questions about Deephaven Community Core that our users have asked in our Community Slack. If you have a question that is not in our documentation, join our Community and we'll be happy to help!