Uploaded image for project: 'Couchbase Server'
  1. Couchbase Server
  2. MB-30495

Better identifier handling for Index Covering determination

    XMLWordPrintable

Details

    • Improvement
    • Resolution: Fixed
    • Major
    • 6.5.0
    • 6.5.0
    • query
    • None

    Description

      Currently identifiers in N1QL are not "labeled", i.e. we don't know whether an identifier is a keyspace, or an alias, or others, this creates issues trying to determine whether a query is covered or not.

      The current mechanism for covering determination for identifiers is more or less "treat everything as covered unless there is a reason not to". Several previous bug fixes have fixed various issues encountered, e.g. MB-22112, MB-25317, MB-25370, MB-25560, MB-25561, MB-30350. The first attempt has been to distinguish whether something is "covered" from something that should be "skipped" since it does not pertain to the current keyspace being considered, as well as something that is "equivalent" to the index key and thus "covered".

      With regard to identifiers, we now have an indicator for whether an identifier is a keyspace identifier (see MB-26740, MB-27706, MB-28533). I'd like to use this indicator for more explicit checking for whether an identifier should be covered or not. (Currently we rely on whether an identifier is "single", i.e., not part of a field specification, for this purpose).

      Attachments

        Issue Links

          For Gerrit Dashboard: MB-30495
          # Subject Branch Project Status CR V

          Activity

            People

              ajay.bhullar Ajay Bhullar
              bingjie.miao Bingjie Miao
              Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Gerrit Reviews

                  There are no open Gerrit changes

                  PagerDuty