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

Empty array from index scan not working properly when backfill is used

    XMLWordPrintable

Details

    • Untriaged
    • Unknown

    Description

      See CBSE-5629.

      Here is a simplified repro:

      INSERT INTO default VALUES(UUID(),{"severity":"low","deferred":[]}),
       VALUES(UUID(),{"severity":"low","deferred":[]}),
       VALUES(UUID(),{"severity":"low","deferred":[]}),
       VALUES(UUID(),{"severity":"low","deferred":[]}),
       VALUES(UUID(),{"severity":"low","deferred":[]}),
       VALUES(UUID(),{"severity":"low","deferred":[]}),
       VALUES(UUID(),{"severity":"low","deferred":[]}),
       VALUES(UUID(),{"severity":"low","deferred":[]}),
       VALUES(UUID(),{"severity":"low","deferred":[]}),
       VALUES(UUID(),{"severity":"low","deferred":[]});
      CREATE INDEX ix1 ON default(severity,deferred);
      SELECT META().id, deferred FROM default WHERE severity = "low";
      SELECT META().id, deferred FROM default WHERE severity = "low" AND EVERY v IN deferred SATISFIES v != "X" END;
      \set -scan_cap 2;
      SELECT META().id, deferred FROM default WHERE severity = "low";
      SELECT META().id, deferred FROM default WHERE severity = "low" AND EVERY v IN deferred SATISFIES v != "X" END;

      When scan_cap is set to a small number (2 above) backfill is used and the empty array deferred is showing up as "null" instead of "[]" in the first query, and in the second query when a predicate is used on the array it returns incorrect result.

      Attachments

        Issue Links

          No reviews matched the request. Check your Options in the drop-down menu of this sections header.

          Activity

            People

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

              Dates

                Created:
                Updated:
                Resolved:

                PagerDuty