History log of /6.6.0/platform/tests/ (Results 1 - 25 of 182)
Revision (<<< Hide revision tags) (Show revision tags >>>)Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
Revision tags: v6.5.1
03c5623424-Feb-2020 Dave Rigby <daver@couchbase.com>

MB-38034: Correctly detect '0e5' as a valid JSON number

Numbers in scientific notation with a single zero before the 'e' are
incorrectly considered to be not JSON - e.g. '0e5'.

MB-38034: Correctly detect '0e5' as a valid JSON number

Numbers in scientific notation with a single zero before the 'e' are
incorrectly considered to be not JSON - e.g. '0e5'.

Update to decode table from the latest version of upstream
JSON_checker.c
(https://github.com/douglascrockford/JSON-c/commit/bb3e8d18a33e8335619519e62462c666370e232d)
which fixes this.

Change-Id: I31512375aae5ca13c555b717697319b42d420439
Reviewed-on: http://review.couchbase.org/122783
Well-Formed: Wayne Siu <wayne@couchbase.com>
Well-Formed: Build Bot <build@couchbase.com>
Tested-by: Build Bot <build@couchbase.com>
Reviewed-by: Jim Walker <jim@couchbase.com>

show more ...

bec44f9606-Dec-2019 Trond Norbye <trond.norbye@gmail.com>

MB-35195: Merge remote-tracking branch 'couchbase/alice'

* couchbase/alice:
MB-35195: cb::io::mkdirp must terminate for non-existent drive

Change-Id: Iab1c23794efe052d67d9d630

MB-35195: Merge remote-tracking branch 'couchbase/alice'

* couchbase/alice:
MB-35195: cb::io::mkdirp must terminate for non-existent drive

Change-Id: Iab1c23794efe052d67d9d630545520563a412532

show more ...


04c0bc3f21-Oct-2019 Trond Norbye <trond.norbye@gmail.com>

Remove warning: warning: extra ‘;’ [-Wpedantic]

Change-Id: I0144570ea53004e0b89298f2f31412ddfe5b2f6a
Reviewed-on: http://review.couchbase.org/116712
Reviewed-by: Dave Rigby <daver@co

Remove warning: warning: extra ‘;’ [-Wpedantic]

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

show more ...

f42ec1e926-Sep-2019 Dave Rigby <daver@couchbase.com>

Allow memory order of AtomicDuration to be specified

Change AtomicDuration to a templated class, templated on the memory
order to use. Defaults to the same memory order it previously use

Allow memory order of AtomicDuration to be specified

Change AtomicDuration to a templated class, templated on the memory
order to use. Defaults to the same memory order it previously used
(relaxed).

Change-Id: I00221d1acbea73f12a00d679e595f91739d998c0
Reviewed-on: http://review.couchbase.org/115575
Tested-by: Build Bot <build@couchbase.com>
Reviewed-by: Ben Huddleston <ben.huddleston@couchbase.com>
Reviewed-by: Trond Norbye <trond.norbye@couchbase.com>

show more ...

91143b0928-Aug-2019 Dave Rigby <daver@couchbase.com>

NonNegativeCounter: Enforce invariant on construction

Change NonNegativeCounter to check that the argument passed to the
ctor is also not negative, so we catch attempts to construct an

NonNegativeCounter: Enforce invariant on construction

Change NonNegativeCounter to check that the argument passed to the
ctor is also not negative, so we catch attempts to construct an
invalid NonNegativeCounter.

(This change was motivated by a bug where we constructed a
NonNegativeCounter with a negative value, but didn't identify the
'underflow' until the /next/ time the counter was modified, which made
the bug hard to track down.)

Change-Id: Ib7d4079e977817aa17ea650b74de64e5b2cde868
Reviewed-on: http://review.couchbase.org/113966
Tested-by: Build Bot <build@couchbase.com>
Reviewed-by: James Harrison <james.harrison@couchbase.com>

show more ...

1d6d6c0308-Aug-2019 Ben Huddleston <ben.huddleston@couchbase.com>

MB-35630: Use Folly's AccessSpreader to determine cpu in CoreStore

Perf stats from Triton 2 node 80/20 R/W throughput test:
Before: ~3,435,129 ops/s (last 22 runs)
After: ~3,542,453

MB-35630: Use Folly's AccessSpreader to determine cpu in CoreStore

Perf stats from Triton 2 node 80/20 R/W throughput test:
Before: ~3,435,129 ops/s (last 22 runs)
After: ~3,542,453 ops/s (5 runs)

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

show more ...

4ef4977902-Aug-2019 Dave Rigby <daver@couchbase.com>

rwlock_test: Check all mutex combinations

Expand the rwlock TSan tests to check for all combinations of the used
mutexes -

std::mutex
std::shared_timed_mutex

rwlock_test: Check all mutex combinations

Expand the rwlock TSan tests to check for all combinations of the used
mutexes -

std::mutex
std::shared_timed_mutex
folly::SharedMute
cb::RWLock

This includes checking both orders of each pair, given that TSan on
macOS can detect locks in one order but not the other...

Change-Id: I063aaaa73590fdb8213bc2a921f3b3610a34e291
Reviewed-on: http://review.couchbase.org/112843
Tested-by: Build Bot <build@couchbase.com>
Reviewed-by: James Harrison <james.harrison@couchbase.com>

show more ...

Revision tags: v6.0.3
de77d52719-Jul-2019 Trond Norbye <trond.norbye@gmail.com>

MB-35195: cb::io::mkdirp must terminate for non-existent drive

cb::io::mkdirp use recursion and tries to create the parent
directory, but if the directory is a drive mapping for windows

MB-35195: cb::io::mkdirp must terminate for non-existent drive

cb::io::mkdirp use recursion and tries to create the parent
directory, but if the directory is a drive mapping for windows
we'll return '.' (which means the current directory) and
returns true. Then we're back up in the recursion and try
to create the directory, which would fail again and try
the parent directory (.) and we enter an endless loop.

Solution:
Use SHCreateDirectoryEx instead.

Change-Id: I8356f26248ff20bb890ad4d78824f052438cb702
Reviewed-on: http://review.couchbase.org/112261
Well-Formed: Build Bot <build@couchbase.com>
Tested-by: Build Bot <build@couchbase.com>
Reviewed-by: Richard de Mellow <richard.demellow@couchbase.com>
Reviewed-by: Dave Rigby <daver@couchbase.com>

show more ...

17b14c9221-Jun-2019 Ben Huddleston <ben.huddleston@couchbase.com>

MB-34676: Add byte swap functions to UnsignedNByteInteger

We need to be able to write cb::uint48_t always in big endian order
to CouchStore. Add generic functions to swap the byte order

MB-34676: Add byte swap functions to UnsignedNByteInteger

We need to be able to write cb::uint48_t always in big endian order
to CouchStore. Add generic functions to swap the byte order to
UnsignedNByteInteger as they may be useful elsewhere.

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

show more ...

fd7818a524-Apr-2019 Ben Huddleston <ben.huddleston@couchbase.com>

MB-33846: Make NonNegativeCounter deal with negatives

In the hash table in kv_engine we often add negative values.
This causes the stats to underflow. Correct this by doing similar
l

MB-33846: Make NonNegativeCounter deal with negatives

In the hash table in kv_engine we often add negative values.
This causes the stats to underflow. Correct this by doing similar
logic done in fetch_sub in fetch_add, and allowing fetch_add to
take a signed type. Also, allow fetch_sub to take a negative value
for consistency.

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

show more ...

5441ba9405-Apr-2019 Dave Rigby <daver@couchbase.com>

Add rwlock / ThreadSanitzer interoperability tests

Add tests which check that, for each of the different mutex types we
use, ThreadSanizier can correctly detect locking issues.

Add rwlock / ThreadSanitzer interoperability tests

Add tests which check that, for each of the different mutex types we
use, ThreadSanizier can correctly detect locking issues.

Note this test suite relies on:

a) ThreadSanitizer being enabled, and
b) ThreadSanitizer specifically configured to immediately halt on any
errors.

Moreover, it turns out that macOS (Mojave, XCode 10.1) _doesn't_ have
the necessary mutex annotations for std::mutex, std::shared_mutex or
pthread_rwlock, which means those test combinations fail on macOS and
need to be skipped.

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

show more ...

994b855029-Mar-2019 Dave Rigby <daver@couchbase.com>

Merge remote-tracking branch 'couchbase/alice'

* couchbase/alice:
MB-33351: Don't throw in CoreStore.get()

Change-Id: I826c928bee1635f785dcbd95d8bdbd81ac03dc28


079961ee27-Mar-2019 Trond Norbye <trond.norbye@gmail.com>

MB-33327: Add support for software-only CRC32

If the target CPU isn't X86 don't try to use HW assisted functions

Change-Id: If1c021e97fde5842b158aca7ed886de7d0434b89
Reviewed-on

MB-33327: Add support for software-only CRC32

If the target CPU isn't X86 don't try to use HW assisted functions

Change-Id: If1c021e97fde5842b158aca7ed886de7d0434b89
Reviewed-on: http://review.couchbase.org/106855
Tested-by: Trond Norbye <trond.norbye@couchbase.com>
Reviewed-by: Dave Rigby <daver@couchbase.com>
Reviewed-by: Jim Walker <jim@couchbase.com>

show more ...

87c134a827-Mar-2019 Trond Norbye <trond.norbye@gmail.com>

Cleanup: Don't build crc files multiple times

As a preparation for MB-33327 don't build the CRC32 related
source files more than once. Link and use the versions in
platform instead.

Cleanup: Don't build crc files multiple times

As a preparation for MB-33327 don't build the CRC32 related
source files more than once. Link and use the versions in
platform instead.

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

show more ...

Revision tags: v5.5.4
e379ad7619-Mar-2019 Ben Huddleston <ben.huddleston@couchbase.com>

MB-33351: Don't throw in CoreStore.get()

As we call CoreStore.get() from within the new and delete operators,
we cannot call new or throw anything from inside this function.
Calling

MB-33351: Don't throw in CoreStore.get()

As we call CoreStore.get() from within the new and delete operators,
we cannot call new or throw anything from inside this function.
Calling new would result in a recursive call via the new operator;
this would result in a stack overflow if we were calling new to create
and exception message, in the case where we would throw if our index
is out of range. Throwing from within a delete call would violate
noexcept on linux which results in a std::terminate.

Fix these issues by ensuring we always return something valid from
CoreStore.get(). In this case, something belonging to another core.
We'll get some cache contention, but this is better than crashing.

Change-Id: I56968d46215641787c1d01337c8dea619da0ffc3
Reviewed-on: http://review.couchbase.org/106491
Reviewed-by: Dave Rigby <daver@couchbase.com>
Tested-by: Build Bot <build@couchbase.com>
Tested-by: David Haikney <david.haikney@couchbase.com>

show more ...

da567ebf20-Mar-2019 Trond Norbye <trond.norbye@gmail.com>

Get rid of config.h

Define all flags as compiler options with -DFOO=1

Change-Id: I8deab908c9feb08a090a56dafa8c3a9ecb1ed1e3
Reviewed-on: http://review.couchbase.org/106500
Te

Get rid of config.h

Define all flags as compiler options with -DFOO=1

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

show more ...

7b4c8fa305-Nov-2018 Dave Rigby <daver@couchbase.com>

MB-30040: Update platform to use Folly

Change-Id: Id2eeb0205ff3c1ddf4269876366613b4860c6c2a
Reviewed-on: http://review.couchbase.org/101368
Tested-by: Build Bot <build@couchbase.com>

MB-30040: Update platform to use Folly

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

show more ...

2f179c8014-Mar-2019 Trond Norbye <trond.norbye@gmail.com>

Remove C interface to our own random provider

And:

* Move platform specific code back into random.cc
as it's basically 3 small function calls

* move to the shor

Remove C interface to our own random provider

And:

* Move platform specific code back into random.cc
as it's basically 3 small function calls

* move to the shorter cb namespace

* Export the entire class

* clang-format

* Removed non-shared provider (not used)

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

show more ...

1a6af9b408-Mar-2019 Trond Norbye <trond.norbye@gmail.com>

Include what you use

Remove platform/platform.h

Change-Id: I593b9124c79660566b4e316a2e5f852351f3ded9
Reviewed-on: http://review.couchbase.org/106046
Reviewed-by: Dave Rigby

Include what you use

Remove platform/platform.h

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

show more ...

9809835f07-Mar-2019 Trond Norbye <trond.norbye@gmail.com>

Remove cb_mktemp (use cb::io::mktemp instead)

Change-Id: I4443740b4b2731582d40edb89ae3173615beb143
Reviewed-on: http://review.couchbase.org/105845
Reviewed-by: Paolo Cocchi <paolo.co

Remove cb_mktemp (use cb::io::mktemp instead)

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

show more ...

24c0a69007-Mar-2019 Trond Norbye <trond.norbye@gmail.com>

Refactor: Move RelaxedAtomic to cb namespace

Change-Id: Ie7333c1556e4630ba606345b51db7e3a8ea80613
Reviewed-on: http://review.couchbase.org/105827
Tested-by: Build Bot <build@couchbas

Refactor: Move RelaxedAtomic to cb namespace

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

show more ...

adda26cd27-Feb-2019 Ben Huddleston <ben.huddleston@couchbase.com>

MB-30040: Introduce platform_time.h

Pulling in folly is a massive PITA because of how much stuff is in
the platform.h header file. To make this easier, split platform.h
into a number

MB-30040: Introduce platform_time.h

Pulling in folly is a massive PITA because of how much stuff is in
the platform.h header file. To make this easier, split platform.h
into a number of logically grouped header files that can be included
instead.

Move the time declarations into their own header file.

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

show more ...

2c341c3a27-Feb-2019 Ben Huddleston <ben.huddleston@couchbase.com>

MB-30040: Remove get_pid()

Pulling in folly is a massive PITA because of how much stuff is in
the platform.h header file. To make this easier, remove the now no
longer necessary pid

MB-30040: Remove get_pid()

Pulling in folly is a massive PITA because of how much stuff is in
the platform.h header file. To make this easier, remove the now no
longer necessary pid related code.

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

show more ...

317588cb19-Feb-2019 Trond Norbye <trond.norbye@gmail.com>

Remove unused functions from platform

Change-Id: I9fa20c1ad29ba96477236e0d25ac976626975b36
Reviewed-on: http://review.couchbase.org/105031
Reviewed-by: Dave Rigby <daver@couchbase.co

Remove unused functions from platform

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

show more ...

7f7c6e3a19-Feb-2019 Trond Norbye <trond.norbye@gmail.com>

Refactor: cb::io::loadLibrary should load MODULE libs

Change-Id: I809571385745745bce29d072ac36c608e18fc658
Reviewed-on: http://review.couchbase.org/105073
Tested-by: Build Bot <build

Refactor: cb::io::loadLibrary should load MODULE libs

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

show more ...

12345678