cortoproject / corto

A hierarchical object store for connecting realtime machine data with web applications, historians & more
https://www.corto.io
MIT License
87 stars 14 forks source link

Support filtering results from mounts #624

Closed SanderMertens closed 6 years ago

SanderMertens commented 6 years ago

Currently mounts are expected to do their own filtering. This however complicates mounts, and can make filtering less efficient as every mount has to evaluate the query expression for itself.

To improve efficiency and to allow for simple mount implementations, filtering should be optionally applied after results are returned by a mount. This should be enabled by default.

A mount should be able to turn this behavior off, when it does its own filtering. A mount should do its own filtering when always returning a full set requires too many resources.

A new boolean policy shall be added that controls this behavior, accessible through policy.filterResults. This will enable/disable filtering on all the components of a query, including identifier, type and parent.