Revision tags: v7.0.2, v6.6.3, v7.0.1, v7.0.0, v6.6.2, v6.5.2, v6.6.1, v6.0.5, v6.6.0, v6.5.1, v6.0.4, v6.5.0, v6.0.3, v5.5.4, v5.5.5, v5.5.6, v6.0.1, v5.5.3, v6.0.0, v5.1.3, v5.5.2, v5.5.1, v5.1.2, v5.1.1 |
|
#
d92cc586 |
| 27-Mar-2018 |
Sriram Ganesan <sriram@couchbase.com> |
MB-28777: Provide a min_compression_ratio configuration parameter If there isn't much difference between sizes of compressed and uncompressed data, then decompressing the data every time
MB-28777: Provide a min_compression_ratio configuration parameter If there isn't much difference between sizes of compressed and uncompressed data, then decompressing the data every time for a client would outweigh the cost of storing the data as compressed as there is no perceivable benefit in space savings Change-Id: Ic6d735213faa00dfc2331d577f4cee80b46e715e Reviewed-on: http://review.couchbase.org/91769 Tested-by: Build Bot <build@couchbase.com> Reviewed-by: Dave Rigby <daver@couchbase.com>
show more ...
|
#
82ac78ad |
| 29-Jan-2018 |
Trond Norbye <trond.norbye@gmail.com> |
Remove engine feature information The feature information was never used and is currently generating warnings from gcc 7. Given that we don't use it we should nuke it. Chang
Remove engine feature information The feature information was never used and is currently generating warnings from gcc 7. Given that we don't use it we should nuke it. Change-Id: Ica99af5e9dda549b090b0a4033b0f577e08a5438 Reviewed-on: http://review.couchbase.org/88494 Reviewed-by: Tim Bradgate <tim.bradgate@couchbase.com> Tested-by: Build Bot <build@couchbase.com>
show more ...
|
#
35cb14e6 |
| 22-Jan-2018 |
Sriram Ganesan <sriram@couchbase.com> |
MB-27543: [Restore] Decompress the value before storing in 'off' mode This reverts commit abff81203272095e247926346c5c720b1210385e. Restoring the commit as it wasn't the root cause of th
MB-27543: [Restore] Decompress the value before storing in 'off' mode This reverts commit abff81203272095e247926346c5c720b1210385e. Restoring the commit as it wasn't the root cause of the post commit failures. Change-Id: I7f8ad00cc4ddc2760140bcece8168caaef0e86b0 Reviewed-on: http://review.couchbase.org/88193 Tested-by: Build Bot <build@couchbase.com> Reviewed-by: Sriram Ganesan <sriram@couchbase.com>
show more ...
|
#
abff8120 |
| 22-Jan-2018 |
Sriram Ganesan <sriram@couchbase.com> |
Revert "MB-27543: Decompress the value before storing in 'off' mode" This reverts commit 268ecbd4b8715333475c833e12efee16a6d0e759. Commit has resulted in post commit failures. Hence, rev
Revert "MB-27543: Decompress the value before storing in 'off' mode" This reverts commit 268ecbd4b8715333475c833e12efee16a6d0e759. Commit has resulted in post commit failures. Hence, reverting. Change-Id: Ib5355170dd5e0e5aec0a39943f837bb0d90a09ea Reviewed-on: http://review.couchbase.org/88185 Tested-by: Build Bot <build@couchbase.com> Reviewed-by: Jim Walker <jim@couchbase.com>
show more ...
|
#
268ecbd4 |
| 16-Jan-2018 |
Sriram Ganesan <sriram@couchbase.com> |
MB-27543: Decompress the value before storing in 'off' mode If the bucket compression mode is 'off' and the value is snappy compressed, then the value needs to be decompressed before
MB-27543: Decompress the value before storing in 'off' mode If the bucket compression mode is 'off' and the value is snappy compressed, then the value needs to be decompressed before storing it in the hash table Change-Id: I6c32215ea49aebbd0f71993bb4579ac275acdf6d Reviewed-on: http://review.couchbase.org/87808 Reviewed-by: Trond Norbye <trond.norbye@gmail.com> Tested-by: Build Bot <build@couchbase.com>
show more ...
|
Revision tags: v5.0.1 |
|
#
aacf24fd |
| 23-Nov-2017 |
Trond Norbye <trond.norbye@gmail.com> |
Refactor: Use gsl::not_null in engine API This is an initial refactor. At some point we want to refactor the cookie argument from a const void pointer to Cookie& Change-Id: Ie7d
Refactor: Use gsl::not_null in engine API This is an initial refactor. At some point we want to refactor the cookie argument from a const void pointer to Cookie& Change-Id: Ie7d5b15f5d19725c4da2e3cbf760ced319026c0b Reviewed-on: http://review.couchbase.org/85960 Reviewed-by: Paolo Cocchi <paolo.cocchi@couchbase.com> Tested-by: Build Bot <build@couchbase.com>
show more ...
|
#
a14f9224 |
| 23-Nov-2017 |
Trond Norbye <trond.norbye@gmail.com> |
Remove unused "cookie" parameter in engine API release(), get_item_info(), set_item_info() and set_item_cas() all ignored the cookie being passed in. Remove the parameter as we
Remove unused "cookie" parameter in engine API release(), get_item_info(), set_item_info() and set_item_cas() all ignored the cookie being passed in. Remove the parameter as we don't use it! Change-Id: I6c78d734172925d50b69471d95c9aaefc42f99ed Reviewed-on: http://review.couchbase.org/85956 Tested-by: Build Bot <build@couchbase.com> Reviewed-by: Dave Rigby <daver@couchbase.com>
show more ...
|
Revision tags: v5.1.0, v5.0.0 |
|
#
0321b2e6 |
| 11-Jul-2017 |
Trond Norbye <trond.norbye@gmail.com> |
Refactor: Use global_assoc directly There is only a single assoc table used by all engines and it makes the code easier to test with a mock client if we don't require a real engine h
Refactor: Use global_assoc directly There is only a single assoc table used by all engines and it makes the code easier to test with a mock client if we don't require a real engine handle to be passed to the assoc submodule. Change-Id: I4d728ca041aa633f5ba179e65d831bf535c028f8 Reviewed-on: http://review.couchbase.org/80560 Tested-by: Build Bot <build@couchbase.com> Reviewed-by: Jim Walker <jim@couchbase.com>
show more ...
|
#
86724888 |
| 27-Jun-2017 |
Jim Walker <jim@couchbase.com> |
MB-25011: Allow buckets to disable/enable xattrs With full-eviction buckets the set/replace path may see a performance hit because the read/modify/write semantics required to support xat
MB-25011: Allow buckets to disable/enable xattrs With full-eviction buckets the set/replace path may see a performance hit because the read/modify/write semantics required to support xattrs will see an increase in bg-fetches (where we first see if a key exists to determine if the new value must inherit existing xattrs). If a user has pre-spock full-eviction buckets this performance hit could be an issue for them, if there application is as well pre-spock then they have 0 xattrs and could get the performance back by turning xattrs off. This commit introduces for ep-engine a config switch and cbepctl option to disable xattrs per bucket. This works by the engine API gaining a new function "isXattrEnabled" so that memcached can query the bucket for xattr yes/no. With isXattrEnabled() returning false the following happens: * SUBDOC commands with xattr paths will fail validation and see PROTOCOL_BINARY_RESPONSE_NOT_SUPPORTED * SET/REPLACE will short-cut the read/mod/write logic and perform only a write (store_if with a alway true predicate). * Any command with an xattr dataype will be invalid (e.g. set_w_meta) * DCP will ignore request to open with xattrs, even replication, thus if xattrs did exist in the database, they won't be seen on DCP. Testing: This patch extends testapp so that it can toggle xattrs using the set_param command and then adjusts the expected return codes when xattrs are being used. Some xattr specific tests are adjusted to cope with when getXattr triggers connection closing (hence they now reconnect for each mutate/replace) This also means that default engine now accepts set_param for xattr_enabled only, this was the simplest way to get the test harness working for all modes without further churn. Change-Id: I37c3663de36a9c0068101e0287f53f047b64c98b Reviewed-on: http://review.couchbase.org/79817 Reviewed-by: Dave Rigby <daver@couchbase.com> Tested-by: Build Bot <build@couchbase.com>
show more ...
|
Revision tags: v4.6.2_ep, v4.6.2_mc, v4.6.1_ep |
|
#
98b69964 |
| 09-Jan-2017 |
Trond Norbye <trond.norbye@gmail.com> |
Add more docs to hash_item Also release 1 byte of "internal flags" as we only use 3 bits out of the 16 bits we've reserved. In addition I've sorted the variabels with the widest
Add more docs to hash_item Also release 1 byte of "internal flags" as we only use 3 bits out of the 16 bits we've reserved. In addition I've sorted the variabels with the widest datatypes first (and added a comment in the end with the number of bytes availabe in the struct). Change-Id: Ia20967534223bb3fda32768947dbac557e1759a7 Reviewed-on: http://review.couchbase.org/71758 Tested-by: buildbot <build@couchbase.com> Reviewed-by: Dave Rigby <daver@couchbase.com>
show more ...
|
#
98c14ddb |
| 09-Jan-2017 |
Trond Norbye <trond.norbye@gmail.com> |
Refactor: Remove function to get struct member hash_item->cas Change-Id: I0e6abb870ce864115a0172f775d8a20c18443ae6 Reviewed-on: http://review.couchbase.org/71757 Tested-by: buildbot
Refactor: Remove function to get struct member hash_item->cas Change-Id: I0e6abb870ce864115a0172f775d8a20c18443ae6 Reviewed-on: http://review.couchbase.org/71757 Tested-by: buildbot <build@couchbase.com> Reviewed-by: Dave Rigby <daver@couchbase.com>
show more ...
|
#
22eb2257 |
| 06-Jan-2017 |
Trond Norbye <trond.norbye@gmail.com> |
Remove support for running without cas (As part of the refactor we've done in the core by implementing various commands by using CAS we cannot run without CAS anymore. It has never b
Remove support for running without cas (As part of the refactor we've done in the core by implementing various commands by using CAS we cannot run without CAS anymore. It has never been a public API to disable CAS so nuking it should be safe) Change-Id: I26a33805877e932c2274b3c5d019420c3fa82934 Reviewed-on: http://review.couchbase.org/71646 Tested-by: buildbot <build@couchbase.com> Reviewed-by: Daniel Owen <owend@couchbase.com>
show more ...
|
#
374efa4b |
| 10-Dec-2016 |
Trond Norbye <trond.norbye@gmail.com> |
Add support for keeping deleted items in memcached buckets We need this for unit testing of subdoc access to operate on deleted items. It is enabled by setting the configuration
Add support for keeping deleted items in memcached buckets We need this for unit testing of subdoc access to operate on deleted items. It is enabled by setting the configuration parameter keep_deleted=true With that option enabled they're treated just as a normal entry in the cache with respect to the LRU, but not returned unless explicitly asked for. Change-Id: I3dff83c200f96b48fa40a1aa0337419b0adc52a5 Reviewed-on: http://review.couchbase.org/70857 Tested-by: buildbot <build@couchbase.com> Reviewed-by: Jim Walker <jim@couchbase.com>
show more ...
|
#
8fe986d4 |
| 10-Dec-2016 |
Trond Norbye <trond.norbye@gmail.com> |
Remove unused function item_get_clsid Change-Id: I81a49b833f3a718ff8a5c15c5804be7e235fbb53 Reviewed-on: http://review.couchbase.org/70855 Tested-by: buildbot <build@couchbase.com>
Remove unused function item_get_clsid Change-Id: I81a49b833f3a718ff8a5c15c5804be7e235fbb53 Reviewed-on: http://review.couchbase.org/70855 Tested-by: buildbot <build@couchbase.com> Reviewed-by: Dave Rigby <daver@couchbase.com>
show more ...
|
Revision tags: v4.6.0_ep |
|
#
fbfe6e1d |
| 22-Nov-2016 |
Jim Walker <jim@couchbase.com> |
MB-21763: Move final C modules to C++ Remove all of the C modules from memcached. Fairly simple and requires some changes mostly for const and void* usage. Change-Id: Ib2a741944
MB-21763: Move final C modules to C++ Remove all of the C modules from memcached. Fairly simple and requires some changes mostly for const and void* usage. Change-Id: Ib2a7419448448102fe1c6bd61d4b03596166ad1b Reviewed-on: http://review.couchbase.org/70261 Reviewed-by: Trond Norbye <trond.norbye@gmail.com> Reviewed-by: Dave Rigby <daver@couchbase.com> Tested-by: buildbot <build@couchbase.com>
show more ...
|
Revision tags: v4.5.1-MP1_mc, v4.6.0-DP_mc, v4.6.0-DP_ep, v4.5.1-MP1_ep, v4.1.2-MP2_mc, v4.5.1_mc, v4.6.0_mc, v4.1.2-MP1_ep, v3.1.6_ep, v4.5.0_mc, v4.5.0_ep, v4.1.1_ep, v3.1.5_ep |
|
#
ca61c5fb |
| 21-Mar-2016 |
Trond Norbye <trond.norbye@gmail.com> |
MB-18786: Fix race condition Initialize the engine handle before inserting into the list of created engines. Change-Id: Ib0ef7ccc42730af329a78e6e031f0fe254f40ab1 Reviewed-on
MB-18786: Fix race condition Initialize the engine handle before inserting into the list of created engines. Change-Id: Ib0ef7ccc42730af329a78e6e031f0fe254f40ab1 Reviewed-on: http://review.couchbase.org/61766 Tested-by: buildbot <build@couchbase.com> Reviewed-by: Will Gardner <will.gardner@couchbase.com>
show more ...
|
Revision tags: v4.1.1_mc, v3.1.4_ep, v3.1.4_mc, v3.1.5_mc, v3.1.3_ep, v4.1.0_ep, v3.1.2_ep, v4.1.0_mc, v3.1.2_mc, v3.1.1_mc, v3.1.1_ep, v4.0.0_ep, v4.0.0_mc, v3.1.0_ep, v3.1.0_mc, v3.1.6_mc |
|
#
6ca4e721 |
| 25-Jun-2015 |
jim <jim@couchbase.com> |
Ensure bucket destroy removes hash-table items belonging to the destroyed bucket. Change-Id: I03ac48ca96568af965a2942637af94e830ec0b53 Reviewed-on: http://review.couchbase.org/52532
Ensure bucket destroy removes hash-table items belonging to the destroyed bucket. Change-Id: I03ac48ca96568af965a2942637af94e830ec0b53 Reviewed-on: http://review.couchbase.org/52532 Reviewed-by: Dave Rigby <daver@couchbase.com> Tested-by: Dave Rigby <daver@couchbase.com> Tested-by: buildbot <build@couchbase.com>
show more ...
|
Revision tags: v3.0.2-MP2_mc |
|
#
6bbec722 |
| 12-Dec-2014 |
jim <jim@couchbase.com> |
Tynset - A multi-bucket default_engine 1. All buckets store their items in a single hash_table (assoc). 1.1 Each item key now has a bucket_id prepended to the key string. 1.2 The eng
Tynset - A multi-bucket default_engine 1. All buckets store their items in a single hash_table (assoc). 1.1 Each item key now has a bucket_id prepended to the key string. 1.2 The engine->assoc points to the single table and all code still manipulates the table via the engine handle. 2. The bucket_id is managed by memcached 'core' 2.1 The bucket_id is a 32-bit unsigned integer which increments for every bucket creation the process receives. 2.2 The bucket_id is not persisted, the same bucket after a restart is not guaranteed the same bucket_id (this is subject to future change). 2.3 The bucket_id must not wrap (i.e. a bucket_id can't be reused) 3. Bucket deletion is performed by the item scrubber. 3.1 A single scrubber thread has a queue of engine's to scrub and delete. 3.2 Global cleanup/shutdown collects this single thread so that the DLL can be safely unloaded. Change-Id: Idc2bb6748dc75a227c97ad9c44445758b88015b0 Reviewed-on: http://review.couchbase.org/50122 Tested-by: buildbot <build@couchbase.com> Reviewed-by: Trond Norbye <trond.norbye@gmail.com>
show more ...
|
#
5461ca70 |
| 22-Apr-2015 |
Trond Norbye <trond.norbye@gmail.com> |
Make memcached multi-bucket-aware This is step one. With this patch all engines will be loaded during startup so that we know that all symbols will be resolved in the engine
Make memcached multi-bucket-aware This is step one. With this patch all engines will be loaded during startup so that we know that all symbols will be resolved in the engine (so that we know that during startup rather than after running for 3 weeks when someone decides to create a bucket of type x). If you want to test out an experimental engine you have to do that through the ewouldblock engine Change-Id: Idb4ef895dacf2d916b07af4aebca79cba7fda6ba Reviewed-on: http://review.couchbase.org/50053 Tested-by: buildbot <build@couchbase.com> Reviewed-by: Dave Rigby <daver@couchbase.com>
show more ...
|
#
e25e5f8b |
| 21-Apr-2015 |
jim <jim@couchbase.com> |
Standardise on using engine_loader functions and introduce destroy_engine. This change primarily introduces a destroy_engine method so that engines can clean up before unloading. Using e
Standardise on using engine_loader functions and introduce destroy_engine. This change primarily introduces a destroy_engine method so that engines can clean up before unloading. Using engine_loader as the single API for loading ensures all engine define the method. ep.so currently does not unload the malloc hooks and we segfault if memory alloc/dealloc occurs post dlclose of ep.so. Adding the destroy_engine path allows ep.so to clean up the hooks. Change-Id: I4ead9f87388110078e495f951ae22cb06c089527 Reviewed-on: http://review.couchbase.org/49978 Tested-by: buildbot <build@couchbase.com> Reviewed-by: Jim Walker <jim@couchbase.com>
show more ...
|
Revision tags: v3.0.2_ep, v3.0.2_mc |
|
#
df9a4b24 |
| 13-Nov-2014 |
Trond Norbye <trond.norbye@gmail.com> |
Remove unused tap and dcp code in default_engine Change-Id: Ife41e5d0bd38d8721c234e01d42fb9eecf0b918c Reviewed-on: http://review.couchbase.org/43174 Tested-by: buildbot <build@couchb
Remove unused tap and dcp code in default_engine Change-Id: Ife41e5d0bd38d8721c234e01d42fb9eecf0b918c Reviewed-on: http://review.couchbase.org/43174 Tested-by: buildbot <build@couchbase.com> Reviewed-by: Dave Rigby <daver@couchbase.com> Reviewed-by: Michael Wiederhold <mike@couchbase.com>
show more ...
|
Revision tags: v3.0.1_mc, v3.0.0_ep, v3.0.0-beta3_mc |
|
#
65143ec3 |
| 04-Sep-2014 |
Trond Norbye <trond.norbye@gmail.com> |
Rename create_instance() This allows for explicit calling the function to create an instance instead of having to run dlopen. Change-Id: I79910e29825e976b7fa889a43283a06c6f1f40b
Rename create_instance() This allows for explicit calling the function to create an instance instead of having to run dlopen. Change-Id: I79910e29825e976b7fa889a43283a06c6f1f40bb Reviewed-on: http://review.couchbase.org/41189 Tested-by: Trond Norbye <trond.norbye@gmail.com> Reviewed-by: Dave Rigby <daver@couchbase.com>
show more ...
|
Revision tags: v3.0.0_mc, v3.0.0-beta2_mc, v3.0.0-beta1_mc, v2.5.1_ep, v2.5.1-MP1-A_mc, v2.5.0_mc, v2.5.0-dp1_mc |
|
#
3afa9b4d |
| 29-Aug-2013 |
Trond Norbye <trond.norbye@gmail.com> |
MB-8578: Add stats uuid Change-Id: I18bf15ad81b0911710220abaf19f89ed71598bc5 Reviewed-on: http://review.couchbase.org/28672 Reviewed-by: Michael Wiederhold <mike@couchbase.com> T
MB-8578: Add stats uuid Change-Id: I18bf15ad81b0911710220abaf19f89ed71598bc5 Reviewed-on: http://review.couchbase.org/28672 Reviewed-by: Michael Wiederhold <mike@couchbase.com> Tested-by: Trond Norbye <trond.norbye@gmail.com>
show more ...
|
Revision tags: v2.2.0_mc, 2.1.1r_ep, 2.1.0r_ep, 2.0.2r_ep |
|
#
f603fdb6 |
| 05-May-2013 |
Trond Norbye <trond.norbye@gmail.com> |
Revamp build process * Build using CMake (http://www.cmake.org) * Link with tcmalloc instead of dlopen * Build on Windows by using MSVC * Platform library hiding threads and mute
Revamp build process * Build using CMake (http://www.cmake.org) * Link with tcmalloc instead of dlopen * Build on Windows by using MSVC * Platform library hiding threads and mutexes * Dropped support for UDP * Ensure that the test applications run on windows! Change-Id: Iecf1aaa81e95564d3c0918a58d041e074e756ab0 Reviewed-on: http://review.couchbase.org/28671 Reviewed-by: Michael Wiederhold <mike@couchbase.com> Tested-by: Trond Norbye <trond.norbye@gmail.com>
show more ...
|
Revision tags: 2.0.2r_mc, 2.0.1-macosx_ep, 2.0.1-linux_ep, 2.0.1-linux_mc, 2.0.0-couchbase_ep, 2.0.1-macosx_mc, v2.0.0_mc, v2.0.0-beta_mc, 1.8.1-MB-5845_ep, 2.0.0r_ep, 1.8.1_ep, v1.8.1_mc, 1.8-MB-4901_ep, v2.0.0-dp4_mc, 1.8-MB-4738_ep, 1.8.1r_ep, 1.8.0_ep, 1.8.0r_ep, 1.6.5.6_ep, 1.7.3r_ep, 1.7.2_ep, 1.7.1.1_ep, 1.6.5.5r_ep, 1.7.1_ep, 1.7.0_ep, 1.6.5.4_ep, v1.7.0_mc, 1.6.5.3.1_ep, 1.6.5.3_ep, v1.6.5.3_mc, 1.6.5.2.1_ep, 1.6.5.2_ep, v1.6.5.2_mc, 1.6.5.3r_ep, 1.6.5.2r_ep |
|
#
652b2716 |
| 09-Feb-2011 |
Trond Norbye <trond.norbye@gmail.com> |
Refactor: move memcached core to a separate directory
|