Uploaded image for project: 'Couchbase .NET client library'
  1. Couchbase .NET client library
  2. NCBC-1480

Upsert against SPOCK server throws MissingKeyException

    XMLWordPrintable

Details

    • Bug
    • Status: Resolved
    • Blocker
    • Resolution: Fixed
    • 2.4.8
    • 2.5.0
    • None
    • None

    Description

      .NET 2.4.8 against SPOCK (5.0.0-3217, which is Beta2) throws MissingKeyException on Upsert operation.

      Here is the call stack

      Couchbase.NetClient.dll!Couchbase.IO.Operations.OperationBase.OperationBase(string key, Couchbase.Core.IVBucket vBucket, Couchbase.Core.Transcoders.ITypeTranscoder transcoder, uint opaque, uint timeout) Line 37 C#
      Couchbase.NetClient.dll!Couchbase.IO.Operations.OperationBase.OperationBase(string key, Couchbase.Core.IVBucket vBucket, Couchbase.Core.Transcoders.ITypeTranscoder transcoder, uint timeout) Line 53 C#
      Couchbase.NetClient.dll!Couchbase.IO.Operations.Authentication.SelectBucket.SelectBucket(string key, Couchbase.Core.Transcoders.ITypeTranscoder transcoder, uint timeout) Line 8 C#
      Couchbase.NetClient.dll!Couchbase.IO.ConnectionPoolBase<Couchbase.IO.MultiplexingConnection>.EnableEnhancedAuthentication(Couchbase.IO.IConnection connection) Line 157 C#
      > Couchbase.NetClient.dll!Couchbase.IO.SharedConnectionPool<Couchbase.IO.MultiplexingConnection>.Acquire() Line 74 C#
      Couchbase.NetClient.dll!Couchbase.IO.Services.PooledIOService.Execute<string>(Couchbase.IO.Operations.IOperation<string> operation) Line 153 C#
      Couchbase.NetClient.dll!Couchbase.Core.Server.Send<string>(Couchbase.IO.Operations.IOperation<string> operation) Line 570 C#
      Couchbase.NetClient.dll!Couchbase.Core.Buckets.CouchbaseRequestExecuter.SendWithRetry<string>(Couchbase.IO.Operations.IOperation<string> operation) Line 740 C#
      Couchbase.NetClient.dll!Couchbase.CouchbaseBucket.Upsert<string>(string key, string value) Line 2969 C#
      Sdkd.dll!Sdkd.Commands.SetCommand.ExecuteSingeSync.AnonymousMethod__0() Line 83 C#

       

       

      Also attaching the client log

      Attachments

        1. image-2017-08-21-14-03-44-777.png
          image-2017-08-21-14-03-44-777.png
          285 kB
        2. log.zip
          280 kB
        3. missingkeyexception.jpg
          missingkeyexception.jpg
          577 kB
        No reviews matched the request. Check your Options in the drop-down menu of this sections header.

        Activity

          jmorris Jeff Morris added a comment -

          I tried to reproduce, but could not. Additionally, this exception is thrown by the client before it sends the key to the server if the key is null or empty: https://github.com/couchbase/couchbase-net-client/blob/master/Src/Couchbase/IO/Operations/OperationBase.cs#L37-L40

          jmorris Jeff Morris added a comment - I tried to reproduce, but could not. Additionally, this exception is thrown by the client before it sends the key to the server if the key is null or empty:  https://github.com/couchbase/couchbase-net-client/blob/master/Src/Couchbase/IO/Operations/OperationBase.cs#L37-L40

          Looks like, based on the call stack, the issue can't be related to spock exclusively, correct?  

          ingenthr Matt Ingenthron added a comment - Looks like, based on the call stack, the issue can't be related to spock exclusively, correct?  

          I agree, but apparently, it happens with only 2.4.8 + spock. I'm trying to reproduce it now

          jaekwon.park Jae Park [X] (Inactive) added a comment - I agree, but apparently, it happens with only 2.4.8 + spock. I'm trying to reproduce it now

          looks like the first argument of SelectBucket(Configuration.BucketName, new DefaultTrancoder(), 0) is null at this point and SelectBucket's first argument was "string key". That is why MissngKeyException was thrown

          jaekwon.park Jae Park [X] (Inactive) added a comment - looks like the first argument of SelectBucket(Configuration.BucketName, new DefaultTrancoder(), 0) is null at this point and SelectBucket's first argument was "string key". That is why MissngKeyException was thrown

          Attached missingkeyexception.jpg. This will show why it happens on SPOCK

          jaekwon.park Jae Park [X] (Inactive) added a comment - Attached missingkeyexception.jpg. This will show why it happens on SPOCK

          People

            jmorris Jeff Morris
            jaekwon.park Jae Park [X] (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Gerrit Reviews

                There are no open Gerrit changes

                PagerDuty