[BP to 7.1.2] - Push filters to index scan to potentially reduce fetch size

Description

Currently, if an index scan is not covering, a fetch is done immediately after the index scan, and filters are evaluated after the fetch. There are situations where a filter cannot be effectively used to generate an index span, however the filter only depends on index keys and thus can potentially be evaluated with the index key values only. Such a filter can potentially discard result returned from the index scan and thus reduce unnecessary fetches.

Such filters can be something like:

lower(c1), when c1 is an index key
c1 LIKE "%abc%", like pattern with leading wild card

Components

Affects versions

Fix versions

Labels

Environment

None

Release Notes Description

None

Activity

Show:

CB robot October 7, 2022 at 8:56 AM

Build couchbase-server-7.2.0-5000 contains query commit 9626e62 with commit message:
Push available filters to index scan to reduce fetch size

Ajay Pal Bhullar July 15, 2022 at 7:23 AM

verified in 7.1.2 via automation and manual testing

Lynn Straus June 13, 2022 at 7:41 PM

With 7.1.1 split into "early" 7.1.1 and "new" 7.1.2, all related Enhancements and features move to 7.1.2. Changing fixversion of 7.1.1 to 7.1.2.

CB robot May 24, 2022 at 10:42 PM

Build couchbase-server-7.1.1-3083 contains query commit 9626e62 with commit message:
Push available filters to index scan to reduce fetch size

Fixed
Pinned fields
Click on the next to a field label to start pinning.

Details

Assignee

Reporter

Story Points

Priority

Instabug

Open Instabug

PagerDuty

Sentry

Zendesk Support

Created May 23, 2022 at 5:18 PM
Updated March 18, 2023 at 10:55 PM
Resolved May 25, 2022 at 11:06 PM
Instabug