Release Notes for Couchbase Server 7.0

    +

    Couchbase Server 7.0 introduces scopes and collections, which provide new database organization structures within Couchbase. It also brings new capabilities to the Query Service in addition to support for scopes and collections.

    Take a look at What’s New? for a list of new features and improvements in this release.

    Release 7.0.2 (October 2021)

    Couchbase Server 7.0.2 was released in October 2021. This maintenance release contains new features and fixes to issues.

    New Features

    This section highlights the notable new features and improvements in this release.

    • TLS can be specified as mandatory for all internal and external cluster-communications — see Manage On-the-Wire Security.

    • HSTS (HTTP Strict Transport Security) can now be enabled.

    • A cluster’s address family can be absolutely restricted to either IPv4 or IPv6 — see Manage Address Families.

    • A node’s alternate address can now be used to identify a target cluster for XDCR — see Create a Reference.

    • Standard index storage now supports indexes for both Couchbase buckets and Ephemeral buckets — see Storage Settings.

    • The Eventing Service now supports a bucket-backed caching capability, to improve performance for repetitive Data Service lookups.

    • The Query Workbench now supports various charts (pie, diagram, scatter etc.) for displaying data. See Query Workbench.

    Fixed Issues

    This section highlights the notable issues fixed in this release.

    Cluster Manager

    Issue Description

    MB-48438

    Summary: Include bucketType in pools/default/b/<bucket-name> REST API

    Data Service

    Issue Description

    MB-38978

    Summary: STAT "dcp" and "dcpagg" adversely affect front-end operation latency

    MB-47267

    Summary: Vbucket stats call to KV can timeout during delta node recovery preparation

    MB-48713

    Summary: rev ids going backwards - non-sync-write delete

    Query Service

    Issue Description

    MB-46876

    Summary: AT_PLUS queries with collections are not working

    Index Service

    Issue Description

    MB-46725

    Summary: Rebalance button not enabled post Quorum Loss failover even when indexing has partitioned indexes

    MB-46350

    Summary: UI shows 104k mutations remaining when creating indexes on empty bucket

    MB-47047

    Summary: Internal Server error is raised while performing backup on a index node using cbbackupmgr

    MB-47631

    Summary: num_rollbacks_to_zero stats not changing for the rollback to zero

    MB-47635

    Summary: Optimise cluster info cache access in metadata_provider and request_handler

    MB-47684

    Summary: num_rollbacks_to_zero stats not changing for the rollback to zero

    MB-47760

    Summary: Panic caused by extraneous unlocking

    MB-47878

    Summary: Increase polling interval in pollForDeletedBuckets in projector

    MB-48336

    Summary: Rollback stats will now be persisted in case of indexer crash

    Search Service

    Eventing Service

    Issue Description

    MB-46351

    Summary: dcp_stream_boundary remains as "from_prior" after upgrade

    MB-46647

    Summary: default value for language_compatibility should be 6.6.2 instead 6.5.0

    MB-47867

    Summary: Always emit the first exception to the application log then summarize

    MB-48103

    Summary: handler stuck in deploying state

    MB-48104

    Summary: Connection::isPacketAvailable(): Invalid packet header detected. Cookies: []

    MB-48118

    Summary: Performance: crash dump generated

    MB-48195

    Summary: REST calls fail after changing encryption level to "all"

    MB-48337

    Summary: Mix Mode: No error when we add new function

    MB-48487

    Summary: panic observed in debugger tests

    MB-48488

    Summary: Resume time increased by 34%

    MB-48572

    Summary: Service 'eventing' exited with status 2.

    Cross Data Center Replication (XDCR)

    Issue Description

    MB-47157

    Summary: XDCR - make health_check_interval configurable

    MB-47246

    Summary: Switch to new javascript evaluator

    MB-47521

    Summary: XDCR - collect remote clusters and replication info as part of cbcollect

    MB-47777

    Summary: XDCR - backfill_request_handler could hang forever

    MB-47778

    Summary: XDCR - backfill replication spec reloading could misload spec from wrong data

    MB-47779

    Summary: XDCR - backfill req handler may not get correct throughSeqnos if pipeline is paused

    MB-47900

    Summary: XDCR - throughSeqnoTracker bg scanner may run for a long time

    MB-48105

    Summary: unknown remote cluster

    MB-48016

    Summary: XDCR with full encryption may fail, with the message certificate relies on legacy Common Name field, use SANs or temporarily enable Common Name matching with GODEBUG=x509ignoreCN=0, statusCode=0.

    MB-48211

    Summary: XDCR - File descriptor leak in XDCR

    Tools, Web Console (UI), and REST API

    Issue Description

    MB-47001

    Summary: Add Charts to Query Workbench

    MB-48081

    Summary: cbbackupmgr start and end validations is a bit too aggressive

    Install and Upgrade

    Issue Description

    MB-47806

    Summary: 7.0 Windows installer always rollbacks during install

    MB-48783

    Summary: Offline upgrade from 7.0.0 or 7.0.1 on Debian and Ubuntu package install corrupts config files

    Storage

    Issue Description

    MB-46490

    Summary: More memory overhead for non-collection index

    MB-47205

    Summary: closeForRecovery does not release gCtx

    MB-47355

    Summary: Compact parent page after page-split

    MB-47354

    Summary: compact when marshalling full page over purge ratio

    MB-47429

    Summary: Detect missing log file segment during initialization

    MB-47503

    Summary: Recovered instances do not compact

    MB-47986

    Summary: Log specific index stats at regular interval

    MB-47990

    Summary: lss_rea_bytes and bytes_written do not always match perf html report

    MB-47992

    Summary: Plasma Stats Compact Counter not updated on CompactFullMarshal

    MB-48356

    Summary: MVCCPurger may stop running if doProceed check fails

    MB-47987

    Summary: instMap in StatsLogger.run() should not be indexed by PlasmaId

    Views

    Issue Description

    MB-47094

    Summary: Slow processing of audit messages might lead to increase in RSS memory

    Release 7.0.1 (September 2021)

    Couchbase Server 7.0.1 was released in September 2021. This maintenance release contains bug fixes.

    Fixed Issues

    This section highlights the notable issues fixed in this release.

    Operator

    Issue Description

    MB-47678

    Summary: Fixed an error encountered when running Flex index queries on a setup that used alternate addresses.

    Prometheus

    Issue Description

    MB-47502

    Summary: Fixed a memory leak in Prometheus.

    Search Service

    Issue Description

    MB-47457

    Summary: Fixed the Search Service’s incorrect use of the node’s alternate address.

    Cluster Manager

    Issue Description

    MB-47087

    Summary: Fixed the failure of rebalance out following multi-node graceful failover.

    Release 7.0.0 (July 2021)

    Couchbase Server 7.0 was released in July 2021.

    Major Changes in Behavior from Previous Releases

    • With the introduction of scopes and collections, Couchbase Server stores documents in a collection, which are contained in a scope, which is in a bucket. A default scope and default collection is used when a named scope and collection is not available or has not yet been created. When you upgrade to version 7.0 from a previous version, your documents and indexes will be available in the default scope and default collection. The migration guide provides information on how to migrate your data from a previous version of Couchbase to take advantage of named scopes and collections.

      • Global secondary indexes need to be created for each collection.

    • Added support for out-of-order execution of operations in Data Service.

      When a Data Service request cannot be completed immediately, this enhancement enables looking ahead in the connection’s queue and starting work on the next request. Out-of-order execution behavior is enabled by default and you can choose to disable it. See Java SDK documentation for further information.

    • Global secondary indexes now supports concurrent creation of indexes.

    • The Internet Engineering Task Force (IETF) have formally deprecated both the TLS 1.0 and 1.1 protocols along with a wider industry movement to use newer, more secure standards. Keeping in line with these changes, we strongly recommend that clients which use TLS encryption use TLS 1.2 or higher, and have updated the default minimum TLS version for all Couchbase Server 7.0 clusters to TLS 1.2. Currently supported SDKs already support the TLS 1.2 standard, so in most cases no application changes are required.

      If you do need to configure the minimum TLS to a lower version (not recommended), follow the instructions provided in https://docs.couchbase.com/server/current/manage/manage-security/manage-tls.html#set-the-minimum-tls-version.

    • Updated license for Community Edition

      Couchbase Server comes in two editions: Enterprise Edition and Community Edition. You can find details on the differences between the two and licensing information on the Couchbase Server Editions page.

      • Enterprise Edition — The Enterprise Edition license provides for free for development and testing for Couchbase Enterprise Edition. A paid subscription for production deployment is required. Please refer to the pricing page for details on Couchbase’s Enterprise Edition.

      • Community Edition — The Community Edition license provides for free deployment of Couchbase Community Edition for departmental-scale deployments of up to five node clusters. It has recently been changed to disallow use of XDCR, which is now an exclusive Enterprise Edition feature.

    New Supported Platforms

    This release adds support for the following platforms:

    • macOS Big Sur for development only

    See Supported Platforms for the complete list of supported platforms.

    Deprecated Features and Platforms

    Deprecated and Removed Platforms

    The following platforms are deprecated and will be removed in a future release:

    • CentOS 8

    • macOS 10.14 (Mojave)

    • Microsoft Windows Server 2016

    The following platforms are removed and no longer available:

    • Ubuntu 16.04 LTS

    Deprecated and Removed Features

    • The tree view has been removed from the Query Workbench.

    • The 'cbdocloader' tool used to load sample datasets is deprecated in this release. You can use the 'cbimport' tool with the '--format sample' flag as the 'cbimport' tool provides an equivalent feature set and is collection-aware.

    • The MOSS index type, available in the full-text search service, is deprecated in this release.

    • Support for passwordless buckets,typically buckets from previously upgraded clusters (pre-5.x), is deprecated.

    • The old bucket sasl_password is deprecated in this release.

    • The search_query() function is deprecated. We recommend that you use Search() functions instead to run full text search queries directly within a N1QL query. Refer to https://blog.couchbase.com/n1ql-and-search-how-to-leverage-fts-index-in-n1ql-query/ for information on changing the syntax to leverage the Search() function.

    • Views are deprecated in Couchbase Server 7.0+.

      Views support in Couchbase Server will be removed in a future release only when the core functionality of the View engine is covered by other services. Views will continue to work in all buckets but only in the default scope and default collection.

      There is no current impact to the View engine, Views REST API, or any direct MapReduce View implementations as described in View and Query Examples, where you can still create Views from the Query Workbench.

    • View indexes in N1QL have been removed in this release.

      Starting from this release, you can no longer use CREATE INDEX USING VIEW in N1QL. Note that this change only disallows the ability to create indexes using views.

    • The Data-Service histogram 'batch_read' has been removed. Use the existing 'bg_load' histogram instead to monitor background fetch durations.

    Known Issues

    This section highlights some of the known issues in this release.

    Analytics Service

    Issue Description

    MB-46646

    Summary: Quorum failover on a remote cluster requires manual intervention. Not performing these manual steps causes the results to vary based on which nodes the Analytics service is talking to, and the state of those nodes.

    Workaround: Following a quorum failover on a remote cluster, perform the following manual steps:

    1. Run DISCONNECT LINK if the remote link is still connected.

    2. Run ALTER LINK to update the link to point to a surviving node. This step is needed even if the previously specified host is still in the cluster as it resets the topology maintained in the metadata.

    3. Run CONNECT LINK to reconnect the link.

    MB-45996

    Summary: The Analytics service may run out of heap space when ingesting maximum size documents (20MB) with minimally-sized Analytics memory quota as some memory that is consumed during ingestion is not released until the link is disconnected.

    Workaround: Use smaller documents, increase the Analytics service memory quota, or disconnect the link before running queries to avoid this issue.

    MB-44849

    Summary: A Remote Collection that gets disconnected due to the loss of permissions is not reconnected if the permissions are re-established.

    Workaround: Re-establish the connection by running CONNECT LINK manually.

    Data Service

    Issue Description

    MB-47267

    Summary: Clusters with a large number of high capacity persistent buckets, delta node recovery may timeout, due to large persistent bucket’s warmup tasks being scheduled before the initial tasks of warmup for other buckets.

    Workaround: Increase the number of reader threads to reduce the likelihood of smaller bucket’s warmup tasks being delayed from running.

    MB-38978

    Summary: Under certain circumstances, such as running a cbcollect_info, requests may take longer than normal. Depending on the system workload and size, this may be even a few seconds, which can trigger the default timeout value from SDKs.

    Workaround: We recommend that you avoid gathering these stats or cbcollect_info during higher workload.

    Eventing Service

    Issue Description

    MB-45973

    Summary: After upgrading a cluster with a single Data node from version 6.6 to 7.0, Eventing timers are not triggered as expected after a swap rebalance to version 7.0. Note that this does not impact clusters with 2 or more data nodes, or when there are no deployed or paused Eventing Functions with timers.

    Workaround: Undeploy all Eventing Functions that use timers, or add a second Data node before upgrading to version 7.0 (which can be subsequently be removed after the upgrade is complete).

    MB-45785

    Summary: A race condition exists where an Eventing Function with a Feed Boundary set to "From now" sometimes ignores it’s checkpoint and resumes processing form Everything. This issue only impacts the UI and can occur when a user rapidly invokes pause, edit, or resume in succession.

    Workaround: The issue can be avoided by using the REST APIs to pause and resume Eventing Functions in production.

    Index Service

    Issue Description

    MB-46725

    Summary: In the case of an unsafe failover that removes one or more index nodes from the cluster, the Rebalance button on the UI may not be enabled even though some indexes or index partitions are not available because the remaining index node(s) did not have any of their replicas.

    Workaround: Issue a rebalance command via CLI couchbase-cli rebalance -c 127.0.0.1:8091 -u Administrator -p xxxxxx

    Install and Deploy

    Issue Description

    MB-47806

    Summary: When installing Couchbase Server on Windows, you must be logged into an account with Administrator privileges.

    For Couchbase Server 7.0.1 and earlier versions, if you are logged in to an account other than the built-in Administrator account, an error is thrown during installation if you attempt to install into a directory under C:\Program Files. You must change the installation directory to something under your user’s home directory.

    If you must install into C:\Program Files, and cannot log in to the built-in Administrator account (this account is disabled by default on Windows 10), the workaround is to take the following steps:

    1. Click the Start button and type cmd.

    2. Right-click on Command Prompt and select Run as administrator.

    3. At the command prompt, cd into the directory with the downloaded .msi and type call couchbase-server-enterprise_7.0.0-windows_amd64.msi.

    Query Service

    Issue Description

    MB-46876

    Summary: AT_PLUS queries do not work with collections when using scan_vectors.

    Views

    Issue Description

    MB-47094

    Summary: When request auditing is enabled in a Couchbase cluster, under very high Views query workload, the view-engine audit message queue may grow unbounded causing the view-engine to crash.

    Workaround: Disable auditing when Views are present in the cluster.

    Fixed Issues

    The Couchbase JIRA filter Couchbase Server 7.0.0 Notable Fixed Issues lists the notable issues fixed in this release. Note that you need to log in to Couchbase JIRA to be able to view the results of this JIRA filter.

    Common Vulnerabilities and Exposures

    This section lists common vulnerabilities and exposures that are fixed in this release.

    See Couchbase Alerts for the complete list of common vulnerabilities and exposures.