Skip to content
Commits on Nov 4, 2015
  1. @daverigby @trondn

    MB-16702: Update cbdeps jemalloc to v4.0.4 [1/2]

    daverigby committed with trondn
    We are currently building a development version of jemalloc between
    3.6.0 and 4.0 fir sherlock - we needed this version to support some of
    the features we needed for memory defrag.  Given that jemalloc has now
    released version 4.0 (i.e. the stable, cleaned up version of what we
    are already using), we should upgrade to it for Watson.
    
    Note: as part of this we no longer install jemalloc's header files
    (under install/include/jemalloc) - these are not needed as part of the
    shipped product. Instead applications should pick them up from
    build/tlm/deps/jemalloc.exploded
    
    Change-Id: I423fb8067e626fe451073563bf92ec0009950424
    Reviewed-on: http://review.couchbase.org/56634
    Tested-by: buildbot <build@couchbase.com>
    Reviewed-by: Trond Norbye <trond.norbye@gmail.com>
Commits on Nov 3, 2015
  1. @trondn

    Upgrade flatbuffers to 1.2.0

    trondn committed
    Change-Id: I6eb1d03197a34e3735a0ab568be8fee6063c1c2f
    Reviewed-on: http://review.couchbase.org/56626
    Tested-by: buildbot <build@couchbase.com>
    Reviewed-by: Chris Hillery <ceej@couchbase.com>
  2. @hsharsha

    Get rid of V8 version macros

    hsharsha committed
    Since v8 library file as part of cbdeps, no need to maintatin
    v8 code base for different versions.
    
    Change-Id: I2fa72322e1ee346d3266d6f27a8776cd1cb14d1b
    Reviewed-on: http://review.couchbase.org/56591
    Tested-by: buildbot <build@couchbase.com>
    Reviewed-by: Trond Norbye <trond.norbye@gmail.com>
Commits on Oct 29, 2015
  1. @trondn

    Add support for __attribute__((deprecated))

    trondn committed
    Change-Id: Ib5fa24a48950043719ed96c54e5aecc947cc2f1b
    Reviewed-on: http://review.couchbase.org/56520
    Tested-by: buildbot <build@couchbase.com>
    Reviewed-by: Dave Rigby <daver@couchbase.com>
Commits on Oct 28, 2015
  1. @trondn

    MB-16612: Move modules to "normal" locations

    trondn committed
    Previously we had bucket_engine load the modules on demand and
    had ns_server provide the absolute path to the modules. Now we've
    refactored the code to dynamically just load the modules during
    startup (and may report link problems as part of the startup, and
    not at a random time in the future (which may be weeks away)).
    
    This means we no longer need the runtime path to include
    lib/memcached
    
    Change-Id: I001ce9cbc8f18f2aa466fb86c5832d5154cdfc38
    Reviewed-on: http://review.couchbase.org/56316
    Tested-by: buildbot <build@couchbase.com>
    Reviewed-by: Dave Rigby <daver@couchbase.com>
Commits on Oct 27, 2015
  1. @daverigby

    Add Valgrind suppression for std::regex (GCC 4.9)

    daverigby committed
    libstdc++ (GCC 4.9.0) implementation of std::regex has a memory leak -
    see https://gcc.gnu.org/bugzilla/show_bug.cgi?id=58737
    
    Change-Id: I3dc949a678c5bc86461c22a6d0e2cea66e3e8016
    Reviewed-on: http://review.couchbase.org/56404
    Reviewed-by: abhinav dangeti <abhinav@couchbase.com>
    Tested-by: buildbot <build@couchbase.com>
Commits on Oct 26, 2015
  1. @mikewied @ceejatec

    MB-16610: Add the backup project to the makefile

    mikewied committed with ceejatec
    Change-Id: Iccaa368cfe8ba606b09cc0186ae6027cd687072f
    Reviewed-on: http://review.couchbase.org/56270
    Tested-by: buildbot <build@couchbase.com>
    Reviewed-by: Trond Norbye <trond.norbye@gmail.com>
    Reviewed-by: Chris Hillery <ceej@couchbase.com>
Commits on Oct 22, 2015
  1. @trondn

    Update valgrind suppression for parent monitor thread

    trondn committed
    We don't have any shutdown logic for the parent monitor thread
    (and it is only used in testing to make sure that memcached
    terminates if testapp dies).
    
    We've changed the way we allocate and release the Thread Context,
    and in order to avoid having to create another suppression fix
    the next time we change this I'm just suppressing anything
    allocated after the cb_create_named_thread.
    
    Change-Id: I6b9e5b45921482c9debca35a8c65cf1ff4eb2acd
    Reviewed-on: http://review.couchbase.org/56268
    Tested-by: buildbot <build@couchbase.com>
    Reviewed-by: Dave Rigby <daver@couchbase.com>
Commits on Oct 21, 2015
  1. @abhinavdangeti

    ThreadSanitizer: add suppression for std::string::_Rep::_M_dispose

    abhinavdangeti committed
    ThreadSanitizer appears to report a data race in GCC's basic_string
    implementation on _M_refcount: specifically on operator delete via
    std::string::_Rep::_M_dispose for std::string when using libstdc++ -
    see report on thread-sanitizer mailing list [1].
    Suppressing this for now.
    
    [1]: https://gcc.gnu.org/ml/libstdc++/2015-09/msg00000.html
    
    Change-Id: I34e0cc8cfaf5bad6aff52ddfecf9be58f85f22b3
    Reviewed-on: http://review.couchbase.org/56274
    Tested-by: buildbot <build@couchbase.com>
    Reviewed-by: Dave Rigby <daver@couchbase.com>
Commits on Oct 16, 2015
  1. @daverigby

    MB-16560: Create script to tag releases

    daverigby committed
    Example usage:
    
        tlm/tag_release.py 4.0.0 memcached
    
    Example output:
    
        pushd memcached
        git tag -a -m "4.0.0 release (memcached)" v4.0.0 a7a7729d2d46854d2759814167722e0e5618d2fc
        git push review v4.0.0
        popd
    
    Change-Id: Ib9aca09623a629bacf4e4383fa652e6bf01a0763
    Reviewed-on: http://review.couchbase.org/56150
    Tested-by: buildbot <build@couchbase.com>
    Tested-by: Dave Rigby <daver@couchbase.com>
    Reviewed-by: Trond Norbye <trond.norbye@gmail.com>
Commits on Oct 12, 2015
  1. @hisundar @abhinavdangeti

    MB-16466: correct suppression for lock inversion in forestdb

    hisundar committed with abhinavdangeti
    Change-Id: Iccdbcd983382386b925fdc96c6b38fd14e820f9c
    Reviewed-on: http://review.couchbase.org/56024
    Tested-by: buildbot <build@couchbase.com>
    Reviewed-by: abhinav dangeti <abhinav@couchbase.com>
    Tested-by: abhinav dangeti <abhinav@couchbase.com>
Commits on Oct 8, 2015
  1. @hisundar @chiyoung

    MB-15502: suppress ThreadSanitizer false positive for forestdb plock

    hisundar committed with chiyoung
    Change-Id: Ie01321b9c982c7982064d627de3976f2e499f79b
    Reviewed-on: http://review.couchbase.org/55932
    Tested-by: buildbot <build@couchbase.com>
    Reviewed-by: Chiyoung Seo <chiyoung@couchbase.com>
  2. @steveyen @ceejatec

    Added cbft project

    steveyen committed with ceejatec
    Change-Id: I8e343ad54edcc1bbe32b9603b77e1ac0186a08ae
    Reviewed-on: http://review.couchbase.org/53205
    Tested-by: buildbot <build@couchbase.com>
    Reviewed-by: Chris Hillery <ceej@couchbase.com>
Commits on Oct 7, 2015
  1. @daverigby @abhinavdangeti

    ThreadSanitizer: add suppression for std::string::assign

    daverigby committed with abhinavdangeti
    ThreadSanitizer appears to report a false positive data race in
    operator delete via std::string::assign for std::string when using
    libstdc++ - see discussion on thread-sanitizer mailing list [1].
    
    Running with LLVM's own C++ library (libc++) makes the warning go
    away, so would seem to be either a bug in libstdc++, or a bug in
    ThreadSanitizer. Either way suppress it.
    
    [1]: https://groups.google.com/forum/#!msg/thread-sanitizer/dZ3QiQE49ns/j7rKGHg08foJ
    
    Change-Id: Id2bdc7d50686ebf83f9792fefc8e202a5502b587
    Reviewed-on: http://review.couchbase.org/55874
    Tested-by: buildbot <build@couchbase.com>
    Reviewed-by: abhinav dangeti <abhinav@couchbase.com>
Commits on Oct 5, 2015
  1. @trondn

    Add build support for MacOS X with openssl from homebrew

    trondn committed
    Change-Id: I5c100e4e2c8dbbd38f17c8686cc4158d23334c45
    Reviewed-on: http://review.couchbase.org/55757
    Reviewed-by: Dave Rigby <daver@couchbase.com>
    Tested-by: buildbot <build@couchbase.com>
Commits on Oct 2, 2015
  1. @daverigby @ceejatec

    Move Couchbase defaults into CMakeLists.txt

    daverigby committed with ceejatec
    Move some of the default values for the build from the wrapper
    Makefile into CMake proper. This makes it simpler to invoke cmake
    directly (for example when you don't want/need to use NMake)
    
    Change-Id: I2c013ee8f221920a38fc1533f247d77d087bf4aa
    Reviewed-on: http://review.couchbase.org/55717
    Tested-by: buildbot <build@couchbase.com>
    Reviewed-by: Trond Norbye <trond.norbye@gmail.com>
    Reviewed-by: Chris Hillery <ceej@couchbase.com>
  2. @daverigby

    Enable color diagnostics when using Clang with Ninja

    daverigby committed
    When using Ninja as the build generator, Clang fails to auto-detect
    that it is running on a terminal (and hence doesn't print color
    diagnostics).
    
    Solve this by explcitly telling Clang to use color when Ninja is the
    build generator.
    
    Note that Ninja is smart enough to strip out any color escape
    sequences if stdout isn't a terminal, so this is safe when logging
    Ninja's output to a file.
    
    Change-Id: I951348d104dcf66431f6c82665b7cee47c2926fe
    Reviewed-on: http://review.couchbase.org/55718
    Reviewed-by: Chris Hillery <ceej@couchbase.com>
    Tested-by: buildbot <build@couchbase.com>
Commits on Sep 30, 2015
  1. @trondn @ceejatec

    Update cmake minimum version to 2.8.12

    trondn committed with ceejatec
    We're using features not present in earlier versions
    
    Change-Id: I06f914ec1bed76a2340451d47ed44b2f8b9aaa03
    Reviewed-on: http://review.couchbase.org/55652
    Reviewed-by: Chris Hillery <ceej@couchbase.com>
    Reviewed-by: Dave Rigby <daver@couchbase.com>
    Tested-by: Chris Hillery <ceej@couchbase.com>
Commits on Sep 23, 2015
  1. @daverigby @trondn

    Add CB_{C,CXX}_FLAGS_NO_OPTIMIZE variable

    daverigby committed with trondn
    Sometimes it is desirable to disable optimization for certain targets;
    however on Windows it isn't possible to simply use 'Debug' build flags
    on some object files and 'Release' flags on others if they are linked
    together into a single executable, due to the different incompatible
    CRTs.
    
    The initial solution to this (see dfc6abe) was to override the default
    Debug flags to always use the 'Release' CRT. While this solves the
    problem of linking Debug and non-Debug objects, it essentially
    prevents the user from building a "true" Debug build on Windows with
    the Debug CRT.
    
    Therefore sovle this in a different way. Add a two new variables:
    CB_{C,CXX}_FLAGS_NO_OPTIMIZE which can be added to a target to /only/
    disable optimization, and to leave all other Release/Debug flags
    as-is.
    
    Once these variables are used by all targets which want to build
    without optimizations, the overrides to CMAKE_{C,CXX}_FLAGS_DEBUG can
    be removed (in a follow-up patch).
    
    Change-Id: I5b6fca52b56c26cc7aa01a28e4f194f8adbfb694
    Reviewed-on: http://review.couchbase.org/55467
    Tested-by: buildbot <build@couchbase.com>
    Reviewed-by: Trond Norbye <trond.norbye@gmail.com>
  2. @daverigby @trondn

    Explicitly set CMAKE_XXX_FLAGS_DEBUG

    daverigby committed with trondn
    Explicitly set the C/C++ CMake Debug flags (CMAKE_C_FLAGS_DEBUG /
    CMAKE_CXX_FLAGS_DEBUG) for all supported compilers, with optimization
    disabled. This allows us to use this variable to selectively force
    Debug flags (i.e. optimization off) for selected targets, such as unit
    tests.
    
    Change-Id: Iaafc3d8c8b289fa49105780944f71a890ce95edc
    Reviewed-on: http://review.couchbase.org/55457
    Reviewed-by: Trond Norbye <trond.norbye@gmail.com>
    Tested-by: Trond Norbye <trond.norbye@gmail.com>
  3. @trondn

    Revert "Explicitly set CMAKE_XXX_FLAGS_DEBUG"

    trondn committed
    This reverts commit 4fe7fa5.
    
    The build fails when trying to build a Debug build with:
    
    [  0%] Building CXX object gtest/CMakeFiles/gtest.dir/src/gtest-all.cc.o
    clang: error: no input files
    /bin/sh: -g: command not found
    
    Change-Id: I616e22398b7489c62bd756275d38126f487dda66
    Reviewed-on: http://review.couchbase.org/55455
    Reviewed-by: Trond Norbye <trond.norbye@gmail.com>
    Tested-by: buildbot <build@couchbase.com>
  4. @daverigby @trondn

    Explicitly set CMAKE_XXX_FLAGS_DEBUG

    daverigby committed with trondn
    Explicitly set the C/C++ CMake Debug flags (CMAKE_C_FLAGS_DEBUG /
    CMAKE_CXX_FLAGS_DEBUG) for all supported compilers, with optimization
    disabled. This allows us to use this variable to selectively force
    Debug flags (i.e. optimization off) for selected targets, such as unit
    tests.
    
    Change-Id: I64185de90e7338a0751f42e822ee11800dbbc1b5
    Reviewed-on: http://review.couchbase.org/55425
    Tested-by: buildbot <build@couchbase.com>
    Reviewed-by: Chris Hillery <ceej@couchbase.com>
    Reviewed-by: Trond Norbye <trond.norbye@gmail.com>
Commits on Sep 21, 2015
  1. @jimwwalker

    ThreadSanitizer: Suppress libc tzset_internal which has a known data-…

    jimwwalker committed
    …race.
    
    Write of size 8 at 0x7d040000f5d0 by main thread:
     #0 free <null>:0
     #1 tzset_internal
     #2 ISOTime::generatetimestamp(std::array<char, 33ul>&, long, unsigned int)
     #3 ISOTime::generatetimestamp()
     #4 Audit::create_audit_event(unsigned int, cJSON*)
     #5 shutdown_auditdaemon
     #6 main
    
    Previous write of size 8 at 0x7d040000f5d0 by thread T4 (mutexes: write M775):
     #0 malloc <null>:0
     #1 __GI___strdup
     #2 ISOTime::generatetimestamp(std::array<char, 33ul>&, long, unsigned int)
     #3 ISOTime::generatetimestamp()
     #4 put_json_audit_event
     #5 audit_invalid_packet crtstuff.c:0
     #6 process_bin_packet(Connection*)
     #7 Connection::runStateMachinery()
     #8 run_event_loop
     #9 event_handler(int, short, void*)
     #10 event_base_loop <null>:0
     #11 platform_thread_wrap
    
    This is triggered by our use of mktime in isotime.cc. We're not the first
    to encounter this and suppress it.
    
    https://code.google.com/p/chromium/issues/detail?id=78014
    http://src.chromium.org/svn/trunk/src/tools/valgrind/tsan/suppressions.txt?p=115967
    
    Change-Id: I8cb46e085adc0d18230bd51eebf2195ed1a5c453
    Reviewed-on: http://review.couchbase.org/55393
    Reviewed-by: Dave Rigby <daver@couchbase.com>
    Tested-by: buildbot <build@couchbase.com>
  2. @trondn

    Add -DTHREAD_SANITIZER for TS builds

    trondn committed
    This allows for defining other macros under the builds used
    by the thread sanitizer (like undefining the ntoh-macros
    causing compiler warnings on our ts builder)
    
    Change-Id: Ic44184ef69e5be4fc2ee9c788c8ffbfc7fbf099c
    Reviewed-on: http://review.couchbase.org/55385
    Reviewed-by: Chris Hillery <ceej@couchbase.com>
    Tested-by: buildbot <build@couchbase.com>
Commits on Sep 9, 2015
  1. @daverigby @trondn

    Allow selecting badmalloc as the memory allocator

    daverigby committed with trondn
    Add support for the new diagnostic/testing memory 'allocator'
    badmalloc.
    
    Change-Id: Ice5ec6e0bd74ed4071efeaed3bb4fa07af1a1778
    Reviewed-on: http://review.couchbase.org/55051
    Tested-by: buildbot <build@couchbase.com>
    Reviewed-by: Jim Walker <jim@couchbase.com>
    Reviewed-by: Trond Norbye <trond.norbye@gmail.com>
Commits on Sep 7, 2015
  1. @trondn

    Allow libplatform to use gtest

    trondn committed
    Change-Id: I709c2721f43393ee76b4535e15bbcfd26097a23f
    Reviewed-on: http://review.couchbase.org/55075
    Reviewed-by: Dave Rigby <daver@couchbase.com>
    Tested-by: buildbot <build@couchbase.com>
Commits on Sep 2, 2015
  1. @trondn

    Treat warnings for switch as errors

    trondn committed
    Change-Id: I03c67eaaa8984c4c8529ef096c5bb34005c5dfbe
    Reviewed-on: http://review.couchbase.org/54968
    Tested-by: buildbot <build@couchbase.com>
    Reviewed-by: Chris Hillery <ceej@couchbase.com>
Commits on Aug 17, 2015
  1. @trondn

    Remove use of jemalloc for SmartOS

    trondn committed
    The current version of jemalloc we're using doesn't compile
    on SmartOS. Disable the use of jemalloc for now.
    
    Change-Id: I934fc8323ff61002f1dda10b572957a07d825699
    Reviewed-on: http://review.couchbase.org/54507
    Tested-by: buildbot <build@couchbase.com>
    Reviewed-by: Dave Rigby <daver@couchbase.com>
Commits on Aug 10, 2015
  1. @trondn

    Disable build configurations under CLion

    trondn committed
    Change-Id: I06666cb6a9ef6af7f5949d68b4708e3eb0071b74
    Reviewed-on: http://review.couchbase.org/54294
    Tested-by: buildbot <build@couchbase.com>
    Reviewed-by: Dave Rigby <daver@couchbase.com>
Commits on Aug 7, 2015
  1. @mschoch @ceejatec

    add support for passing build tags during Go build/install

    mschoch committed with ceejatec
    Change-Id: Ifd34841d5b5c1f27e5ac90c73090b677efe234d9
    Reviewed-on: http://review.couchbase.org/54193
    Reviewed-by: Chris Hillery <ceej@couchbase.com>
    Tested-by: buildbot <build@couchbase.com>
Commits on Aug 5, 2015
  1. @trondn

    Add check for attribute nonnull and noreturn

    trondn committed
    Change-Id: Idc5a3a905c3abbcc74e3f5e6711683763c29f75c
    Reviewed-on: http://review.couchbase.org/54124
    Reviewed-by: Dave Rigby <daver@couchbase.com>
    Tested-by: buildbot <build@couchbase.com>
Commits on Aug 4, 2015
  1. @trondn

    Fixup win32 envinment default settings

    trondn committed
    Change-Id: I278b6f8d085f4ba3efc8bcf0460d4bd24e1327ce
    Reviewed-on: http://review.couchbase.org/54103
    Reviewed-by: Trond Norbye <trond.norbye@gmail.com>
    Tested-by: Trond Norbye <trond.norbye@gmail.com>
  2. @trondn

    Allow for setting the path to the MSVC tools

    trondn committed
    Change-Id: I875c91006930bcb023d7f8a00cb7331aa7fff24d
    Reviewed-on: http://review.couchbase.org/53862
    Reviewed-by: Dave Rigby <daver@couchbase.com>
    Tested-by: Trond Norbye <trond.norbye@gmail.com>
Commits on Jul 30, 2015
  1. @daverigby

    Test for availability of attribute(format)

    daverigby committed
    Add a check for the 'format' function attribute - this can be used to
    annotate functions which take printf-style arguments, to allow the
    compiler to check that the passed arguments match the format string.
    
    Change-Id: I79c119f60fdabc77079958957127e34178e39cc7
    Reviewed-on: http://review.couchbase.org/53877
    Tested-by: buildbot <build@couchbase.com>
    Reviewed-by: Chris Hillery <ceej@couchbase.com>
Commits on Jul 21, 2015
  1. @ceejatec

    Merge branch 'sherlock' into master

    ceejatec committed
    * sherlock:
      MB-13931: Enhance "make clean" and add "make reset"
    
    Change-Id: If40c61622d1afb24555f80c82b0a8022e77f11e1
Something went wrong with that request. Please try again.