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

[BP to 6.5.2] Respond back to outstanding requests upon exit of VbSeqnosReader

    XMLWordPrintable

Details

    • Untriaged
    • 1
    • Unknown

    Description

      VbSeqnosReader has been updated to process two types of requests in 6.5.0: a) VbSeqnosRequest (b) VbMinSeqnosRequest

      When processing VbSeqnosRequest, if there are any VbMinSeqnosRequest's, then the VbMinSeqnosRequest's will be queued back into the requestCh of VbSeqnosReader. If the VbSeqnosReader closes by this time, then enqueue will fail but the caller will be waiting for a response indefinitely.

       

      Attachments

        Issue Links

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

          Activity

            wayne Wayne Siu added a comment -

            Jeelan Poola
            Please confirm if this issue has to be backported to 6.5.2. Thanks.

            cc: Ritam SharmaMihir Kamdar

            wayne Wayne Siu added a comment - Jeelan Poola Please confirm if this issue has to be backported to 6.5.2. Thanks. cc: Ritam Sharma Mihir Kamdar

            Wayne Siu, Yes. This issue has to be BP to 6.5.2. The fix for this issue will prevent indexer from entering into a deadlock state

            varun.velamuri Varun Velamuri added a comment - Wayne Siu , Yes. This issue has to be BP to 6.5.2. The fix for this issue will prevent indexer from entering into a deadlock state

            Build couchbase-server-6.5.2-6616 contains indexing commit b0ee099 with commit message:
            MB-43232 Respond to outstanding requests on exit of vbSeqnosReader

            build-team Couchbase Build Team added a comment - Build couchbase-server-6.5.2-6616 contains indexing commit b0ee099 with commit message: MB-43232 Respond to outstanding requests on exit of vbSeqnosReader

            Hemant Rajput can you pls validate this one ?

            mihir.kamdar Mihir Kamdar (Inactive) added a comment - Hemant Rajput can you pls validate this one ?

            Varun Velamuri, as discussed let us know once you dev-verify it?

             

            hemant.rajput Hemant Rajput added a comment - Varun Velamuri , as discussed let us know once you dev-verify it?  

            Hemant Rajput, We can close this based on dev-verify. 

            Verified this issue by instrumenting the code using below steps:

            a. Simulated 1 BucketSeqnos request and 9 BucketMinSeqnos request in CreateIndex code path. This is to make sure that the requestCh of vbSeqnosReader will first dequeue BucketSeqnos request and call enqueueRequest for the other 9 BucketMinSeqnos requests

            b. Added 30 seconds sleep before fetching seqnos from bucket

            c. Deleted the bucket during this 30 sec duration

            d. As bucket is deleted, GetSeqnos will return an error

            f. This error will clean-up the vbseqnos reader and closes it's requestCh

            Before the patch, the index creation never progressed. After this patch, the create index progressed and the BucketMinSeqnos calls successfully returned

            varun.velamuri Varun Velamuri added a comment - Hemant Rajput , We can close this based on dev-verify.  Verified this issue by instrumenting the code using below steps: a. Simulated 1 BucketSeqnos request and 9 BucketMinSeqnos request in CreateIndex code path. This is to make sure that the requestCh of vbSeqnosReader will first dequeue BucketSeqnos request and call enqueueRequest for the other 9 BucketMinSeqnos requests b. Added 30 seconds sleep before fetching seqnos from bucket c. Deleted the bucket during this 30 sec duration d. As bucket is deleted, GetSeqnos will return an error f. This error will clean-up the vbseqnos reader and closes it's requestCh Before the patch, the index creation never progressed. After this patch, the create index progressed and the BucketMinSeqnos calls successfully returned

            People

              hemant.rajput Hemant Rajput
              varun.velamuri Varun Velamuri
              Votes:
              0 Vote for this issue
              Watchers:
              6 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Gerrit Reviews

                  There are no open Gerrit changes

                  PagerDuty