Benedict Elliott Smith created CASSANDRA-20899:
--------------------------------------------------
Summary: Lazy Virtual Tables
Key: CASSANDRA-20899
URL: https://issues.apache.org/jira/browse/CASSANDRA-20899
Project: Apache Cassandra
Issue Type: Improvement
Components: Virtual Tables
Reporter: Benedict Elliott Smith
Virtual tables construct their result eagerly by default, with no protection
against time or heap overruns, which has proven to be a problem for some Accord
debug virtual tables.
This patch introduces AbstractLazyVirtualTable that is just as easy to use
(requires minimal porting), but:
- aborts the query if it is taking too long
- eagerly filters rows by any search criteria, and discards any columns we are
not selecting
- eagerly applies limits to the records it collects, so that we never keep
more than some multiple of the final result set in memory
- supports lazy materialisation of rows (at caller's discretion), so we can
avoid formatting inputs until they have been excluded by the above filters
- can exploit in-order visitation to tightly bound this extra work
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]