History log of /6.0.3/kv_engine/engines/default_engine/assoc.cc (Results 1 - 25 of 74)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
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
# 4dd9b0f4 07-Feb-2018 Trond Norbye <trond.norbye@gmail.com>

Use logger directly in the core

Changed the LOG_ macros used in the core and call
them directly instead of going through the old
logger interface using the printf-style of formatting

Use logger directly in the core

Changed the LOG_ macros used in the core and call
them directly instead of going through the old
logger interface using the printf-style of formatting

Change-Id: I7927bfdd98a843a605fd418ab343f166c25c7b74
Reviewed-on: http://review.couchbase.org/88814
Tested-by: Build Bot <build@couchbase.com>
Reviewed-by: Dave Rigby <daver@couchbase.com>

show more ...


# 7d79b83c 02-Feb-2018 Trond Norbye <trond.norbye@gmail.com>

Use spdlogger for everything

Remove the old stderr and stdout loggers and use the spdlogger
everywhere (and remove the ability to install custom loggers).

Change-Id: Ibd5a5d6775

Use spdlogger for everything

Remove the old stderr and stdout loggers and use the spdlogger
everywhere (and remove the ability to install custom loggers).

Change-Id: Ibd5a5d6775970e33664341f2476dd2dee709abff
Reviewed-on: http://review.couchbase.org/88781
Reviewed-by: Dave Rigby <daver@couchbase.com>
Tested-by: Build Bot <build@couchbase.com>

show more ...


Revision tags: v5.0.1, v5.1.0, v5.0.0
# 9b6e9829 12-Jul-2017 Trond Norbye <trond.norbye@gmail.com>

Refactor: use std::vector instead of manual memory allocation

Run on (8 X 2500 MHz CPU s)
2017-07-12 09:40:21
--------------------------------------------------------------------

Refactor: use std::vector instead of manual memory allocation

Run on (8 X 2500 MHz CPU s)
2017-07-12 09:40:21
--------------------------------------------------------------------
Benchmark Time CPU Iterations
--------------------------------------------------------------------
AccessSingleItem/threads:1 34 ns 34 ns 22025323
AccessSingleItem/threads:2 2914 ns 3216 ns 248240
AccessSingleItem/threads:4 3329 ns 3455 ns 200800
AccessSingleItem/threads:8 3303 ns 3436 ns 205200
AccessSingleItem/threads:16 3313 ns 3449 ns 198000
AccessRandomItems/threads:1 238 ns 238 ns 2934851
AccessRandomItems/threads:2 3013 ns 3614 ns 188576
AccessRandomItems/threads:4 3266 ns 3641 ns 187188
AccessRandomItems/threads:8 3299 ns 3661 ns 188080
AccessRandomItems/threads:16 3405 ns 3793 ns 181440

Change-Id: Ica9677f7bb06e0ba8557bafae47a7eef2f9fd8bc
Reviewed-on: http://review.couchbase.org/80567
Tested-by: Build Bot <build@couchbase.com>
Reviewed-by: Daniel Owen <owend@couchbase.com>

show more ...


# 477d2e1a 12-Jul-2017 Trond Norbye <trond.norbye@gmail.com>

Refactor: Replace cb_mutex with std::mutex

Run on (8 X 2500 MHz CPU s)
2017-07-12 09:30:09
--------------------------------------------------------------------
Benchmark

Refactor: Replace cb_mutex with std::mutex

Run on (8 X 2500 MHz CPU s)
2017-07-12 09:30:09
--------------------------------------------------------------------
Benchmark Time CPU Iterations
--------------------------------------------------------------------
AccessSingleItem/threads:1 33 ns 33 ns 21213407
AccessSingleItem/threads:2 2824 ns 3094 ns 217648
AccessSingleItem/threads:4 3236 ns 3362 ns 203792
AccessSingleItem/threads:8 3306 ns 3438 ns 201024
AccessSingleItem/threads:16 3255 ns 3391 ns 194976
AccessRandomItems/threads:1 228 ns 228 ns 3008514
AccessRandomItems/threads:2 2965 ns 3532 ns 186218
AccessRandomItems/threads:4 3274 ns 3643 ns 182928
AccessRandomItems/threads:8 3312 ns 3710 ns 189704
AccessRandomItems/threads:16 3337 ns 3755 ns 172416

Change-Id: I25e5bd9e45cda2ed3772ad677ed99bc67d6a6b64
Reviewed-on: http://review.couchbase.org/80566
Reviewed-by: Daniel Owen <owend@couchbase.com>
Tested-by: Build Bot <build@couchbase.com>

show more ...


# 8f1d4733 12-Jul-2017 Trond Norbye <trond.norbye@gmail.com>

Refactor: Rename assoc to Assoc and use constructor

By using a constructor we may use the new operator which allows
us to replace cb_mutex with std::mutex

Change-Id: Ie982c1e0b8

Refactor: Rename assoc to Assoc and use constructor

By using a constructor we may use the new operator which allows
us to replace cb_mutex with std::mutex

Change-Id: Ie982c1e0b8ff5df76148420427c17adcf9817a38
Reviewed-on: http://review.couchbase.org/80565
Tested-by: Build Bot <build@couchbase.com>
Reviewed-by: Jim Walker <jim@couchbase.com>

show more ...


# 0e1f4bfe 10-Jul-2017 Trond Norbye <trond.norbye@gmail.com>

CBPS-381: Create benchmark for assoc table

Create a small benchmark program for thte assoc table too see
the impact on changes. When running on a macbook pro (on battery
with variabl

CBPS-381: Create benchmark for assoc table

Create a small benchmark program for thte assoc table too see
the impact on changes. When running on a macbook pro (on battery
with variable CPU speed as I'm currently on vacation) results in:

Run on (8 X 2500 MHz CPU s)
2017-07-11 17:51:47
--------------------------------------------------------------------
Benchmark Time CPU Iterations
--------------------------------------------------------------------
AccessSingleItem/threads:1 33 ns 33 ns 21611475
AccessSingleItem/threads:2 2847 ns 3154 ns 237868
AccessSingleItem/threads:4 3462 ns 3586 ns 192988
AccessSingleItem/threads:8 3307 ns 3428 ns 204616
AccessSingleItem/threads:16 3308 ns 3439 ns 198176
AccessRandomItems/threads:1 220 ns 220 ns 2881465
AccessRandomItems/threads:2 3060 ns 3674 ns 185884
AccessRandomItems/threads:4 3304 ns 3663 ns 184284
AccessRandomItems/threads:8 3306 ns 3693 ns 183904
AccessRandomItems/threads:16 3366 ns 3772 ns 176688

Change-Id: I75fd7073577d2b3152210afcac5e70b847da7dca
Reviewed-on: http://review.couchbase.org/80498
Tested-by: Build Bot <build@couchbase.com>
Reviewed-by: Jim Walker <jim@couchbase.com>

show more ...


# 0834b20f 11-Jul-2017 Trond Norbye <trond.norbye@gmail.com>

Refactor: We don't need the engine handle in the assoc

Drop the member to ease the implementation of unit tests

Change-Id: I578bac03d0b6e79717e681a600754e099c3fbb3d
Reviewed-on:

Refactor: We don't need the engine handle in the assoc

Drop the member to ease the implementation of unit tests

Change-Id: I578bac03d0b6e79717e681a600754e099c3fbb3d
Reviewed-on: http://review.couchbase.org/80564
Tested-by: Build Bot <build@couchbase.com>
Reviewed-by: Jim Walker <jim@couchbase.com>

show more ...


# ea3713b4 11-Jul-2017 Trond Norbye <trond.norbye@gmail.com>

Refactor: Keep the logger as a static variable

The logger is only used for reporting errors and when the
hashtable is expanded. To ease the implementation of unit
tests the logger ca

Refactor: Keep the logger as a static variable

The logger is only used for reporting errors and when the
hashtable is expanded. To ease the implementation of unit
tests the logger can be optional.

Change-Id: I511e3e2d280118667c07c2c88050c73090e2628a
Reviewed-on: http://review.couchbase.org/80563
Tested-by: Build Bot <build@couchbase.com>
Reviewed-by: Jim Walker <jim@couchbase.com>

show more ...


# da2d43a6 11-Jul-2017 Trond Norbye <trond.norbye@gmail.com>

Refactor: Make the internal layout of the assoc table private

It is only used inside assoc.cc and shouldn't be available to
anyone else.

Change-Id: Id38ecdb41c684e280460c9d231e8

Refactor: Make the internal layout of the assoc table private

It is only used inside assoc.cc and shouldn't be available to
anyone else.

Change-Id: Id38ecdb41c684e280460c9d231e8eaba993b3bd3
Reviewed-on: http://review.couchbase.org/80562
Tested-by: Build Bot <build@couchbase.com>
Reviewed-by: Jim Walker <jim@couchbase.com>

show more ...


# 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 ...


Revision tags: v4.6.2_ep, v4.6.2_mc, v4.6.1_ep, v4.6.0_ep
# 42031746 28-Nov-2016 Trond Norbye <trond.norbye@gmail.com>

Fix warnings reported by Coverty

Change-Id: I20fd35bc6d2376aea5000df40524935dd9721d37
Reviewed-on: http://review.couchbase.org/70379
Tested-by: buildbot <build@couchbase.com>
Rev

Fix warnings reported by Coverty

Change-Id: I20fd35bc6d2376aea5000df40524935dd9721d37
Reviewed-on: http://review.couchbase.org/70379
Tested-by: buildbot <build@couchbase.com>
Reviewed-by: Dave Rigby <daver@couchbase.com>

show more ...


# 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
# aa327187 18-Aug-2016 Dave Rigby <daver@couchbase.com>

MB-20586: Update memcached to use cb_malloc memory API

For all instances where we control C-style memory allocation, replace
with calls to cb_malloc/cb_realloc etc.

There are a

MB-20586: Update memcached to use cb_malloc memory API

For all instances where we control C-style memory allocation, replace
with calls to cb_malloc/cb_realloc etc.

There are a small number of instances where memory is allocated on our
behalf inside a library function, for example asprintf(). In such
cases we must still use free() to match the (internal) malloc().

Change-Id: I3e93d3a4bc2c8103e7da96ef448df1c226564528
Reviewed-on: http://review.couchbase.org/67087
Well-Formed: buildbot <build@couchbase.com>
Reviewed-by: Daniel Owen <owend@couchbase.com>
Tested-by: buildbot <build@couchbase.com>

show more ...


Revision tags: 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, v4.1.1_mc
# 312aab5f 07-Mar-2016 mattcarabine <matt.carabine@couchbase.com>

MB-17189: Ensure that thread names are consistent

- Currently memcached has a mixture of thread names separated by
underscores and white space, this inconsistent behaviour is
und

MB-17189: Ensure that thread names are consistent

- Currently memcached has a mixture of thread names separated by
underscores and white space, this inconsistent behaviour is
undesirable
- Instead this commit ensures that all threads are separated by
underscores exclusively

Change-Id: I1003e6b02f15bd74e77bb03a31a8b75e152bb11a
Reviewed-on: http://review.couchbase.org/61007
Reviewed-by: Trond Norbye <trond.norbye@gmail.com>
Tested-by: buildbot <build@couchbase.com>

show more ...


Revision tags: 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
# 511b68c6 05-Aug-2015 Trond Norbye <trond.norbye@gmail.com>

Don't dereference global_assoc if null

If memcached is started, but no memcached buckets is defined
we're trying to shut down the assoc table, but it hasn't been
initialized yet.

Don't dereference global_assoc if null

If memcached is started, but no memcached buckets is defined
we're trying to shut down the assoc table, but it hasn't been
initialized yet.

Change-Id: Ic01311d165a03615e01e01318183f9a21c3dee4c
Reviewed-on: http://review.couchbase.org/54128
Reviewed-by: Jim Walker <jim@couchbase.com>
Reviewed-by: Dave Rigby <daver@couchbase.com>
Tested-by: buildbot <build@couchbase.com>

show more ...


# 047748fc 27-Jul-2015 Trond Norbye <trond.norbye@gmail.com>

Use the crc32 function from platform

Change-Id: I12bf65defbd6ee889a2aa344397faa5faab6cf45
Reviewed-on: http://review.couchbase.org/53741
Tested-by: buildbot <build@couchbase.com>

Use the crc32 function from platform

Change-Id: I12bf65defbd6ee889a2aa344397faa5faab6cf45
Reviewed-on: http://review.couchbase.org/53741
Tested-by: buildbot <build@couchbase.com>
Reviewed-by: Jim Walker <jim@couchbase.com>

show more ...


Revision tags: v4.0.0_mc, v3.1.0_ep, v3.1.0_mc, v3.1.6_mc
# 3ba5dd49 25-Jun-2015 jim <jim@couchbase.com>

Valgrind of default_engine:

Problems identified running basic testsuite.

1) Fix some leaks in the test harness code.
2) Fix a leak in default_engine to ensure global_assoc is fr

Valgrind of default_engine:

Problems identified running basic testsuite.

1) Fix some leaks in the test harness code.
2) Fix a leak in default_engine to ensure global_assoc is free
3) Add a warning so that we know if we are deleting buckets when someone
still has an item reference.

Change-Id: If953a254e6f7f99a970b700f8082162ddf4f7f37
Reviewed-on: http://review.couchbase.org/52545
Reviewed-by: Dave Rigby <daver@couchbase.com>
Tested-by: Dave Rigby <daver@couchbase.com>

show more ...


# 70599dd8 01-Jun-2015 Dave Rigby <daver@couchbase.com>

Set thread names for memcached threads

Change-Id: I3470b4c008490643867f16fd5c88f81e2f21e1a2
Reviewed-on: http://review.couchbase.org/51692
Reviewed-by: Trond Norbye <trond.norbye@gma

Set thread names for memcached threads

Change-Id: I3470b4c008490643867f16fd5c88f81e2f21e1a2
Reviewed-on: http://review.couchbase.org/51692
Reviewed-by: Trond Norbye <trond.norbye@gmail.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 ...


# a37b9dc5 19-Jan-2015 Dave Rigby <daver@couchbase.com>

MB-13420: Fix Visual Studio 2013 warnings

Fix the warnings in memcached project, as reported by
Visual Studio 2013.

Change-Id: Ia6f139f19141e19b6f67b78b89625a78acb9793f
Revi

MB-13420: Fix Visual Studio 2013 warnings

Fix the warnings in memcached project, as reported by
Visual Studio 2013.

Change-Id: Ia6f139f19141e19b6f67b78b89625a78acb9793f
Reviewed-on: http://review.couchbase.org/46631
Reviewed-by: Trond Norbye <trond.norbye@gmail.com>
Tested-by: buildbot <build@couchbase.com>

show more ...


# 69cdcff9 19-Jan-2015 Dave Rigby <daver@couchbase.com>

Fix Visual Studio 2013 warnings

Fix the warnings in memcached project, as reported by
Visual Studio 2013.

Change-Id: I7b3f4b4b96be50f410f21fb73d3b5d2bbbd24428
Reviewed-on: h

Fix Visual Studio 2013 warnings

Fix the warnings in memcached project, as reported by
Visual Studio 2013.

Change-Id: I7b3f4b4b96be50f410f21fb73d3b5d2bbbd24428
Reviewed-on: http://review.couchbase.org/45570
Reviewed-by: Trond Norbye <trond.norbye@gmail.com>
Tested-by: buildbot <build@couchbase.com>

show more ...


Revision tags: v3.0.2_ep, v3.0.2_mc, 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
# bc329cc0 04-Jun-2014 Dave Rigby <daver@couchbase.com>

MB-11305 Use correct type for sizeof() when allocating hashtable.

Change-Id: I3cf0a46699bd30241bd9708b1e9bc82084e6a7cb
Reviewed-on: http://review.couchbase.org/37836
Reviewed-by: Tro

MB-11305 Use correct type for sizeof() when allocating hashtable.

Change-Id: I3cf0a46699bd30241bd9708b1e9bc82084e6a7cb
Reviewed-on: http://review.couchbase.org/37836
Reviewed-by: Trond Norbye <trond.norbye@gmail.com>
Tested-by: Trond Norbye <trond.norbye@gmail.com>

show more ...


# 464d6f0b 17-Mar-2014 Trond Norbye <trond.norbye@gmail.com>

MB-10476: Use cb_assert which is never a noop

Change-Id: Ibf478e0dc55697ea7b9fe1aff1ac18a4ec1ea0c7
Reviewed-on: http://review.couchbase.org/34580
Reviewed-by: Michael Wiederhold <mik

MB-10476: Use cb_assert which is never a noop

Change-Id: Ibf478e0dc55697ea7b9fe1aff1ac18a4ec1ea0c7
Reviewed-on: http://review.couchbase.org/34580
Reviewed-by: Michael Wiederhold <mike@couchbase.com>
Tested-by: buildbot <build@couchbase.com>

show more ...


Revision tags: v2.5.1_ep, v2.5.1-MP1-A_mc, v2.5.0_mc, v2.5.0-dp1_mc, 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 ...


123