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

Cursor dropping doesn't respect the purge-seqno

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Critical
    • Resolution: Fixed
    • Affects Version/s: 4.6.4, 5.1.0, 5.5.0
    • Fix Version/s: 5.5.0
    • Component/s: couchbase-bucket
    • Labels:
    • Triage:
      Untriaged
    • Is this a Regression?:
      Unknown

      Description

      The following sequence demonstrates the issue (this has been performed via a unit-test)

      • Create DCP and stream from vb0
      • store into vb0 k1,k2,k3,k4 and k5
      • stream all items, client knows about k1,k2,k3,k4 and k5
      • delete k3 and k4 (we have to delete a minimum of 2 items because compaction never purges a delete if its the last seqno)
      • run compaction - k3 tombstone is purged
      • stream is slow... so we drop its cursor and go to backfill mode
      • backfill finds delete(k4)
      • client streams all items available and gets delete(k4)

      Database has k1,k2,k5
      Client has k1,k2,k3,k5

      The cursor drop backfill was allowed to go beyond the purge-seqno, a normal stream request with backfill would be a rollback situation.

        Attachments

          Issue Links

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

            Activity

              People

              • Assignee:
                jwalker Jim Walker
                Reporter:
                jwalker Jim Walker
              • Votes:
                0 Vote for this issue
                Watchers:
                1 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved:

                  Gerrit Reviews

                  There are no open Gerrit changes

                    PagerDuty

                    Error rendering 'com.pagerduty.jira-server-plugin:PagerDuty'. Please contact your Jira administrators.