Release notes
Release notes for 3.0.1
Couchbase Server 3.0.1 is first maintenance release for Couchbase Server 3.0. This release focuses on getting the system stability bugs fixed for the Windows platform and providing general availability. In addition, this release also includes some critical bug fixes related to metadata corruption.
Known issues in 3.0.1
The following issues are associated with Couchbase Server 3.0.1 release.
Functional area | Operating system | Issue | Description |
---|---|---|---|
Upgrade | Windows | MB-12483 | Data lost with online upgrade from 2.0.0 to 3.0.1 and reboot cluster. |
Upgrade | MB-12655 | Replication of certain per-node keys is broken after a node is first upgraded offline
from 2.x to 3.0 and then added back to the formerly 2.x cluster that is now upgraded to 3.0.
Workaround: When performing an online upgrade from Couchbase Server 2.x to 3.x, always fully delete the 2.x package (including the config files) before installing the 3.x package. |
|
Performance | Windows | MB-12353 | Regression (from 2.5.1) in rebalance out with views and query workload. |
Performance | Windows | MB-12349 | Regression (from 2.5.1) in rebalance after failover with views and query workload. |
Performance | Windows | MB-12293 | Regression in 4 to 3 node rebalance out on Windows 2012 Server |
Upgrade | MB-12655 | Replication of certain per-node keys is broken after a node is first upgraded offline
from 2.x to 3.0 and then added back to the formerly 2.x cluster that is now upgraded to 3.0.
Workaround: When performing an online upgrade from Couchbase Server 2.x to 3.x, always fully delete the 2.x package (including the config files) before installing the 3.x package. |
|
Database operations | Windows | MB-12647 | In situations with high-throughput (when client is making multiple parallel requests), or with very low network latency (such as when running on localhost), there is a high probability that requests to store() with CAS may incorrectly be processed on Windows Server due to the change in gethrtime() implementation. We recommend that our Windows users stay on version 2.5.x or wait for the next maintenance release 3.0.2. |
The following issues are fixed in the Couchbase Server 3.0.1 release.
Functional area | Operating system | Issue | Description |
---|---|---|---|
Installation | Windows | MB-12321 | New message box thrown during silent install. |
Installation | Windows | MB-12135 | Once the installation of Couchbase server is completed, it launches a console page that comes up with blank page. |
Installation | Windows | MB-11567 | Failed to load beer sample in initial setup. |
Upgrade | Windows | MB-12425 | Bucket failed to restore after offline upgrade from 2.0.0 to 3.0.1. |
Upgrade | Windows | MB-12209 | Failed to offline upgrade from 2.5.x to 3.0.1. |
Upgrade | Windows | MB-11930 | All data lost after offline upgrade from 2.0.0 to 3.0.0. |
vBucket | Windows | MB-12197 | Bucket deletion failing with error 500 reason: unknown {"_":"Bucket deletion not yet complete, but will continue."} |
vBucket | Windows | MB-11955 | Could not re-create the default bucket after deleting the default bucket. |
vBucket | Windows | MB-11934 | After warmup, fewer items are shown. |
vBucket | Windows | MB-11804 | Memcached error #132 'Internal error': Internal error for vbucket... when set key to bucket. |
Views | Windows | MB-12138 | View Query fails with error 500 reason: reason {"error":"error","reason":"{index_builder_exit,89,<<>>}"} |
Rebalance | All | MB-12328 | Item flags are mangled during rebalance. |
Rebalance | Windows | MB-11948 | Simple-test broken - Rebalance exited with reason: unexpected_exit..{dcp_wait_for_data_move_failed,"default",254,..wrong_rebalancer_pid}}} |
Release notes for 3.0.0
Couchbase Server 3.0 is our major release which extends our lead as the most performant and scalable NoSQL database for mission critical enterprise applications.
The major new enhancements and features available in Couchbase Server 3.0 include:
- Performance and scale
Run at planet scale with more data, faster I/O and improved indexing.
- Tunable memory lets you configure memory to optimize metadata, data caching and eviction strategies, allowing configurations ranging from full in-memory database to large disk-based datasets.
- Shared thread pool per node delivers high I/O throughput and low latency for data reads, writes and other operations such as database warm-up.
- Stream-based views based on Database Change Protocol (DCP), a new streaming protocol, reduces latency for view updates, providing faster view consistency and fresher data.
For more information, see:
- Database Change Protocol (DCP) concepts.
- Shared thread pool concepts, Viewing DCP queues via the web console, and DCP stats via the CLI.
- Tunable memory concepts, Managing metadata in memory via the web console, Setting metadata ejection policy via the CLI, and Setting metadata ejection via the REST API.
- Stream-based views concepts.
- Ultra-high availability
Highly available apps with faster and easier data replication across multiple data centers, and advanced disaster recovery options.
- Stream-based XDCR (cross data center replication) lowers XDCR latency using memory-to-memory replication of data from the source cluster to the destination cluster -- even before it hits disk.
- Delta-node recovery permits that nodes be quickly added back after they are repaired, so they can catch up incrementally from where they left off.
- Incremental backup and restore enables administrators to quickly backup only modified data in the database, making backup more efficient for larger datasets.
For more information, see:
- Stream-based XDCR concepts.
- Delta node recovery concepts, Recovering a node via the web console, Recovering nodes via the CLI, and Setting recovery type via the REST API.
- Incremental backup and restore concepts, Backing up incrementally and Restoring incrementally.
- Improved security
Secure on-the-wire data access for apps and admins.
- Encrypted admin access enables HTTPS access for the Couchbase admin console and the REST API.
- Encrypted data access with SSL encrypts data in-flight between client and server.
For more information, see:
- Encrypted administrative access basics.
- Encrypted data access basics.
- Simplified administration
Easy cluster management and resource governance.
- Pause and resume XDCR enables XDCR streams between source and destination clusters to be paused during maintenance windows and resumed later, continuing from where they left off.
- Graceful failover enables nodes to be safely removed from the cluster after all in-flight ops are completed.
- Bucket priority enables prioritization of buckets so that additional I/O resources can be assigned to higher priority buckets for faster workload execution.
- Cluster-wide diagnostics for improved cluster management.
For more information, see:
- XDCR pause and resume replication concepts, Pausing XDCR replication via the web console, Pausing XDCR replication streams via the CLI, and Pausing XDCR replication streams via the REST API.
- Graceful failover concepts, Failing over a node via the web console, Failing over nodes via the CLI, and Setting graceful failover via the REST API.
- Disk I/O priority concepts, Managing disk I/O priority via the web console, Setting bucket priority via the CLI, and Setting disk I/O priority via the REST API.
- Cluster-wide diagnostics concepts, Managing diagnostics via the web console, Diagnostics with couchbase-cli via the CLI, and Diagnostics with cbcollect_info via the CLI.
- Developer empowerment
Building richer and more powerful apps.
- Fully integrated native JSON means your application can work with high level objects which can automatically be serialized to JSON through the Couchbase APIs.
- Powerful async and reactive interfaces in Java , and .NET enable building richer apps, with better IO performance.
- Rich framework integrations with open source frameworks such as Spring, gEvent, twisted and Ottoman.
Couchbase .NET incompatibility
An incompatibility between Microsoft Framework 4.0 or earlier, the Couchbase .NET SDK 1.3.7 or earlier, and Couchbase Server 3.0 has been identified where the URL generated for a View operation on a Bucket is improperly encoded. This causes view requests to fail with the following message in the body:
"Design document not found, body: {"error":"not_found","reason":"missing"}"
- Impact
- The affected Microsoft .NET versions are 4.0 or earlier, Couchbase .NET SDK 1.3.7 or
earlier, and Couchbase Server 3.0 (including Beta) >= 3.0. Microsoft .NET version 4.5
changes the way Uri.ToString handles it’s Unicode encoding, which
resolves the issue, thus clients running on that version or higher of the CLR are not
impacted. Additionally, Couchbase Server 2.5 and lower are not impacted. Note: Couchbase .NET 1.3.8 has a patch which resolves the issue for all versions of Couchbase Server and Microsoft .NET Frameworks.
- Workaround
- In addition to the patch released with Couchbase .NET SDK version 1.3.8, add the
following element to your App.Config or Web.Config to enable support for all SDK and
Server versions.
<uri> <iriParsing enabled="true"/> <uri>
Customers who are not ready or cannot upgrade their Couchbase .NET SDK’s to 1.3.8 or greater are strongly advised to add this element to their deployments if they intend to use the Couchbase .NET SDK with Couchbase Server 3.0 or greater.
- References
- https://connect.microsoft.com/VisualStudio/feedback/details/758479/system-uri-tostring-behaviour-change
Views behavior change
The stale=false view query argument has been enhanced. It considers all document changes which have been received at the time the query was received. This means that using the durability requirements or observe feature to block for persistence in application code before issuing the stale=false stale query is no longer needed. It is recommended that you remove all such application level checks after completing the upgrade to the 3.0 release.
Known issues
The following issues are associated with Couchbase Server release 3.0.0:
Functional area | Issue | Description |
---|---|---|
Views | MB-11917 | One node slow possibly due to the Erlang scheduler. |
Views | MB-11589 | Sliding endseqno during initial index build or DCP reading from disk snapshot results in longer stale=false query latency and index startup time. |
DCP/rebalance | MB-12226 | Rebalance operation hung during online upgrade. |
DCP/rebalance | MB-12125 | Rebalance swap regression of 39.3% when compared with release 2.5.1. |
DCP/rebalance | MB-12124 | Rebalance after failover, 3 to 4 nodes regression of 54.9% when compared with 2.5.1. |
DCP/rebalance | MB-11642 | Intra-replication falling far behind under moderate-heavy workload when XDCR is enabled on small-scale hardwares (for example, AWS instances). |
Fixed issues
There are many bugs fixed in the 3.0.0 release. Some of the notable fixes include the following:
Functional area | Issue | Description |
---|---|---|
vBuckets | MB-10059 | Replica vbucket simply ignores rev_seq values of new items from the active vbucket. |
vBucket | MB-11037 | High replication latency due to the racing in pausing and resuming TAP connection notifier. |
vBucket | MB-11411 | Warmup with an access log always sets the loaded document's rev-id to 1. |
Views | MB-10921 | File descriptor leak in views with reduce. |
Views | MB-11187 | V8 crashes on memory allocation errors, closes erlang on some indexing loads . |