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

Create/delete vbucket can lead to inefficency in flusher

    XMLWordPrintable

Details

    • Bug
    • Resolution: Fixed
    • Minor
    • None
    • .master
    • storage-engine
    • Security Level: Public
    • None
    • Untriaged
    • No

    Description

      If a vbucket is created and quickly deleted we're not setting the VbucketMap creation flag to false. The flusher can get into a position where it returns RETRY for the deleted VBucket because it first performs VBucketMap::isBucketCreation(vbid) which returns true.

      It's difficult to demonstrate and unit test against as it was spotted only when examining some custom build with many printfs.

      Fix is to ensure the creation flag is cleared as part of the VBucket being deleted. This will mean flusher returns 0 (not RETRY) and we'll re-gather the vbuckets ignoring the now deleted one forever, rather than requesting many flushes (all bounced with RETRY).

      Attachments

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

        Activity

          People

            jwalker Jim Walker
            jwalker Jim Walker
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Gerrit Reviews

                There are no open Gerrit changes

                PagerDuty