When a mount policy enables filterResults, queries on the mount are filtered by corto (as opposed to forcing the mount to do the filtering). This can often be more performant than having the mount construct & evaluate a filter for every query, as filters can often be shared between mount queries.
When resuming data from a mount (using for example corto_lookup or corto_result) the mount_resume function does not take into account if filterResults has been enabled, and therefore fails if the mount returns multiple (unfiltered) results for an object specifying a single query.
When filterResults is enabled, mount_resume should check if the returned objects match the object it is trying to resume. This can be done cheaply with a single strcmp, as queries for a resume always relate to a single object and won't contain wildcard operators.
When a mount policy enables
filterResults
, queries on the mount are filtered by corto (as opposed to forcing the mount to do the filtering). This can often be more performant than having the mount construct & evaluate a filter for every query, as filters can often be shared between mount queries.When resuming data from a mount (using for example
corto_lookup
orcorto_result
) themount_resume
function does not take into account iffilterResults
has been enabled, and therefore fails if the mount returns multiple (unfiltered) results for an object specifying a single query.When
filterResults
is enabled,mount_resume
should check if the returned objects match the object it is trying to resume. This can be done cheaply with a singlestrcmp
, as queries for a resume always relate to a single object and won't contain wildcard operators.