Merge remote-tracking branch 'couchbase/3.0.x' into sherlock 81/65581/1
authorDave Rigby <daver@couchbase.com>
Thu, 7 Jul 2016 13:48:01 +0000 (14:48 +0100)
committerDave Rigby <daver@couchbase.com>
Thu, 7 Jul 2016 13:48:01 +0000 (14:48 +0100)
* couchbase/3.0.x:
  MB-19886: Fix data race on ActiveStream::curChkSeqno by making it atomic
  MB-19886: In markDiskSnapshot() get current vb snapshot info outside streamMutex
  MB-19843: Modify the end_seqno in DCP stream request after checking for rollback

Change-Id: I32c52689b4c78f3416af180818df772d217db882

1  2 
src/dcp-stream.h
src/vbucket.h

Simple merge
diff --cc src/vbucket.h
@@@ -511,9 -455,11 +511,11 @@@ private
      Mutex pendingBGFetchesLock;
      vb_bgfetch_queue_t pendingBGFetches;
  
+     /* snapshotMutex is used to update/read the pair {start, end} atomically,
+        but not if reading a single field. */
      Mutex snapshotMutex;
 -    AtomicValue<uint64_t> cur_snapshot_start;
 -    AtomicValue<uint64_t> cur_snapshot_end;
 +    uint64_t persisted_snapshot_start;
 +    uint64_t persisted_snapshot_end;
  
      Mutex hpChksMutex;
      std::list<HighPriorityVBEntry> hpChks;