0775afa6ae
* [major] CCBC-253, CCBC-254 Use bucket name in SASL if username omitted. Without this fix, you can may encounter a segmentation faults for buckets, which are not protected by a password. * [major] Preserve IO cookie in `options_from_info` when using v0 plugins with user-provided IO loop instance. This issue was introduced in 2.1.0. * [minor] Display the effective IO backend in 'cbc-version'. This is helpful to quickly detect what is the effective IO plugin on a given system. ## 2.1.1 (2013-08-22) * [minor] Use provided credentials for authenticating to the data nodes. With this fix, it is no longer possible to use Administrator credentials with a bucket. If your configuration does so, you must change the credentials you use before applying this update. No documentation guides use of Administrator credentials, so this change is not expected to affect few, if any deployments. * [major] CCBC-239 Do not use socket after failout. Fixes segmentation faults during rebalance. * [minor] CCBC-245 Distribute debug information with release binaries on Windows * [minor] CCBC-248 Do not disable config.h on UNIX-like platforms. It fixes build issue, when application is trying to include plugins from the tarball. * [major] CCBC-192 Skip misconfigured nodes in the list. New lcb\_cntl(3couchbase) added to control whether the library will skip nodes in initial node list, which listen on configuration port (8091 usually) but doesn't meet required parameters (invalid authentication or missing bucket). By default report this issue and stop trying nodes from the list, like all previous release. Read more at man page lcb\_cntl(3couchbase) in section LCB\_CNTL\_SKIP\_CONFIGURATION\_ERRORS\_ON\_CONNECT * [major] CCBC-246 Fallback to 'select' IO plugin if default plugin cannot be loaded. On UNIX-like systems, default IO backend is 'libevent', which uses third-party library might be not available at the run-time. Read in lcb\_cntl(3couchbase) man page in section LCB\_CNTL\_IOPS\_DEFAULT\_TYPES about how to determine effective IO plugin, when your code chose to use LCB\_IO\_OPS\_DEFAULT during connection instantiation. The fallback mode doesn't affect application which specify IO backend explicitly. ## 2.1.0 (2013-08-17) * [major] New backend `select`. This backend is based on the select(2) system call and its Windows version. It could be considered the most portable solution and is available with the libcouchbase core. * [major] CCBC-236 New backend `libuv`. This backend previously was part of the `couchnode` project and is now available as a plugin. Because libuv doesn't ship binary packages there is no binary package `libcouchbase2-libuv`. You can build plugin from the source distribution, or through the `libcouchbase-dev` or `libcouchbase-devel` package on UNIX like systems. * [major] New backend `iocp`. This is a Windows specific backend, which uses "I/O Completion Ports". As a part of the change, a new version of plugin API was introduced which is more optimized to this model of asynchronous IO. * [major] CCBC-229 Fixed bug when REPLICA\_FIRST fails if first try does not return key * [major] CCBC-228 Fixed bug when REPLICA\_SELECT didn't invoke callbacks for negative error codes * [major] CCBC-145 API for durability operations. This new API is based on `lcb_observe(3)` and allows you to monitor keys more easily. See the man pages `lcb_durability_poll(3)` and `lcb_set_durability_callback(3)` for more info. * [major] New configuration interface lcb\_cntl(3) along with new tunable options of the library and connection instances. In this release the following settings are available. See the man page for more information and examples.: * LCB\_CNTL\_OP\_TIMEOUT operation timeout (default 2.5 seconds) * LCB\_CNTL\_CONFIGURATION\_TIMEOUT time to fetch cluster configuration. This is similar to a connection timeout (default 5 seconds) * LCB\_CNTL\_VIEW\_TIMEOUT timeout for couchbase views (default 75 seconds) * LCB\_CNTL\_HTTP\_TIMEOUT timeout for other HTTP operations like RESTful flush, bucket creating etc. (default 75 seconds) * LCB\_CNTL\_RBUFSIZE size of the internal read buffer (default 32768 bytes) * LCB\_CNTL\_WBUFSIZE size of the internal write buffer (default 32768 bytes) * LCB\_CNTL\_HANDLETYPE type of the `lcb\_t` handler (readonly) * LCB\_CNTL\_VBCONFIG returns pointer to VBUCKET\_CONFIG\_HANDLE (readonly) * LCB\_CNTL\_IOPS get the implementation of IO (lcb\_io\_opt\_t) * LCB\_CNTL\_VBMAP get vBucket ID for a given key * LCB\_CNTL\_MEMDNODE\_INFO get memcached node info * LCB\_CNTL\_CONFIGNODE\_INFO get config node info * LCB\_CNTL\_SYNCMODE control synchronous behaviour (default LCB\_ASYNCHRONOUS) * LCB\_CNTL\_IP6POLICY specify IPv4/IPv6 policy (default LCB\_IPV6\_DISABLED) * LCB\_CNTL\_CONFERRTHRESH control configuration error threshold (default 100) * LCB\_CNTL\_DURABILITY\_TIMEOUT durability timeout (default 5 seconds) * LCB\_CNTL\_DURABILITY\_INTERVAL durability polling interval (default 100 milliseconds) * LCB\_CNTL\_IOPS\_DEFAULT\_TYPES get the default IO types * LCB\_CNTL\_IOPS\_DLOPEN\_DEBUG control verbose printing of dynamic loading of IO plugins. ## 2.0.7 (2013-07-10) * [major] CCBC-183 Improve `lcb_get_replica()`. Now it is possible to choose between three strategies: 1. `LCB_REPLICA_FIRST`: Previously accessible and now the default, the caller will get a reply from the first replica to successfully reply within the timeout for the operation or will receive an error. 2. `LCB_REPLICA_ALL`: Ask all replicas to send documents/items back. 3. `LCB_REPLICA_SELECT`: Select one replica by the index in the configuration starting from zero. This approach can more quickly receive all possible replies for a given topology, but it can also generate false negatives. Note that applications should not assume the order of the replicas indicates more recent data is at a lower index number. It is up to the application to determine which version of a document/item it may wish to use in the case of retrieving data from a replica. ## 2.0.6 (2013-05-07) * [major] CCBC-188 Fix segfault when rebalancing When a (!connected) server is reconnected, the tasks in its "pending" buffer will be moved into "output" buffer. If its connection is broken again immediately, relocate_packets() will go to wrong path. * [major] CCBC-202 Don't try to switch to backup nodes when timeout is reached * [major] CCBC-188 Check if SASL struct is valid before disposing * [major] Fix compile error with sun studio "src/event.c", line 172: error: statement not reached (E_STATEMENT_NOT_REACHED) * [major] Don't invoke HTTP callbacks after cancellation, because user code might assume a previously-freed resource is still valid * [minor] CCBC-179 Added an example to properly use the bucket credentials for authentication instead of administrator credentials * [minor] example/yajl/couchview.c: pass cookie to the command Fixes coredump when executing ./examples/yajl/couchview * [minor] CCBC-201 Add Host header in http request http://cbugg.hq.couchbase.com/bug/bug-555 points out that Host is a required field in HTTP 1.1 ## 2.0.5 (2013-04-05) * [minor] Try to search the --libdir for modules if dlopen fails to find the module in the default library path * [minor] CCBC-190 New compat mode (experimental) for configuration caching. See man lcb_create_compat * [minor] Manpage fixes * [minor] Fix build on FreeBSD (http://review.couchbase.org/25289) * [minor] Fix reconnecting issues on windows (http://review.couchbase.org/25170 and http://review.couchbase.org/25155) * [minor] pillowfight example updated to optionally use threads ## 2.0.4 (2013-03-06) * [minor] CCBC-185 The bootstrap URI is not parsed correctly * [minor] CCBC-175 Work properly on systems where EWOULDBLOCK != EAGAIN * [critical] CCBC-180 Segmentation fault when the hostname resolved into several addresses and first of them reject couchbase connections. * [major] CCBC-182 The library stops iterating backup nodes list if the next one isn't accessible. * [major] CCBC-147 Fixed illegal memory access in win32 plugin * [minor] CCBC-178 Build error on solaris/sparc: -Werror=cast-align |
||
---|---|---|
.. | ||
buildlink3.mk | ||
DESCR | ||
distinfo | ||
Makefile | ||
PLIST |