check-all: add estimated linker path if not passed

This ensures we are testing the actual plugins built, and not the one in
the linker path, in the case where the current installation prefix is
not in the default linker search path.

Change-Id: I0b0c3a574abbc79648ab8926ffe8d82c117431d6
Reviewed-on: http://review.couchbase.org/43388
Tested-by: Mark Nunberg <mnunberg@haskalah.org>
Reviewed-by: Subhashni Balakrishnan <b.subhashni@gmail.com>
Don't derive REVDESCRIBE from VERSION_INFO

deb/rpm make dist-{deb,rpm} was broken when the tag was a bare version
(i.e 2.4.4) rather than a subsequent command (2.4.3-4-gdeadbeef).

Change-Id: I0b057631ec6f1e96c859c3f796e083642804c9be
Reviewed-on: http://review.couchbase.org/43449
Tested-by: Mark Nunberg <mnunberg@haskalah.org>
Reviewed-by: Subhashni Balakrishnan <b.subhashni@gmail.com>
add htparse keepalive tests

Change-Id: I0d04ca77f05678fa5f7e04a7b1089a695bf4dfda
Reviewed-on: http://review.couchbase.org/43386
Tested-by: Mark Nunberg <mnunberg@haskalah.org>
Reviewed-by: Subhashni Balakrishnan <b.subhashni@gmail.com>
Add SSL Unit Tests

This adds a test for very basic SSL functionality; just to ensure we're
not DOA for each change we do.

Like the other core socket tests, this test actually constructs an
isolated server using OpenSSL's BSDeque I/O methods.

Change-Id: I1e7ad8bcffd59ef8479716188fb3a987aadc383e
Reviewed-on: http://review.couchbase.org/43200
Tested-by: Mark Nunberg <mnunberg@haskalah.org>
Reviewed-by: Brett Lawson <brett19@gmail.com>
ssl_c: Plug ownership/callback leaks

See inline comments and modifications for the painful details. In short:

- Always ensure pending write buffers are explicitly freed (i.e.
  returned to the lcbio_CTX/lcbio_SOCKET level) when the CSSL object is
  closed.
- Always trigger the user callback if a user-request is effective for a
  read and we have an error.

Change-Id: Id9ffd96d66505b3ec6f9d6ec479fe504432caa52
Reviewed-on: http://review.couchbase.org/43201
Tested-by: Mark Nunberg <mnunberg@haskalah.org>
Reviewed-by: Brett Lawson <brett19@gmail.com>
Deprecate v1/v2 IOPS access internally

We just patched up a bug from older code which was using the 'v0'
fields. Let's avoid this in the future by disabling access to all the
'v1' and 'v2' specific plugins.

Note, non-internal code (i.e. LIBCOUCHBASE_INTERNAL is not defined) will
still work (and not get warnings), and the ABI structure will also
remain the same.

Change-Id: I42affa93f40f5db182bb8ebffc46f2758ad386e7
Reviewed-on: http://review.couchbase.org/43270
Tested-by: Mark Nunberg <mnunberg@haskalah.org>
Reviewed-by: Brett Lawson <brett19@gmail.com>
Fix test behavior on real clusters

Change-Id: I2b09f1b3463f3e719e48eac786d300bb97f35430
Reviewed-on: http://review.couchbase.org/43285
Tested-by: Mark Nunberg <mnunberg@haskalah.org>
Reviewed-by: Brett Lawson <brett19@gmail.com>
Don't add lcbht.t to htparse test executable

This file is already included via linking couchbaseS. Without this, our
coverage reports are missing lcbht.c since we're not testing the
instrumented object (but rather the one built into the test exe)

Change-Id: I8fa95c04a22e932d49d7f7422012322e12d5e933
Reviewed-on: http://review.couchbase.org/43387
Tested-by: Mark Nunberg <mnunberg@haskalah.org>
Reviewed-by: Subhashni Balakrishnan <b.subhashni@gmail.com>
CCBC-550: Fix pillowfight --set-ratio with values higher than 50

Change-Id: I91504ebd8d81a57d845b40a9375bb94a7e45b7d2
Reviewed-on: http://review.couchbase.org/43389
Tested-by: Mark Nunberg <mnunberg@haskalah.org>
Reviewed-by: Brett Lawson <brett19@gmail.com>
README: simplify build process

Change-Id: I512bc911e245963f38346de4dad1ecadf4a76378
Reviewed-on: http://review.couchbase.org/43498
Tested-by: Mark Nunberg <mnunberg@haskalah.org>
Reviewed-by: Brett Lawson <brett19@gmail.com>
Fix some conditional logic in retrychck

We should check specific error codes first, and then go to generalized
error categories. NOT_MY_VBUCKET, for example, is EIFNET, but is handled
differently in this case.

Change-Id: I593fd07c24e9394e6c2dc2f349203e4b73648397
Reviewed-on: http://review.couchbase.org/43529
Tested-by: Mark Nunberg <mnunberg@haskalah.org>
Reviewed-by: Brett Lawson <brett19@gmail.com>
Update Travis to use CMake

Change-Id: I65c5e43d7621754d8d051a25bedb48333fea8d5b
Reviewed-on: http://review.couchbase.org/43531
Tested-by: Mark Nunberg <mnunberg@haskalah.org>
Reviewed-by: Brett Lawson <brett19@gmail.com>
Remove tests, examples, and maintainer mode from autotools

The tests here would be broken due to how the tests are layed out with
respect to various symbols and linking issues.

Change-Id: Icfaec186e8b4a659469c50581489e9bdd86b4b61
Reviewed-on: http://review.couchbase.org/43532
Tested-by: Mark Nunberg <mnunberg@haskalah.org>
Reviewed-by: Brett Lawson <brett19@gmail.com>
Don't build tests for plugins that weren't build

We should no longer depend on the various HAVE_* variables exclusively,
but also on the user options which may select them.

Change-Id: I896eb8bae65a3f80c32698eb586dd3a3a1ede492
Reviewed-on: http://review.couchbase.org/43453
Reviewed-by: Brett Lawson <brett19@gmail.com>
Tested-by: Mark Nunberg <mnunberg@haskalah.org>
Add more mutation operation tests using v3 api

Change-Id: I1c6e5a28e65628843e2f6548855e710ec8a5fc1c
Reviewed-on: http://review.couchbase.org/43521
Tested-by: Subhashni Balakrishnan <b.subhashni@gmail.com>
Reviewed-by: Mark Nunberg <mnunberg@haskalah.org>
Configure: warn if using. CMake should be used instead

Change-Id: I2490e7db90502b574feaa776197ff66ca11879ee
Reviewed-on: http://review.couchbase.org/43533
Tested-by: Mark Nunberg <mnunberg@haskalah.org>
Reviewed-by: Sergey Avseyev <sergey.avseyev@gmail.com>
Packaging: Make deb/rpm build depend on cmake; remove autotools deps

Change-Id: Iaa838e42ab90ed3c396024415280f7c00c7c7c96
Reviewed-on: http://review.couchbase.org/43500
Reviewed-by: Brett Lawson <brett19@gmail.com>
Reviewed-by: Sergey Avseyev <sergey.avseyev@gmail.com>
Tested-by: Mark Nunberg <mnunberg@haskalah.org>
vbguess: Don't modify guess information on new config

Guess information should be set only when an index is known to be bad.
This commit also adds some logging

Change-Id: Icc366ad4154249342e4bc55614d1919fddf842cf
Reviewed-on: http://review.couchbase.org/43530
Tested-by: Mark Nunberg <mnunberg@haskalah.org>
Reviewed-by: Sergey Avseyev <sergey.avseyev@gmail.com>
parse-git-describe: Don't use 'GIT' string in non-tag release

The sha abbrev in git is already prepended with a 'g' for this purpose.

Change-Id: I1915902fe875a33a5b3712f772aea109e920e0a6
Reviewed-on: http://review.couchbase.org/43499
Tested-by: Mark Nunberg <mnunberg@haskalah.org>
Reviewed-by: Sergey Avseyev <sergey.avseyev@gmail.com>
Move EAGAIN==EWOULDBLOCK check to config_static, rather than configure

I'm unaware of _any_ system which doesn't define these two as macros, so
placing it as a compile-time macro which would be portable across all
build systems would be nice.

Change-Id: Ia9ae0f2d9548594f29dbbbe87f42605b5b7445c5
Reviewed-on: http://review.couchbase.org/43535
Reviewed-by: Sergey Avseyev <sergey.avseyev@gmail.com>
Tested-by: Mark Nunberg <mnunberg@haskalah.org>