libcouchbase 0.2.0 → 0.3.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.travis.yml +1 -1
- data/README.md +1 -1
- data/ext/libcouchbase/CMakeLists.txt +8 -6
- data/ext/libcouchbase/README.markdown +2 -2
- data/ext/libcouchbase/RELEASE_NOTES.markdown +0 -86
- data/ext/libcouchbase/cmake/Modules/ConfigureDtrace.cmake +0 -11
- data/ext/libcouchbase/cmake/Modules/GenerateConfigDotH.cmake +0 -2
- data/ext/libcouchbase/cmake/Modules/GetLibcouchbaseFlags.cmake +1 -2
- data/ext/libcouchbase/cmake/Modules/GetVersionInfo.cmake +3 -3
- data/ext/libcouchbase/cmake/config-cmake.h.in +0 -2
- data/ext/libcouchbase/cmake/defs.mk.in +2 -0
- data/ext/libcouchbase/cmake/source_files.cmake +5 -21
- data/ext/libcouchbase/include/libcouchbase/auth.h +0 -10
- data/ext/libcouchbase/include/libcouchbase/cntl.h +1 -27
- data/ext/libcouchbase/include/libcouchbase/error.h +1 -15
- data/ext/libcouchbase/include/libcouchbase/n1ql.h +1 -13
- data/ext/libcouchbase/include/libcouchbase/plugins/io/bsdio-inl.c +1 -1
- data/ext/libcouchbase/include/libcouchbase/subdoc.h +0 -9
- data/ext/libcouchbase/include/libcouchbase/views.h +1 -7
- data/ext/libcouchbase/include/libcouchbase/visibility.h +0 -1
- data/ext/libcouchbase/include/memcached/protocol_binary.h +1131 -29
- data/ext/libcouchbase/include/memcached/vbucket.h +42 -0
- data/ext/libcouchbase/packaging/parse-git-describe.pl +1 -1
- data/ext/libcouchbase/plugins/io/libev/libev_io_opts.h +2 -3
- data/ext/libcouchbase/src/README.md +2 -0
- data/ext/libcouchbase/src/auth-priv.h +0 -1
- data/ext/libcouchbase/src/auth.cc +4 -10
- data/ext/libcouchbase/src/bootstrap.c +269 -0
- data/ext/libcouchbase/src/bootstrap.h +39 -50
- data/ext/libcouchbase/src/bucketconfig/bc_cccp.cc +117 -84
- data/ext/libcouchbase/src/bucketconfig/bc_file.c +347 -0
- data/ext/libcouchbase/src/bucketconfig/bc_http.c +630 -0
- data/ext/libcouchbase/src/bucketconfig/bc_http.h +25 -50
- data/ext/libcouchbase/src/bucketconfig/bc_mcraw.c +150 -0
- data/ext/libcouchbase/src/bucketconfig/clconfig.h +386 -407
- data/ext/libcouchbase/src/bucketconfig/confmon.c +474 -0
- data/ext/libcouchbase/src/cbft.cc +27 -22
- data/ext/libcouchbase/src/cntl.cc +19 -30
- data/ext/libcouchbase/src/connspec.cc +1 -48
- data/ext/libcouchbase/src/connspec.h +0 -27
- data/ext/libcouchbase/src/dump.cc +2 -2
- data/ext/libcouchbase/src/getconfig.cc +33 -7
- data/ext/libcouchbase/src/handler.cc +2 -0
- data/ext/libcouchbase/src/hostlist.cc +36 -0
- data/ext/libcouchbase/src/hostlist.h +62 -41
- data/ext/libcouchbase/src/http/http-priv.h +112 -125
- data/ext/libcouchbase/src/http/http.cc +30 -15
- data/ext/libcouchbase/src/http/http.h +34 -1
- data/ext/libcouchbase/src/http/http_io.cc +26 -22
- data/ext/libcouchbase/src/instance.cc +23 -94
- data/ext/libcouchbase/src/internal.h +26 -52
- data/ext/libcouchbase/src/jsparse/parser.cc +202 -146
- data/ext/libcouchbase/src/jsparse/parser.h +98 -91
- data/ext/libcouchbase/src/lcbht/lcbht.c +282 -0
- data/ext/libcouchbase/src/lcbht/lcbht.h +163 -174
- data/ext/libcouchbase/src/lcbio/connect.c +557 -0
- data/ext/libcouchbase/src/lcbio/connect.h +2 -9
- data/ext/libcouchbase/src/lcbio/ctx.c +1 -1
- data/ext/libcouchbase/src/lcbio/iotable.h +16 -61
- data/ext/libcouchbase/src/lcbio/ioutils.h +1 -1
- data/ext/libcouchbase/src/lcbio/manager.c +2 -2
- data/ext/libcouchbase/src/mc/mcreq.h +2 -9
- data/ext/libcouchbase/src/mcserver/mcserver.cc +34 -143
- data/ext/libcouchbase/src/mcserver/mcserver.h +12 -7
- data/ext/libcouchbase/src/mcserver/negotiate.cc +38 -132
- data/ext/libcouchbase/src/n1ql/ixmgmt.cc +2 -1
- data/ext/libcouchbase/src/n1ql/n1ql.cc +32 -56
- data/ext/libcouchbase/src/newconfig.cc +6 -6
- data/ext/libcouchbase/src/nodeinfo.cc +2 -2
- data/ext/libcouchbase/src/operations/{cbflush.cc → cbflush.c} +15 -7
- data/ext/libcouchbase/src/operations/{counter.cc → counter.c} +0 -0
- data/ext/libcouchbase/src/operations/durability.cc +26 -6
- data/ext/libcouchbase/src/operations/durability_internal.h +3 -6
- data/ext/libcouchbase/src/operations/{get.cc → get.c} +26 -24
- data/ext/libcouchbase/src/operations/{observe.cc → observe.c} +93 -68
- data/ext/libcouchbase/src/operations/{pktfwd.cc → pktfwd.c} +0 -0
- data/ext/libcouchbase/src/operations/{remove.cc → remove.c} +0 -0
- data/ext/libcouchbase/src/operations/stats.cc +8 -3
- data/ext/libcouchbase/src/operations/{store.cc → store.c} +32 -27
- data/ext/libcouchbase/src/operations/subdoc.cc +18 -38
- data/ext/libcouchbase/src/operations/{touch.cc → touch.c} +0 -0
- data/ext/libcouchbase/src/packetutils.c +37 -0
- data/ext/libcouchbase/src/packetutils.h +2 -2
- data/ext/libcouchbase/src/probes.d +1 -1
- data/ext/libcouchbase/src/{retrychk.cc → retrychk.c} +3 -2
- data/ext/libcouchbase/src/retryq.cc +4 -4
- data/ext/libcouchbase/src/settings.c +0 -3
- data/ext/libcouchbase/src/settings.h +0 -5
- data/ext/libcouchbase/src/simplestring.c +211 -0
- data/ext/libcouchbase/src/simplestring.h +228 -0
- data/ext/libcouchbase/src/ssl/ssl_c.c +0 -1
- data/ext/libcouchbase/src/ssl/ssl_common.c +0 -2
- data/ext/libcouchbase/src/ssl/ssl_e.c +1 -0
- data/ext/libcouchbase/src/ssobuf.h +82 -0
- data/ext/libcouchbase/src/trace.h +4 -4
- data/ext/libcouchbase/src/vbucket/vbucket.c +1 -0
- data/ext/libcouchbase/src/views/{docreq.cc → docreq.c} +54 -48
- data/ext/libcouchbase/src/views/docreq.h +30 -24
- data/ext/libcouchbase/src/views/viewreq.c +358 -0
- data/ext/libcouchbase/src/views/viewreq.h +13 -43
- data/ext/libcouchbase/tests/basic/t_connstr.cc +50 -89
- data/ext/libcouchbase/tests/basic/t_host.cc +75 -67
- data/ext/libcouchbase/tests/basic/t_jsparse.cc +78 -27
- data/ext/libcouchbase/tests/basic/t_string.cc +112 -0
- data/ext/libcouchbase/tests/htparse/t_basic.cc +78 -58
- data/ext/libcouchbase/tests/iotests/mock-environment.h +1 -2
- data/ext/libcouchbase/tests/iotests/t_confmon.cc +114 -96
- data/ext/libcouchbase/tests/mc/t_alloc.cc +9 -9
- data/ext/libcouchbase/tools/cbc-pillowfight.cc +1 -1
- data/lib/libcouchbase/ext/tasks.rb +6 -2
- data/lib/libcouchbase/query_view.rb +1 -1
- data/lib/libcouchbase/results_fiber.rb +6 -6
- data/lib/libcouchbase/version.rb +1 -1
- metadata +26 -26
- data/ext/libcouchbase/src/bootstrap.cc +0 -216
- data/ext/libcouchbase/src/bucketconfig/bc_file.cc +0 -281
- data/ext/libcouchbase/src/bucketconfig/bc_http.cc +0 -528
- data/ext/libcouchbase/src/bucketconfig/bc_mcraw.cc +0 -115
- data/ext/libcouchbase/src/bucketconfig/confmon.cc +0 -378
- data/ext/libcouchbase/src/dns-srv.cc +0 -142
- data/ext/libcouchbase/src/errmap.cc +0 -107
- data/ext/libcouchbase/src/errmap.h +0 -113
- data/ext/libcouchbase/src/lcbht/lcbht.cc +0 -177
- data/ext/libcouchbase/src/lcbio/connect.cc +0 -562
- data/ext/libcouchbase/src/lcbio/timer-cxx.h +0 -87
- data/ext/libcouchbase/src/mctx-helper.h +0 -51
- data/ext/libcouchbase/src/views/viewreq.cc +0 -318
- data/ext/libcouchbase/tests/iotests/t_errmap.cc +0 -97
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA1:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 5997fa863626ca0ef4723becd7d60ddbbcb3425f
|
|
4
|
+
data.tar.gz: 43edae591acdd1a6146db06da0c97c4267e6c1ef
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 5357cad71cf73c2e3c649a74692c613cd386cd07bb3d0c2f97117f3ca75f3d912230bf6d122e5fb59d0634acaec279caddbab2fe1b26f5bd64e13c3a5afe40a2
|
|
7
|
+
data.tar.gz: be6d945d52b776287dd469a61781a2c5099f7eabf905be786fd946bfcb21c16ae387a97478f59fe5e0e58db006588d45f63bea79ef1270392880d1baa540cffa
|
data/.travis.yml
CHANGED
data/README.md
CHANGED
|
@@ -43,7 +43,7 @@ The library is designed to run anywhere [Rails](http://rubyonrails.org/) runs:
|
|
|
43
43
|
|
|
44
44
|
* Ruby 2.2+
|
|
45
45
|
* JRuby 9.1+
|
|
46
|
-
* Rubinius
|
|
46
|
+
* Rubinius 3.76+
|
|
47
47
|
|
|
48
48
|
|
|
49
49
|
Tested on the following Operating Systems:
|
|
@@ -21,7 +21,7 @@ CMAKE_MINIMUM_REQUIRED(VERSION 2.8.9)
|
|
|
21
21
|
# These variables can be modified as needed
|
|
22
22
|
|
|
23
23
|
# Couchbase mock path to download
|
|
24
|
-
SET(COUCHBASE_MOCK_VERSION CouchbaseMock-1.4.
|
|
24
|
+
SET(COUCHBASE_MOCK_VERSION CouchbaseMock-1.4.3.jar)
|
|
25
25
|
# Maven repository where ${COUCHBASE_MOCK_VERSION} is to be found
|
|
26
26
|
SET(COUCHBASE_MOCK_DLSERVER http://packages.couchbase.com/clients/c/mock)
|
|
27
27
|
project(libcouchbase)
|
|
@@ -151,12 +151,12 @@ IF(WIN32)
|
|
|
151
151
|
ADD_DEFINITIONS(-DWINVER=${NT_REQUIRED_VERSION})
|
|
152
152
|
ADD_DEFINITIONS(-D_WIN32_WINNT=${NT_REQUIRED_VERSION})
|
|
153
153
|
SET(lcb_plat_includes "${SOURCE_ROOT}/contrib/win32-defs")
|
|
154
|
-
SET(lcb_plat_libs ws2_32.lib
|
|
154
|
+
SET(lcb_plat_libs ws2_32.lib)
|
|
155
155
|
SET(lcb_plat_objs $<TARGET_OBJECTS:couchbase_iocp>)
|
|
156
156
|
ELSE()
|
|
157
157
|
SET(lcb_plat_libs m)
|
|
158
158
|
IF(NOT CMAKE_SYSTEM_NAME STREQUAL "FreeBSD")
|
|
159
|
-
SET(lcb_plat_libs ${lcb_plat_libs} dl
|
|
159
|
+
SET(lcb_plat_libs ${lcb_plat_libs} dl)
|
|
160
160
|
ELSE()
|
|
161
161
|
# BSD _and_ DTrace
|
|
162
162
|
IF(LCB_BUILD_DTRACE)
|
|
@@ -205,7 +205,6 @@ ADD_LIBRARY(netbuf-malloc OBJECT ${LCB_NETBUF_SRC})
|
|
|
205
205
|
ADD_LIBRARY(mcreq OBJECT ${LCB_MC_SRC})
|
|
206
206
|
ADD_LIBRARY(rdb OBJECT ${LCB_RDB_SRC})
|
|
207
207
|
ADD_LIBRARY(lcbio OBJECT ${LCB_IO_SRC})
|
|
208
|
-
ADD_LIBRARY(lcbio-cxx OBJECT ${LCB_IO_CXXSRC})
|
|
209
208
|
ADD_LIBRARY(lcbht OBJECT ${LCB_HT_SRC})
|
|
210
209
|
ADD_LIBRARY(lcbcore OBJECT ${LCB_CORE_SRC})
|
|
211
210
|
ADD_LIBRARY(lcbcore-cxx OBJECT ${LCB_CORE_CXXSRC})
|
|
@@ -215,7 +214,6 @@ LCB_UTIL(netbuf-malloc)
|
|
|
215
214
|
LCB_UTIL(netbuf)
|
|
216
215
|
LCB_UTIL(rdb)
|
|
217
216
|
LCB_UTIL(lcbio)
|
|
218
|
-
LCB_CXXUTIL(lcbio-cxx)
|
|
219
217
|
LCB_UTIL(couchbase_utils)
|
|
220
218
|
LCB_UTIL(mcreq)
|
|
221
219
|
LCB_UTIL(lcbht)
|
|
@@ -247,6 +245,10 @@ IF(NOT WIN32 AND LCB_BUILD_DTRACE)
|
|
|
247
245
|
INCLUDE(cmake/Modules/ConfigureDtrace.cmake)
|
|
248
246
|
ENDIF()
|
|
249
247
|
|
|
248
|
+
FILE(GLOB LCB_VIEWS_C_SRC src/views/*.c)
|
|
249
|
+
ADD_LIBRARY(lcb_views_c OBJECT ${LCB_VIEWS_C_SRC})
|
|
250
|
+
LCB_UTIL(lcb_views_c)
|
|
251
|
+
|
|
250
252
|
FILE(GLOB LCB_JSPARSE_SRC src/jsparse/*.cc)
|
|
251
253
|
ADD_LIBRARY(lcb_jsparse OBJECT ${LCB_JSPARSE_SRC})
|
|
252
254
|
LCB_CXXUTIL(lcb_jsparse)
|
|
@@ -259,11 +261,11 @@ SET(LCB_CORE_OBJS
|
|
|
259
261
|
$<TARGET_OBJECTS:netbuf>
|
|
260
262
|
$<TARGET_OBJECTS:cbsasl>
|
|
261
263
|
$<TARGET_OBJECTS:lcbio>
|
|
262
|
-
$<TARGET_OBJECTS:lcbio-cxx>
|
|
263
264
|
$<TARGET_OBJECTS:rdb>
|
|
264
265
|
$<TARGET_OBJECTS:lcbht>
|
|
265
266
|
$<TARGET_OBJECTS:lcbcore>
|
|
266
267
|
$<TARGET_OBJECTS:lcbcore-cxx>
|
|
268
|
+
$<TARGET_OBJECTS:lcb_views_c>
|
|
267
269
|
$<TARGET_OBJECTS:lcb_jsparse>
|
|
268
270
|
$<TARGET_OBJECTS:lcb_jsoncpp>
|
|
269
271
|
${LCB_DTRACE_OBJECT}
|
|
@@ -78,7 +78,7 @@ If you wish to link against OpenSSL, you should set the value of
|
|
|
78
78
|
|
|
79
79
|
## Bugs, Support, Issues
|
|
80
80
|
You may report issues in the library in our issue tracked at
|
|
81
|
-
<
|
|
81
|
+
<http://couchbase.com/issues>. Sign up for an account and file an issue
|
|
82
82
|
against the _Couchbase C Client Library_ project.
|
|
83
83
|
|
|
84
84
|
The developers of the library hang out in IRC on `#libcouchbase` on
|
|
@@ -95,7 +95,7 @@ irc.freenode.net.
|
|
|
95
95
|
* [PHP](http://github.com/couchbase/php-couchbase) (uses the old < 2.6 API)
|
|
96
96
|
* Community projects using libcouchbase
|
|
97
97
|
* [C++11 wrapper](https://github.com/couchbaselabs/libcouchbase-cxx)
|
|
98
|
-
* [cberl - Couchbase NIF](https://github.com/
|
|
98
|
+
* [cberl - Couchbase NIF](https://github.com/chitika/cberl)
|
|
99
99
|
* [Perl client](https://github.com/mnunberg/perl-Couchbase-Client)
|
|
100
100
|
|
|
101
101
|
## Documentation
|
|
@@ -1,91 +1,5 @@
|
|
|
1
1
|
# Release Notes
|
|
2
2
|
|
|
3
|
-
## 2.7.3 (March 21 2017)
|
|
4
|
-
|
|
5
|
-
* Provide the ability to send the `SELECT_BUCKET` when establishing a
|
|
6
|
-
to a server. This is a building block allowing us to use 'RBAC'/username
|
|
7
|
-
auth in the future.
|
|
8
|
-
Note that this requires the `select_bucket=true` option in the connection
|
|
9
|
-
string or equivalent, and that this feature as a whole is considered
|
|
10
|
-
experimental.
|
|
11
|
-
* Priority: Major
|
|
12
|
-
* Issues: [CCBC-758](https://issues.couchbase.com/browse/CCBC-758)
|
|
13
|
-
|
|
14
|
-
* Provide an option to disable DNS-SRV lookups. Because DNS SRV lookups often
|
|
15
|
-
result in no result (i.e. `NXDOMAIN`) - which takes longer, allowing to
|
|
16
|
-
disable such lookups may speed up startup time.
|
|
17
|
-
This option is available via the connection string, using `dnssrv=off`
|
|
18
|
-
* Priority: Minor
|
|
19
|
-
* Issues: [CCBC-756](https://issues.couchbase.com/browse/CCBC-756)
|
|
20
|
-
|
|
21
|
-
* Send client/user-specific identifier in `User-Agent` HTTP header.
|
|
22
|
-
The library already does this for data nodes (Memcached). Using it in HTTP
|
|
23
|
-
services allows better supportability when diagnosing issues by reading the
|
|
24
|
-
HTTP logs.
|
|
25
|
-
* Priority: Major
|
|
26
|
-
* Issues: [CCBC-755](https://issues.couchbase.com/browse/CCBC-755)
|
|
27
|
-
|
|
28
|
-
* Fix bug where DNS SRV hostnames would not be used.
|
|
29
|
-
While DNS SRV lookup was working, the library would not actually attempt
|
|
30
|
-
bootstrap off those received hostnames.
|
|
31
|
-
* Priority: Major
|
|
32
|
-
* Issues: [CCBC-753](https://issues.couchbase.com/browse/CCBC-753)
|
|
33
|
-
|
|
34
|
-
* Provide experimental Analytics support.
|
|
35
|
-
This allows access to the Couchbase Analytics Service, available in
|
|
36
|
-
some pre-release builds. API and syntax wise, Analytics is very similar
|
|
37
|
-
to N1QL.
|
|
38
|
-
To use the analytics service, set the `LCB_CMDN1QL_F_CBASQUERY` bit in
|
|
39
|
-
`lcb_CMDN1QL::cmdflags`, and provide the appropriate _host:port_ combination
|
|
40
|
-
in the `lcb_CMDN1QL::host` field. - Currently, analytics support is not
|
|
41
|
-
used in the cluster map/configuration.
|
|
42
|
-
* Priority: Major
|
|
43
|
-
* Issues: [CCBC-734](https://issues.couchbase.com/browse/CCBC-734)
|
|
44
|
-
|
|
45
|
-
## 2.7.2 (February 21 2017)
|
|
46
|
-
|
|
47
|
-
This release consists of additional internal refactoring and some improved
|
|
48
|
-
logging messages. There is enhanced experimental XATTR support. This release
|
|
49
|
-
also contains some bug fixes:
|
|
50
|
-
|
|
51
|
-
* Fix build issues on FreeBSD. This allows normal BSD `make` to be used, rather
|
|
52
|
-
than forcing `gmake`
|
|
53
|
-
|
|
54
|
-
* Fixed broken JIRA link in README
|
|
55
|
-
|
|
56
|
-
* Fix hanging SSL connections in IOCP/Completion mode. This would sometimes
|
|
57
|
-
stall the connection by not requesting a write if a read was in progress.
|
|
58
|
-
This would result in the command not being sent and the client hanging.
|
|
59
|
-
Note that this only affects completion-style I/O plugins such as IOCP and
|
|
60
|
-
libuv.
|
|
61
|
-
* Issues: [CCBC-744](https://issues.couchbase.com/browse/CCBC-744)
|
|
62
|
-
|
|
63
|
-
* Rename `LCB_SDSPEC_F_VIRTPATH` to `LCB_SDSPEC_F_MACROVALUES`. `VIRTPATH`
|
|
64
|
-
is intended for possible future materialized XATTRs.
|
|
65
|
-
|
|
66
|
-
* Add `LCB_SDSPEC_F_XATTR_DELETED_OK`, which maps to the protocol flag of
|
|
67
|
-
roughly the same name.
|
|
68
|
-
|
|
69
|
-
## 2.7.1 (January 19 2017)
|
|
70
|
-
|
|
71
|
-
This release consists of additional internal refactoring. More internals have
|
|
72
|
-
been converted to C++.
|
|
73
|
-
|
|
74
|
-
* Provide XATTR (Extended Attribute) prototype support.
|
|
75
|
-
This provides a prototype implementation of xattrs, allowing the client to
|
|
76
|
-
access extended (hidden) attributes of a document. This feature can be used
|
|
77
|
-
on the client side by simply setting the `LCB_SDSPEC_F_XATTRPATH` bit in
|
|
78
|
-
the `lcb_SDSPEC::options` field.
|
|
79
|
-
* Issues: [CCBC-728](https://issues.couchbase.com/browse/CCBC-728)
|
|
80
|
-
|
|
81
|
-
* Add automatic DNS SRV record lookup when simple hostname supplied.
|
|
82
|
-
The library will now automatically attempt to look up SRV records
|
|
83
|
-
for various couchbase services if only one host is present in the
|
|
84
|
-
connection string. Automatic lookup will not be performed if more
|
|
85
|
-
than a single host is provded. See the [Java Documentation](https://developer.couchbase.com/documentation/server/current/sdk/java/managing-connections.html)
|
|
86
|
-
on the matter (go to the bottom of the page).
|
|
87
|
-
* Issues: [CCBC-566](https://issues.couchbase.com/browse/CCBC-566)
|
|
88
|
-
|
|
89
3
|
## 2.7.0 (December 21 2016)
|
|
90
4
|
|
|
91
5
|
This release consists mainly of internal refactoring. Many of the internals
|
|
@@ -11,17 +11,6 @@ IF(DTRACE)
|
|
|
11
11
|
RETURN()
|
|
12
12
|
ENDIF()
|
|
13
13
|
|
|
14
|
-
# Fix probes.h on FreeBSD
|
|
15
|
-
IF(CMAKE_SYSTEM_NAME STREQUAL "FreeBSD")
|
|
16
|
-
FIND_PROGRAM(SED sed)
|
|
17
|
-
EXECUTE_PROCESS(COMMAND ${SED} -i.tmp "s/, *char \\*/, const char \\*/g" ${LCB_DTRACE_HEADER}
|
|
18
|
-
RESULT_VARIABLE _rv)
|
|
19
|
-
IF(NOT ${_rv} EQUAL 0)
|
|
20
|
-
MESSAGE(WARNING "Could not execute sed to update dtrace-generated header. DTrace support will be disabled!")
|
|
21
|
-
RETURN()
|
|
22
|
-
ENDIF()
|
|
23
|
-
ENDIF()
|
|
24
|
-
|
|
25
14
|
ADD_DEFINITIONS(-DHAVE_DTRACE)
|
|
26
15
|
IF(NOT APPLE)
|
|
27
16
|
SET(LCB_DTRACE_OBJECT "${LCB_GENSRCDIR}/probes.o")
|
|
@@ -9,7 +9,6 @@ IF(UNIX)
|
|
|
9
9
|
CHECK_FUNCTION_EXISTS(clock_gettime HAVE_CLOCK_GETTIME)
|
|
10
10
|
CHECK_FUNCTION_EXISTS(setitimer HAVE_SETITIMER)
|
|
11
11
|
CHECK_SYMBOL_EXISTS(htonll arpa/inet.h HAVE_HTONLL)
|
|
12
|
-
CHECK_SYMBOL_EXISTS(res_search resolv.h HAVE_RES_SEARCH)
|
|
13
12
|
CHECK_INCLUDE_FILES(dlfcn.h HAVE_DLFCN_H)
|
|
14
13
|
CHECK_INCLUDE_FILES(netdb.h HAVE_NETDB_H)
|
|
15
14
|
CHECK_INCLUDE_FILES(stdint.h HAVE_STDINT_H)
|
|
@@ -23,7 +22,6 @@ IF(UNIX)
|
|
|
23
22
|
CHECK_INCLUDE_FILES(sys/time.h HAVE_SYS_TIME_H)
|
|
24
23
|
CHECK_INCLUDE_FILES(arpa/inet.h HAVE_ARPA_INET_H)
|
|
25
24
|
CHECK_INCLUDE_FILES(inttypes.h HAVE_INTTYPES_H)
|
|
26
|
-
CHECK_INCLUDE_FILES(arpa/nameser.h HAVE_ARPA_NAMESER_H)
|
|
27
25
|
ENDIF()
|
|
28
26
|
|
|
29
27
|
CONFIGURE_FILE(
|
|
@@ -22,8 +22,7 @@ ENDMACRO(list2args)
|
|
|
22
22
|
|
|
23
23
|
LIST(APPEND LCB_GNUC_CPP_WARNINGS
|
|
24
24
|
-Wall -pedantic -Wshadow -fdiagnostics-show-option -Wformat
|
|
25
|
-
-Wno-strict-aliasing -Wextra -Winit-self -Wno-missing-field-initializers
|
|
26
|
-
-Wno-variadic-macros)
|
|
25
|
+
-Wno-strict-aliasing -Wextra -Winit-self -Wno-missing-field-initializers)
|
|
27
26
|
|
|
28
27
|
IF("${CMAKE_C_COMPILER_ID}" STREQUAL "Clang")
|
|
29
28
|
LIST(APPEND LCB_GNUC_CPP_WARNINGS -Wno-cast-align -Wno-dollar-in-identifier-extension)
|
|
@@ -42,13 +42,13 @@ ENDIF()
|
|
|
42
42
|
|
|
43
43
|
IF (NOT LCB_VERSION)
|
|
44
44
|
SET(LCB_NOGITVERSION ON)
|
|
45
|
-
SET(LCB_VERSION "2.7.
|
|
45
|
+
SET(LCB_VERSION "2.7.0")
|
|
46
46
|
ENDIF()
|
|
47
47
|
IF (NOT LCB_VERSION_CHANGESET)
|
|
48
48
|
SET(LCB_VERSION_CHANGESET "0xdeadbeef")
|
|
49
49
|
ENDIF()
|
|
50
50
|
IF (NOT LCB_VERSION_HEX)
|
|
51
|
-
SET(LCB_VERSION_HEX
|
|
51
|
+
SET(LCB_VERSION_HEX 0x020700)
|
|
52
52
|
ENDIF()
|
|
53
53
|
|
|
54
54
|
# Now parse the version string
|
|
@@ -63,7 +63,7 @@ IF(APPLE)
|
|
|
63
63
|
ELSE()
|
|
64
64
|
SET(LCB_SONAME_MAJOR "2")
|
|
65
65
|
ENDIF()
|
|
66
|
-
SET(LCB_SONAME_FULL "${LCB_SONAME_MAJOR}.0.
|
|
66
|
+
SET(LCB_SONAME_FULL "${LCB_SONAME_MAJOR}.0.40")
|
|
67
67
|
|
|
68
68
|
MESSAGE(STATUS
|
|
69
69
|
"libcouchbase ${LCB_VERSION_MAJOR},${LCB_VERSION_MINOR},${LCB_VERSION_PATCH}")
|
|
@@ -10,11 +10,11 @@ SET(LCB_UTILS_SRC
|
|
|
10
10
|
src/hashtable.c
|
|
11
11
|
src/list.c
|
|
12
12
|
src/logging.c
|
|
13
|
-
src/ringbuffer.c
|
|
13
|
+
src/ringbuffer.c
|
|
14
|
+
src/simplestring.c)
|
|
14
15
|
|
|
15
16
|
# lcbio
|
|
16
17
|
FILE(GLOB LCB_IO_SRC src/lcbio/*.c)
|
|
17
|
-
FILE(GLOB LCB_IO_CXXSRC src/lcbio/*.cc)
|
|
18
18
|
|
|
19
19
|
# common memcached operations
|
|
20
20
|
FILE(GLOB LCB_OP_SRC src/operations/*.c)
|
|
@@ -29,6 +29,7 @@ FILE(GLOB LCB_RDB_SRC src/rdb/*.c)
|
|
|
29
29
|
FILE(GLOB LCB_NETBUF_SRC src/netbuf/*.c)
|
|
30
30
|
|
|
31
31
|
# HTTP protocol management
|
|
32
|
+
FILE(GLOB LCB_HT_SRC src/lcbht/*.c)
|
|
32
33
|
LIST(APPEND LCB_HT_SRC "contrib/http_parser/http_parser.c")
|
|
33
34
|
|
|
34
35
|
# bucket config ("confmon")
|
|
@@ -38,57 +39,40 @@ SET(LCB_CORE_SRC
|
|
|
38
39
|
${LCB_OP_SRC}
|
|
39
40
|
${LCB_BCONF_SRC}
|
|
40
41
|
${LCB_N1QL_SRC}
|
|
42
|
+
src/bootstrap.c
|
|
41
43
|
src/callbacks.c
|
|
42
44
|
src/legacy.c
|
|
43
45
|
# src/mcserver/negotiate.c
|
|
44
46
|
src/iofactory.c
|
|
47
|
+
src/retrychk.c
|
|
45
48
|
src/settings.c
|
|
46
49
|
src/utilities.c)
|
|
47
50
|
|
|
48
51
|
SET(LCB_CORE_CXXSRC
|
|
49
52
|
src/instance.cc
|
|
50
53
|
src/auth.cc
|
|
51
|
-
src/bootstrap.cc
|
|
52
54
|
src/bucketconfig/bc_cccp.cc
|
|
53
|
-
src/bucketconfig/bc_http.cc
|
|
54
|
-
src/bucketconfig/bc_file.cc
|
|
55
|
-
src/bucketconfig/bc_mcraw.cc
|
|
56
|
-
src/bucketconfig/confmon.cc
|
|
57
55
|
src/connspec.cc
|
|
58
|
-
src/dns-srv.cc
|
|
59
56
|
src/dump.cc
|
|
60
|
-
src/errmap.cc
|
|
61
57
|
src/getconfig.cc
|
|
62
58
|
src/nodeinfo.cc
|
|
63
59
|
src/handler.cc
|
|
64
60
|
src/hostlist.cc
|
|
65
61
|
src/http/http.cc
|
|
66
62
|
src/http/http_io.cc
|
|
67
|
-
src/lcbht/lcbht.cc
|
|
68
63
|
src/newconfig.cc
|
|
69
64
|
src/n1ql/params.cc
|
|
70
65
|
src/n1ql/n1ql.cc
|
|
71
66
|
src/n1ql/ixmgmt.cc
|
|
72
67
|
src/cbft.cc
|
|
73
|
-
src/operations/cbflush.cc
|
|
74
|
-
src/operations/counter.cc
|
|
75
68
|
src/operations/durability.cc
|
|
76
69
|
src/operations/durability-cas.cc
|
|
77
70
|
src/operations/durability-seqno.cc
|
|
78
|
-
src/operations/get.cc
|
|
79
|
-
src/operations/observe.cc
|
|
80
71
|
src/operations/observe-seqno.cc
|
|
81
|
-
src/operations/pktfwd.cc
|
|
82
|
-
src/operations/remove.cc
|
|
83
72
|
src/operations/stats.cc
|
|
84
|
-
src/operations/store.cc
|
|
85
73
|
src/operations/subdoc.cc
|
|
86
|
-
src/operations/touch.cc
|
|
87
74
|
src/mcserver/mcserver.cc
|
|
88
75
|
src/mcserver/negotiate.cc
|
|
89
|
-
src/retrychk.cc
|
|
90
76
|
src/retryq.cc
|
|
91
|
-
src/views/docreq.cc
|
|
92
|
-
src/views/viewreq.cc
|
|
93
77
|
src/cntl.cc
|
|
94
78
|
src/wait.cc)
|
|
@@ -95,16 +95,6 @@ LIBCOUCHBASE_API
|
|
|
95
95
|
void
|
|
96
96
|
lcbauth_unref(lcb_AUTHENTICATOR *auth);
|
|
97
97
|
|
|
98
|
-
/**
|
|
99
|
-
* Makes a copy of an existing lcb_AUTHENTICATOR object. The returned
|
|
100
|
-
* authenticator object has a reference count of 1.
|
|
101
|
-
* @param src the authenticator object to clone
|
|
102
|
-
* @return the cloned authenticator.
|
|
103
|
-
*/
|
|
104
|
-
LIBCOUCHBASE_API
|
|
105
|
-
lcb_AUTHENTICATOR *
|
|
106
|
-
lcbauth_clone(const lcb_AUTHENTICATOR *src);
|
|
107
|
-
|
|
108
98
|
#ifdef __cplusplus
|
|
109
99
|
}
|
|
110
100
|
#endif
|
|
@@ -924,34 +924,8 @@ typedef const char *lcb_BUCKETCRED[2];
|
|
|
924
924
|
*/
|
|
925
925
|
#define LCB_CNTL_READ_CHUNKSIZE 0x42
|
|
926
926
|
|
|
927
|
-
/**
|
|
928
|
-
* Enable/Disable the Error Map feature. This is disabled by default.
|
|
929
|
-
* Works only on servers which support error map
|
|
930
|
-
*
|
|
931
|
-
* Use `enable_errmap` in the connection string
|
|
932
|
-
*
|
|
933
|
-
* @volatile
|
|
934
|
-
* @cntl_arg_both{int* (as boolean)}
|
|
935
|
-
*/
|
|
936
|
-
#define LCB_CNTL_ENABLE_ERRMAP 0x43
|
|
937
|
-
|
|
938
|
-
/**
|
|
939
|
-
* Enable/Disable sending the SELECT_BUCKET command after authentication.
|
|
940
|
-
* This is useful to test auth, and should not be set by end-users.
|
|
941
|
-
*
|
|
942
|
-
* Note that even if this feature is enabled (the default), the client will
|
|
943
|
-
* only send `SELECT_BUCKET` if the server indicates that it is supported
|
|
944
|
-
* during negotiation.
|
|
945
|
-
*
|
|
946
|
-
* Use `select_bucket` in the connection string
|
|
947
|
-
*
|
|
948
|
-
* @volatile
|
|
949
|
-
* @cntl_arg_both{int* (as boolean)}
|
|
950
|
-
*/
|
|
951
|
-
#define LCB_CNTL_SELECT_BUCKET 0x44
|
|
952
|
-
|
|
953
927
|
/** This is not a command, but rather an indicator of the last item */
|
|
954
|
-
#define LCB_CNTL__MAX
|
|
928
|
+
#define LCB_CNTL__MAX 0x43
|
|
955
929
|
/**@}*/
|
|
956
930
|
|
|
957
931
|
#ifdef __cplusplus
|
|
@@ -502,14 +502,7 @@ typedef enum {
|
|
|
502
502
|
X(LCB_UNKNOWN_SDCMD, 0x4D, LCB_ERRTYPE_INPUT, "Unknown subdocument command") \
|
|
503
503
|
X(LCB_ENO_COMMANDS, 0x4E, LCB_ERRTYPE_INPUT, "No commands specified") \
|
|
504
504
|
X(LCB_QUERY_ERROR, 0x4F, LCB_ERRTYPE_SRVGEN, \
|
|
505
|
-
"Query execution failed. Inspect raw response object for information")
|
|
506
|
-
\
|
|
507
|
-
X(LCB_GENERIC_TMPERR, 0x50, LCB_ERRTYPE_TRANSIENT|LCB_ERRTYPE_SRVGEN, \
|
|
508
|
-
"Generic temporary error received from server") \
|
|
509
|
-
X(LCB_GENERIC_SUBDOCERR, 0x51, LCB_ERRTYPE_SUBDOC|LCB_ERRTYPE_SRVGEN, \
|
|
510
|
-
"Generic subdocument error received from server") \
|
|
511
|
-
X(LCB_GENERIC_CONSTRAINT_ERR, 0x52, LCB_ERRTYPE_INPUT|LCB_ERRTYPE_SRVGEN, \
|
|
512
|
-
"Generic constraint error received from server")
|
|
505
|
+
"Query execution failed. Inspect raw response object for information")
|
|
513
506
|
|
|
514
507
|
/** Error codes returned by the library. */
|
|
515
508
|
typedef enum {
|
|
@@ -573,13 +566,6 @@ int lcb_get_errtype(lcb_error_t err);
|
|
|
573
566
|
LIBCOUCHBASE_API
|
|
574
567
|
const char *lcb_strerror(lcb_t instance, lcb_error_t error);
|
|
575
568
|
|
|
576
|
-
/**
|
|
577
|
-
* Get a shorter textual description of an error message. This is the
|
|
578
|
-
* constant name
|
|
579
|
-
*/
|
|
580
|
-
LCB_INTERNAL_API
|
|
581
|
-
const char *lcb_strerror_short(lcb_error_t error);
|
|
582
|
-
|
|
583
569
|
/**
|
|
584
570
|
* This may be used in conjunction with the errmap callback if it wishes
|
|
585
571
|
* to fallback for default behavior for the given code.
|