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

GAT updates seqno without updating seqList

    XMLWordPrintable

Details

    Description

      Ran the following against a 2 node cluster.

      cbc-pillowfight -t 3 -U 'couchbase://localhost:12000/test-bucket' -u test-bucket -P asdasd -e 33 -v
      

      Seen this both a debug and release build. The following information and is from a debug build of master on MacOSX Sierra. The interesting part of the backtrace is:

      frame #9: 0x000000010dc8fc92 ep.dylib`SeqRange::SeqRange(this=0x000070000118c980, beginVal=1168, endVal=1167) + 1986 at linked_list.h:56
          frame #10: 0x000000010dc89ed5 ep.dylib`SeqRange::SeqRange(this=0x000070000118c980, beginVal=1168, endVal=1167) + 37 at linked_list.h:54
          frame #11: 0x000000010dc8dd62 ep.dylib`BasicLinkedList::purgeTombstones(this=0x0000000111920a00) + 1490 at linked_list.cc:248
          frame #12: 0x000000010dbcb199 ep.dylib`EphemeralVBucket::purgeTombstones(this=0x000000011194d018, purgeAge=259200) + 137 at ephemeral_vb.cc:281
          frame #13: 0x000000010dbc5c66 ep.dylib`EphemeralVBucket::VBTombstonePurger::visitBucket(this=0x000070000118cef8, vb=std::__1::shared_ptr<VBucket>::element_type @ 0x000000011194d018 strong=2 weak=2) + 294 at ephemeral_tombstone_purger.cc:64
          frame #14: 0x000000010dc4860d ep.dylib`KVBucket::visit(this=0x000000011143d000, visitor=0x000070000118cef8) + 141 at kv_bucket.cc:2542
          frame #15: 0x000000010dbc600f ep.dylib`EphTombstonePurgerTask::run(this=0x0000000111386ea0) + 751 at ephemeral_tombstone_purger.cc:85
          frame #16: 0x000000010dbf4252 ep.dylib`ExecutorThread::run(this=0x0000000111575c00) + 2530 at executorthread.cc:122
      

      And an interesting frame is:

      frame #9: 0x000000010dc8fc92 ep.dylib`SeqRange::SeqRange(this=0x000070000118c980, beginVal=1168, endVal=1167) + 1986 at linked_list.h:56
         53  	    SeqRange(const seqno_t beginVal, const seqno_t endVal)
         54  	        : end(endVal), begin(beginVal) {
         55  	        if ((end < begin) || (begin < 0)) {
      -> 56  	            throw std::invalid_argument("Trying to create invalid SeqRange: [" +
         57  	                                        std::to_string(begin) + ", " +
         58  	                                        std::to_string(end) + "]");
         59  	        }
      

      Dump of the seqList:

      BasicLinkedList[0x10f6b0900] with numItems:3 deletedItems:0 staleItems:0 highPurgeSeqno:0 elements:[
          OSV @0x10f9ebb00 ... W.N temp:    seq:4275 rev:56 key:"ns:0 00000000000000000391" exp:1493287648 vallen:3094 val:"######################################## <cut>"
          OSV @0x10fb03a00 ... W.N temp:    seq:4274 rev:56 key:"ns:0 00000000000000000573" exp:1493287648 vallen:559 val:"######################################## <cut>"
          OSV @0x10f9cefa0 ... W.N temp:    seq:4314 rev:4202 key:"ns:0 00000000000000000201" exp:1493287648 vallen:1573 val:"######################################## <cut>"
      ]
      

      More seqlist dumps:

      2017-04-27T14:23:31.139372+01:00 WARNING (test-bucket) BasicLinkedList[0x113e3e400] with numItems:3 deletedItems:0 staleItems:0 highPurgeSeqno:0 elements:[
          OSV @0x113f40f40 ... W.N temp:    seq:86 rev:29 key:"ns:0 00000000000000000201" exp:1493299443 vallen:55 val:"######################################## <cut>"
          OSV @0x113f5b0a0 ... W.N temp:    seq:87 rev:29 key:"ns:0 00000000000000000391" exp:1493299443 vallen:58 val:"######################################## <cut>"
          OSV @0x113f7f3c0 ... W.N temp:    seq:85 rev:29 key:"ns:0 00000000000000000573" exp:1493299443 vallen:53 val:"######################################## <cut>"
      ]
       
      2017-04-27T14:23:31.139587+01:00 WARNING (test-bucket) BasicLinkedList[0x113e3e200] with numItems:3 deletedItems:0 staleItems:0 highPurgeSeqno:0 elements:[
          OSV @0x113f3e420 ... W.N temp:    seq:85 rev:29 key:"ns:0 00000000000000000172" exp:1493299443 vallen:59 val:"######################################## <cut>"
          OSV @0x113f80c80 ... W.N temp:    seq:87 rev:29 key:"ns:0 00000000000000000600" exp:1493299443 vallen:58 val:"######################################## <cut>"
          OSV @0x113fa5ee0 ... W.N temp:    seq:86 rev:29 key:"ns:0 00000000000000000790" exp:1493299443 vallen:61 val:"######################################## <cut>"
      ]
       
      2017-04-27T14:23:31.140074+01:00 WARNING (test-bucket) BasicLinkedList[0x113df7f00] with numItems:3 deletedItems:0 staleItems:0 highPurgeSeqno:0 elements:[
          OSV @0x113f4a780 ... W.N temp:    seq:87 rev:29 key:"ns:0 00000000000000000212" exp:1493299443 vallen:55 val:"######################################## <cut>"
          OSV @0x113f59fc0 ... W.N temp:    seq:86 rev:29 key:"ns:0 00000000000000000382" exp:1493299443 vallen:60 val:"######################################## <cut>"
          OSV @0x113f7ca00 ... W.N temp:    seq:85 rev:29 key:"ns:0 00000000000000000560" exp:1493299443 vallen:62 val:"######################################## <cut>"
      ]
      

      Attachments

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

        Activity

          People

            oliver.downard Oliver Downard (Inactive)
            oliver.downard Oliver Downard (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