History log of /5.5.2/kv_engine/engines/ep/src/objectregistry.cc (Results 1 - 25 of 41)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
Revision tags: v6.0.3, v5.5.4, v5.5.5, v5.5.3, v6.0.0, v5.5.2, v5.5.1, v5.1.2
# 61b6f9a7 29-May-2018 Dave Rigby <daver@couchbase.com>

MB-29675: Move ObjectRegistry stats to CoreLocalStats

ObjectRegistry updates stats on the number and size of various object
classes whenever those classes are constructed/destructed. Cur

MB-29675: Move ObjectRegistry stats to CoreLocalStats

ObjectRegistry updates stats on the number and size of various object
classes whenever those classes are constructed/destructed. Currently
it updates a single set of stats per Bucket. However, these statistics
are highly contended by all the frontend worker threads; as such the
various functions to update the stats show high in profiling.

For example during 20/80 R/W pillowfight run, a representative worker
thread shows the following:

Samples: 205K of event 'cycles:ppp', Event count (approx.): 110332199760, Thread: mc:worker_16
Overhead Command Shared Object Symbol
1.52% mc:worker_16 ep.so [.] ObjectRegistry::onCreateBlob
1.43% mc:worker_16 ep.so [.] ObjectRegistry::onCreateItem
1.04% mc:worker_16 ep.so [.] ObjectRegistry::onDeleteItem
0.59% mc:worker_16 ep.so [.] ObjectRegistry::onDeleteBlob

Approx ~4.5% of the thread's runtime is spent in stats
updating. Examining the asm-level, a significant number of the cycles
is spent on the atomic updates to those counters; which appears to be
due to cacheline contention.

Given these stats are frequerntly updated but rarely read, we can
reduce this cost by moving these hotly-contended counters into the new
CoreLocalStats class, so each core has it's own instance to write to.

In microbenchmarks this reduces the cost to create/delete a
StoredValue by ~20%:

Before:

Run on (8 X 2300 MHz CPU s)
2018-05-29 17:00:45
---------------------------------------------------------------------------------------
Benchmark Time CPU Iterations
---------------------------------------------------------------------------------------
VBucketBench/CreateDeleteStoredValue/threads:16 229 ns 1954 ns 368128

After:

Run on (8 X 2300 MHz CPU s)
2018-05-29 17:02:54
---------------------------------------------------------------------------------------
Benchmark Time CPU Iterations
---------------------------------------------------------------------------------------
VBucketBench/CreateDeleteStoredValue/threads:16 209 ns 1559 ns 461152

Change-Id: I668b4fb54997e32e9cd9229fcfaf5d411b11305d
Reviewed-on: http://review.couchbase.org/94853
Reviewed-by: Paolo Cocchi <paolo.cocchi@couchbase.com>
Tested-by: Build Bot <build@couchbase.com>

show more ...


Revision tags: v5.1.1, v5.0.1, v5.1.0, v5.0.0
# 8eb8ddb5 01-Sep-2017 Dave Rigby <daver@couchbase.com>

MB-25897: ObjectRegistry: decrement numItem when Items are deleted

ObjectRegistry::onDeleteItem was incorrectly incrementing numItem
instead of decrementing.

This is a regressio

MB-25897: ObjectRegistry: decrement numItem when Items are deleted

ObjectRegistry::onDeleteItem was incorrectly incrementing numItem
instead of decrementing.

This is a regression since 8bf14273
(http://review.couchbase.org/#/c/69951/8), introduced in 4.6.0.

Change to decrement; and add regression test.

Change-Id: Id5af53c66c434848523dce0faded2890a408c571
Reviewed-on: http://review.couchbase.org/83016
Well-Formed: Build Bot <build@couchbase.com>
Reviewed-by: Trond Norbye <trond.norbye@gmail.com>
Tested-by: Build Bot <build@couchbase.com>

show more ...


# da4e3493 24-Aug-2017 Dave Rigby <daver@couchbase.com>

[2/2] Move VBucket::checkpointManager to pimpl

Remove the #include of checkpoint.h from vbucket.h - this removes the
coupling between the "frontend" of ep-engine (VBucket) and the
"b

[2/2] Move VBucket::checkpointManager to pimpl

Remove the #include of checkpoint.h from vbucket.h - this removes the
coupling between the "frontend" of ep-engine (VBucket) and the
"backend" Checkpoint implementation - a *lot* of source files now

The primary change here is simply:

--- a/engines/ep/src/vbucket.h
+++ b/engines/ep/src/vbucket.h
@@ -20,7 +20,6 @@
#include "config.h"

#include "bloomfilter.h"
-#include "checkpoint.h"

Everything else (!) is to fix compilation errors - now various files
no longer indirectly #include 'checkpoint.h' we need to add various
missing #includes - either for checkpoint.h itself, or for other
headers which were previously indirectly included via checkpoint.h

After this series of patches (comparing against 640d279) I see a ~8%
speedup in a complete build (reporting best of 3 runs in each case):

$ make clean && CCACHE_DISABLE=1 time make -j8

Before (640d279):
141.01 real 780.04 user 128.20 sys
After:
130.45 real 758.30 user 117.03 sys

An incremental build when only checkpoint.h has changed (admittedly
this is the best possible workload) results in a 40% speedup:

$ touch engines/ep/src/checkpoint.h && CCACHE_DISABLE=1 time make -j8

Before (640d279):
42.85 real 213.51 user 31.16 sys
After:
25.12 real 93.51 user 19.09 sys

Change-Id: I00daa7f5004951371f449f8fa3b123cc832bbe3f
Reviewed-on: http://review.couchbase.org/82725
Reviewed-by: Trond Norbye <trond.norbye@gmail.com>
Tested-by: Build Bot <build@couchbase.com>

show more ...


# ef22f9b0 25-May-2017 Dave Rigby <daver@couchbase.com>

Move ep-engine to engines/ep


# 0bfe5364 25-Apr-2017 Premkumar Thangamani <premkumar.thangamani@couchbase.com>

MB-23936: Use Threadlocal variables to accumulate stats

Currently when we allocate/deallocate memory, we update the per bucket
variable `totalMemory`. Mutiple threads contend on this var

MB-23936: Use Threadlocal variables to accumulate stats

Currently when we allocate/deallocate memory, we update the per bucket
variable `totalMemory`. Mutiple threads contend on this variable heavily
as mem allocation/deallocation happen often. The primary idea of
this commit is to maintain threadlocal mem counters for each bucket and
merge it to the `totalMemory` once the local counter reaches a threshold
either based on size or no.of times the local counter has been updated.

Performance Improvement (30%-35%):
--------------------------------
- Tests were run on a cluster of 2 nodes spec: 40 core/2.2 Ghz/64G memory
- On a high throughput read heavy test of 256B values we noticed a
[30%] increase in total ops (3.5M ops/s)
- On a similar write heavy test, we noticed a [35%] increase in ops (1.9M ops/s)

Limitations:
-----------
- We create one thread local variable per bucket. Different OS'es seem
to enforce different limits on the no.of tlv. Although we have a hard
limit of 10 buckets, I'm noting this here for future reference.
-> [NetBSD:256 Linux:1024 OSX:512 Windows:1088]

- Because we merge local mem stats after certain thresholds are reached, there
might be some small delays in reflecting the precise memory usage of a
bucket. On an active system, the delay should be minimal and not noticeable.

- Windows does not seem to provide an api for releasing the mem
allocated for a thread-local on thread exit in a way like pthreads do.
So there will be a small leak of about (3*long) on every bucket
unload on each thread.

- Valgrind might say that the unit tests have leaks on the
threadlocals. This is because, in the tests, bucket init happens on
the main thread & when main thread exits the program it does not
call pthread_exit, so the dtors are not called.

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

show more ...


Revision tags: v4.6.2_ep, v4.6.2_mc
# 5e513286 06-Mar-2017 Dave Rigby <daver@couchbase.com>

ObjectRegistry: reset to default upon destroying engine

Add an ObjectRegistry::reset() method which restores the state to that
before initialize() was called. This ensures unit tests whi

ObjectRegistry: reset to default upon destroying engine

Add an ObjectRegistry::reset() method which restores the state to that
before initialize() was called. This ensures unit tests which call
getAllocSize() will get consistent results irrespective of if previous
unit tests created any engine objects or not.

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

show more ...


Revision tags: v4.6.1_ep, v4.6.0_ep
# 8bf14273 16-Nov-2016 Dave Rigby <daver@couchbase.com>

MB-21650: Prevent false sharing of frequently modified memory stats

We record the memory usage, memory overhead and number of Items per
bucket, in the EPStats object. These stats are ver

MB-21650: Prevent false sharing of frequently modified memory stats

We record the memory usage, memory overhead and number of Items per
bucket, in the EPStats object. These stats are very frequenly updated
(on every memory allocation/deallocation, and every Item
creation/destruction), and they are updated from all threads. This can
cause false sharing between these values if they co-exist in the same
cache line.

A recent change (66882e8 - MB-20852 [17/N]: Serialize VB state
changes) added a new element to EPStats which resulted in the layout
of that class changing such that memory stat variables (memOverhead,
numItem, totalMemory) ended up on the same cache line. This resulted
in a signficant regression (1.9M op/s -> 1.4M ops) in the performance
of the 'kv_max_ops_reads_512_avg_ops_hera_kv' test, due to false
sharing between these variables.

To address this, ensure that each variable is placed on its own cache
line to prevent false sharing, by using the CachelinePadded template
class.

Change-Id: I8316637a7a0c6fd05fd6f6ba24a1df44c43390c5
Reviewed-on: http://review.couchbase.org/69951
Reviewed-by: Trond Norbye <trond.norbye@gmail.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, v4.1.1_mc
# 66bb41ad 04-Mar-2016 Dave Rigby <daver@couchbase.com>

Remove AtomicValue and Mutex defines

We already removed our own custom AtomicValue and Mutex classes when
we moved to C++11; replacing them with #defines to std::atomic and
std::mute

Remove AtomicValue and Mutex defines

We already removed our own custom AtomicValue and Mutex classes when
we moved to C++11; replacing them with #defines to std::atomic and
std::mutex respectively. This patch completes that changover, using
the underlying types directly so it's easier to see what is actually
being used.

Change-Id: If3f717f766727042cd81ae7b8c65f9a19934f2fa
Reviewed-on: http://review.couchbase.org/60925
Tested-by: buildbot <build@couchbase.com>
Reviewed-by: Trond Norbye <trond.norbye@gmail.com>
Reviewed-by: Will Gardner <will.gardner@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
# 5d9b91a7 20-Oct-2015 Dave Rigby <daver@couchbase.com>

MB-16601: Remove GIGANTOR checks in ObjectRegistry - 14% speedup

ep-engine's ObjectRegistry memory tracking reads the value of
stats.totalMemory after incrementing it to sanity check the

MB-16601: Remove GIGANTOR checks in ObjectRegistry - 14% speedup

ep-engine's ObjectRegistry memory tracking reads the value of
stats.totalMemory after incrementing it to sanity check the result,
checking it isn't a huge positive value or negative value.

This check is surprisingly costly - some benchmarks on a 24 core
Sandybridge Xeon show an increase in op/s of 14% when these checks are
removed! It appears checks were added to try to detect invalid values
for totalMemory; however at the current time I think their value is
questionable, particularly given the cost they impose:

1. If the check fails then we either cb_assert (terminating
memcached), or we disable memory tracking - which will ultimately
result in running OOM for DGM workloads as nothing will be ejected.

2. I suspect the root cause of the bogus values in the first place was
issues with our atomics (see MB-15292), which were resolved in 3.x in
3.1.0, and in 4.0 onwards.

Therefore get rid of these unnecessary checks from ObjectRegistry.

Benchmark results (3.0.x branch):

Measure op/s achieved while performing 75% write / 25% read of 250B
objects, 8 threads, 1 million items, looping 200,000 times. Takes ~1min
wallclock to execute:

cbc-pillowfight -U couchbase://localhost:12000/default -m 250 -M 250 -r 75 -t 8 -I 1000000 -c 20000

Baseline: 181,000 op/s
With Gigantor checks removed: 207,000 op/s

Change-Id: Icbfef451e3bdc8d7dbdb73e5722b8ef6afa5edc7
Reviewed-on: http://review.couchbase.org/56257
Tested-by: buildbot <build@couchbase.com>
Reviewed-by: abhinav dangeti <abhinav@couchbase.com>
Reviewed-by: Chiyoung Seo <chiyoung@couchbase.com>

show more ...


# 8b7221cb 25-Sep-2015 Dave Rigby <daver@couchbase.com>

MB-16056: Use exceptions instead of cb_assert() [7]

Seventh set of changes to migrate away from cb_assert() and use
exceptions where applicable for invalid input / logic errors.

MB-16056: Use exceptions instead of cb_assert() [7]

Seventh set of changes to migrate away from cb_assert() and use
exceptions where applicable for invalid input / logic errors.

Covers: mutex, objectregistry, stored-value (changes affected ep.cc)

Change-Id: I8f150271ffe9838045150aeef56c861d2009c64b
Reviewed-on: http://review.couchbase.org/55605
Tested-by: buildbot <build@couchbase.com>
Reviewed-by: abhinav dangeti <abhinav@couchbase.com>
Reviewed-by: Chiyoung Seo <chiyoung@couchbase.com>

show more ...


Revision tags: 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
# d50b3d45 24-Jun-2015 Dave Rigby <daver@couchbase.com>

Fix leaks in objectregistry

As reported by Valgrind:

==16458== 4 bytes in 1 blocks are still reachable in loss record 1 of 3
==16458== at 0x4C2B0E0: operator new(unsigned

Fix leaks in objectregistry

As reported by Valgrind:

==16458== 4 bytes in 1 blocks are still reachable in loss record 1 of 3
==16458== at 0x4C2B0E0: operator new(unsigned long) (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==16458== by 0x414E5F: installer::installer() (objectregistry.cc:46)
==16458== by 0x429C2C: __libc_csu_init (in /home/daver/repos/couchbase/server/build/ep-engine/ep-engine_hash_table_test)
==16458== by 0x5D1EE54: (below main) (libc-start.c:246)
==16458==
==16458== 4 bytes in 1 blocks are still reachable in loss record 2 of 3
==16458== at 0x4C2B0E0: operator new(unsigned long) (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==16458== by 0x414E81: installer::installer() (objectregistry.cc:47)
==16458== by 0x429C2C: __libc_csu_init (in /home/daver/repos/couchbase/server/build/ep-engine/ep-engine_hash_table_test)
==16458== by 0x5D1EE54: (below main) (libc-start.c:246)

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

show more ...


Revision tags: v3.0.2-MP2_mc, v3.0.2_ep, v3.0.2_mc, v3.0.1_mc, v3.0.0_ep, v3.0.0-beta3_mc, v3.0.0_mc, v3.0.0-beta2_mc, v3.0.0-beta1_mc
# a2b7e173 26-May-2014 Trond Norbye <trond.norbye@gmail.com>

Keep track of number of item objects

Change-Id: I7a8a5d037f3f3b5243d1257cb400a8030d125a9d
Reviewed-on: http://review.couchbase.org/37583
Reviewed-by: Chiyoung Seo <chiyoung@couchbase

Keep track of number of item objects

Change-Id: I7a8a5d037f3f3b5243d1257cb400a8030d125a9d
Reviewed-on: http://review.couchbase.org/37583
Reviewed-by: Chiyoung Seo <chiyoung@couchbase.com>
Tested-by: Chiyoung Seo <chiyoung@couchbase.com>

show more ...


# 1cb55ca0 22-May-2014 Trond Norbye <trond.norbye@gmail.com>

Add more statistics information for StoredValue objects

Track the number of them, their size and overhead

Change-Id: Ibafde84fd950c76ec9878fa903bf593836886b54
Reviewed-on: http:

Add more statistics information for StoredValue objects

Track the number of them, their size and overhead

Change-Id: Ibafde84fd950c76ec9878fa903bf593836886b54
Reviewed-on: http://review.couchbase.org/37433
Reviewed-by: Chiyoung Seo <chiyoung@couchbase.com>
Tested-by: Chiyoung Seo <chiyoung@couchbase.com>

show more ...


# 8a277c1f 22-May-2014 Trond Norbye <trond.norbye@gmail.com>

Add const for objectregistry

Change-Id: I686b1f4241d92b05b059a329f3c80241551610a1
Reviewed-on: http://review.couchbase.org/37434
Reviewed-by: Chiyoung Seo <chiyoung@couchbase.com>

Add const for objectregistry

Change-Id: I686b1f4241d92b05b059a329f3c80241551610a1
Reviewed-on: http://review.couchbase.org/37434
Reviewed-by: Chiyoung Seo <chiyoung@couchbase.com>
Tested-by: Trond Norbye <trond.norbye@gmail.com>

show more ...


# 71ff82fb 22-May-2014 Trond Norbye <trond.norbye@gmail.com>

Use the actual allocated size for the blobs

Change-Id: Icdbb5267d831482a985ed628c1b2d97d29c45131
Reviewed-on: http://review.couchbase.org/37430
Reviewed-by: Chiyoung Seo <chiyoung@co

Use the actual allocated size for the blobs

Change-Id: Icdbb5267d831482a985ed628c1b2d97d29c45131
Reviewed-on: http://review.couchbase.org/37430
Reviewed-by: Chiyoung Seo <chiyoung@couchbase.com>
Tested-by: Trond Norbye <trond.norbye@gmail.com>

show more ...


# 392ba27e 22-May-2014 Sundar Sridharan <sundar.sridharan@gmail.com>

MB-8721 reduce log level on underflow error to INFO

reduce the underflow log level to INFO level if this happens only
during soft shutdown and bucket deletion

Change-Id: If5006f

MB-8721 reduce log level on underflow error to INFO

reduce the underflow log level to INFO level if this happens only
during soft shutdown and bucket deletion

Change-Id: If5006f5da0952851e3a14f1a504019bf5ca7a5eb
Reviewed-on: http://review.couchbase.org/37462
Reviewed-by: Chiyoung Seo <chiyoung@couchbase.com>
Tested-by: Chiyoung Seo <chiyoung@couchbase.com>

show more ...


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

MB-10476: Use cb_assert instead of assert

If compiled with -DNDEBUG assert is an empty macro

Change-Id: I266ddf8a8fe3f1a388a9d8ce3d21f28614c35315
Reviewed-on: http://review.couc

MB-10476: Use cb_assert instead of assert

If compiled with -DNDEBUG assert is an empty macro

Change-Id: I266ddf8a8fe3f1a388a9d8ce3d21f28614c35315
Reviewed-on: http://review.couchbase.org/34579
Reviewed-by: Chiyoung Seo <chiyoung@couchbase.com>
Tested-by: Chiyoung Seo <chiyoung@couchbase.com>

show more ...


Revision tags: v2.5.1_ep, v2.5.1-MP1-A_mc, v2.5.0_mc
# 18770839 07-Jan-2014 Sundar Sridharan <sundar.sridharan@gmail.com>

coding style fixes for gerrit compatibility

gerrit does not handle lines more than 80 characters well
Also coding style dictates fixed line sizes which are
mostly followed but left o

coding style fixes for gerrit compatibility

gerrit does not handle lines more than 80 characters well
Also coding style dictates fixed line sizes which are
mostly followed but left out in a few places..
- remove trailing whitespaces from all files
- limit lines to 80 chars
- try to ensure comments fit into one line so that they can
be traced back from an error log
Change-Id: Id8f1c34c3c7cb698a1b50f5f225b4516667f5e42
Reviewed-on: http://review.couchbase.org/31639
Tested-by: Sundararaman Sridharan <sundar.sridharan@gmail.com>
Reviewed-by: Chiyoung Seo <chiyoung@couchbase.com>

show more ...


# ac923d00 01-Jan-2014 Trond Norbye <trond.norbye@gmail.com>

Refactor: Split atomic.h into multiple files

The AtomicQueue is only used in one place, and the ThreadLocal
is also just two places. This is the first step trying to
minimize their s

Refactor: Split atomic.h into multiple files

The AtomicQueue is only used in one place, and the ThreadLocal
is also just two places. This is the first step trying to
minimize their scope.

Change-Id: I390ad00685b2d4b789790eca1e4d29617c573e03
Reviewed-on: http://review.couchbase.org/31416
Reviewed-by: Chiyoung Seo <chiyoung@couchbase.com>
Tested-by: Chiyoung Seo <chiyoung@couchbase.com>

show more ...


# 9d8a9725 23-Dec-2013 Trond Norbye <trond.norbye@gmail.com>

Move towards using C++11 atomics

Start by renamimg all use of Atomics that doesn't "break" by
switching to std::atomic to AtomicValue (when the transition
is done we'll rename everyt

Move towards using C++11 atomics

Start by renamimg all use of Atomics that doesn't "break" by
switching to std::atomic to AtomicValue (when the transition
is done we'll rename everything back).

Change-Id: I3f694856dab498c565806c9ac1ee5baf3bc07b17
Reviewed-on: http://review.couchbase.org/31333
Reviewed-by: Chiyoung Seo <chiyoung@couchbase.com>
Tested-by: Chiyoung Seo <chiyoung@couchbase.com>

show more ...


# a00c1a75 23-Dec-2013 David Liao <liaodw@gmail.com>

MB-9741 Replace usage of QueuedItem with Item class.

This is the first phase of reducing memory used by keys/metadata of items.
This checkin now replace QueuedItem with Item used by Chec

MB-9741 Replace usage of QueuedItem with Item class.

This is the first phase of reducing memory used by keys/metadata of items.
This checkin now replace QueuedItem with Item used by Checkpoing Manager
and prepares for using Item class in StoredValue. QueuedItem is removed
from the code base.

Change-Id: I6afecac51410f209155cf357f6a276c20670b026
Reviewed-on: http://review.couchbase.org/31050
Reviewed-by: Michael Wiederhold <mike@couchbase.com>
Tested-by: Michael Wiederhold <mike@couchbase.com>

show more ...


Revision tags: v2.5.0-dp1_mc
# 7c6809d2 07-Nov-2013 Trond Norbye <trond.norbye@gmail.com>

Start migrate the API for our Atomics to look like std::atomic

This patch change the Atomic class CouchbaseAtomic, and change
the API so that:
get() => load()
set() => store(

Start migrate the API for our Atomics to look like std::atomic

This patch change the Atomic class CouchbaseAtomic, and change
the API so that:
get() => load()
set() => store()
cas() => compare_exchange_strong()

and move some of methods that used to be members as
template functions.

Change-Id: I48d873fbf04f40d446444232db44f565ee4fed54
Reviewed-on: http://review.couchbase.org/30135
Reviewed-by: Chiyoung Seo <chiyoung@couchbase.com>
Tested-by: Chiyoung Seo <chiyoung@couchbase.com>

show more ...


Revision tags: v2.2.0_mc, 2.1.1r_ep, 2.1.0r_ep, 2.0.2r_ep, 2.0.2r_mc, 2.0.1-macosx_ep, 2.0.1-linux_ep
# 66eb94d0 17-Jan-2013 Mike Wiederhold <mike@couchbase.com>

MB-7728: Add copyright headers to all files

This is something that our cpplint tool turns on and it makes
our product look a little bit more profesional. I have also
enabled the tool

MB-7728: Add copyright headers to all files

This is something that our cpplint tool turns on and it makes
our product look a little bit more profesional. I have also
enabled the tool to begin checking for these headers so it will
start complaining if we add a new file without a copyright header.

Change-Id: Ie956fdf7027bf56d9665ee455acd3c109fcacc76
Reviewed-on: http://review.couchbase.org/24560
Reviewed-by: Chiyoung Seo <chiyoung.seo@gmail.com>
Reviewed-by: Jin Lim <jin@couchbase.com>
Tested-by: Michael Wiederhold <mike@couchbase.com>

show more ...


# a1213f50 29-Jan-2013 Mike Wiederhold <mike@couchbase.com>

MB-7476: Prepend bucket name to all log messages

Change-Id: I1053494b5359c702c25e4bffa7e88959cb87be53
Reviewed-on: http://review.couchbase.org/24249
Reviewed-by: Chiyoung Seo <chiyou

MB-7476: Prepend bucket name to all log messages

Change-Id: I1053494b5359c702c25e4bffa7e88959cb87be53
Reviewed-on: http://review.couchbase.org/24249
Reviewed-by: Chiyoung Seo <chiyoung.seo@gmail.com>
Tested-by: Chiyoung Seo <chiyoung.seo@gmail.com>

show more ...


Revision tags: 2.0.1-linux_mc, 2.0.0-couchbase_ep
# 244c0146 26-Nov-2012 Mike Wiederhold <mike@couchbase.com>

MB-7461: Alphabetize includes to conform with c++ standards

Change-Id: I71333dedada6530713b90184857bab9ac49d13df
Reviewed-on: http://review.couchbase.org/23515
Reviewed-by: Jin Lim <

MB-7461: Alphabetize includes to conform with c++ standards

Change-Id: I71333dedada6530713b90184857bab9ac49d13df
Reviewed-on: http://review.couchbase.org/23515
Reviewed-by: Jin Lim <jin@couchbase.com>
Tested-by: Michael Wiederhold <mike@couchbase.com>

show more ...


12