MB-21599: Prevent LWW XDCR from non LWW cluster 16/70016/12
authorJim Walker <jim@couchbase.com>
Thu, 17 Nov 2016 12:35:43 +0000 (12:35 +0000)
committerDave Rigby <daver@couchbase.com>
Mon, 21 Nov 2016 17:08:00 +0000 (17:08 +0000)
commit8d564a0c9d1f249a7b9828e3865a759dcf5148ce
treecf4fd5c4f542e2096281bfb069991e77cd82faae
parent8b7ee5ae70fb5fff85aa108994caab2ecd5b1d06
MB-21599: Prevent LWW XDCR from non LWW cluster

Add support for FORCE_ACCEPT_WITH_META_OPS
 - This flag must be set if the bucket is lww
 - Error if the bucket is !lww

Add support for REGENERATE_CAS
 - This flag requires SKIP_CONFLICT_RESOLUTION
 - When the item is stored, its CAS is re-created.

Tidy up test code relating to *_with_meta and add more extensive
testing of options and nmeta.

Change-Id: Ifb149927d3f63357d30392352c9c81533cbf2ff1
Reviewed-on: http://review.couchbase.org/70016
Tested-by: buildbot <build@couchbase.com>
Reviewed-by: Dave Rigby <daver@couchbase.com>
src/dcp/stream.cc
src/ep.cc
src/ep.h
src/ep_engine.cc
src/ep_engine.h
src/tapconnection.cc
tests/ep_test_apis.cc
tests/ep_test_apis.h
tests/ep_testsuite.cc
tests/ep_testsuite_xdcr.cc