Release Notes

This section provides a set of Release Notes for successive versions of the Elasticsearch Transport Plug-in, provided by Couchbase. Each set of notes provide details of changes and additions that have been made.

Version Compatibility

The GitHub releases page lists all the plug-in variants. In a given release, the plug-in’s filename is of the form elasticsearch-transport-couchbase-${PLUGIN_VERSION}-alder-es${ES_VERSION}.zip. It is imperative to use the file where ES_VERSION matches your Elasticsearch cluster version. For example, to use the 3.0.0 version of the plug-in with Elasticsearch 5.6.4, you will need to download elasticsearch-transport-couchbase-3.0.0-cypress-es5.6.4.zip.

Elasticsearch Plug-in 3.0.2

Maintenance release for improved compatibility and stability.

Bug Fixes

  • CBES-82: NoClassDefFoundError under Java 9.

  • CBES-83: VersionConflictEngineException in storeUUID if document already exists. (Causes XDCR replication to be removed.)

Elasticsearch Plug-in 3.0.1

The birch development line has been retired. The cypress line now supports all 5.x versions of Elasticsearch.

RegexParentSelector now reads the parent ID format from the correct config property (couchbase.parentSelector.documentTypesParentFormat.<type>). If you previously put the parent ID format in the documentTypeParentFields property as a workaround, please update your configuration.

The connector can now delete child documents and other documents that have custom routing. If you’re using RegexParentSelector then this feature has no additional overhead. Otherwise, for each document whose routing cannot be derived from the document ID, the connector creates a separate signpost document to record the routing. Be aware that child documents created by previous versions of the connector are not eligible for deletion, since they don’t have signposts (you’ll see "missing signpost" warnings in the log when the connector tries to delete those documents).

The signposts have a document type of couchbaseSignpost. The mapping for this type must store the contents of the meta field. This is already the case if you’re using the default mapping template included in the plugin distribution.

Bug Fixes

  • CBES-49: RegexParentSelector reads parent ID format from wrong config property.

  • CBES-50: RoutingMissingException when deleting child documents.

Elasticsearch Plug-in 3.0.0

With this release, the Couchbase plug-in for Elasticsearch moves to a new versioning and branch management strategy that allows for simultaneous releases across ES versions (see Version Compatibility). All the versions are expected to work and are supported. However, versions which have received more testing and are officially supported are:

  • 3.0.0-cypress-es5.6.4

  • 3.0.0-birch-es5.2.2

  • 3.0.0-alder-es2.4.0

Don’t be alarmed by the major version bump; upgrading from version 2.x of the plug-in should be seamless, and is recommended for all users. The code has just been relabeled for easier maintenance.

New Feature

  • Adds the couchbase.pipeline config for specifying the ingestion pipeline.

Enhancements

  • Improves logging for indexing errors.

  • Uses Dropwizard Metrics to collect and log richer stats.

Bug Fixes

  • CBES-48: Connection counter leak could cause spurious TooManyConcurrentConnections errors.

  • #153: ClassCastException error when the TTL is of type Long instead of Integer.

Known issues

The Elasticsearch Plug-in does not support IPv6. So to use the plug-in, the Couchbase Server and Elasticsearch clusters will need to run on instances which are addressable with IPv4.

Elasticsearch Plug-in 2.2

This release note applies to the 2.2 version of the Elasticsearch Transport Plug-in (February 2017). It adds a number of bug fixes. See Installation and Configuration for versioning and compatibility information.

Elasticsearch Plug-in 2.1.1

This release note applies to the 2.1.1 version of the Elasticsearch Transport Plug-in (September 2015). It adds compatibility with newer Elasticsearch versions up to 1.7.x, multiple new features, and quite a few bug fixes, including several that solve issues found in 2.1.0. In particular, this release fixes a long-standing bug with an incorrect concurrent bulk request counter, which could eventually cause the plug-in to stop accepting requests from Couchbase Server altogether.

Some configuration option-names changed.

Elasticsearch plug-in version Couchbase versions Elasticsearch versions

2.1.1

2.5.x - 4.x

1.3.0 - 1.7.x

Elasticsearch Plug-in 2.0

This release note is for the Elasticsearch plug-in release 2.0 GA (October 2014). Elasticsearch plug-in version 2.0 is compatible with:

  • Elasticsearch 1.3.0.

  • Couchbase Server 3.0

  • Couchbase Server 2.5.x (backward compatible)

The new feature(s) available in Elasticsearch Plug-in v2.0:

  • Support more than one document type in Elasticsearch. (MB-12284)

The following are known issues:

  • The att_reason value for non-JSON documents changed from non-JSON mode to invalid_json. If a Couchbase cluster has a lot of deletes, the Elasticsearch log could fill up with a lot of messages. (CBES-31)

Elasticsearch Plug-in 1.3.0

This release note is for the Elasticsearch plug-in release 1.3.0 GA (April 2014). This release is compatible only with Elasticsearch 1.0.1.

This release is compatible with Couchbase Server 2.5.x, and it is backward compatible with earlier 2.x releases.

  • Support for new XDCR checkpoint protocol. (CBES-26)

  • Fixed failure handling due to bounded queue with Elasticsearch 1.x. (CBES-27)

Elasticsearch Plug-in 1.2.0

This release note is for the Elasticsearch plug-in release 1.2.0 GA (October 2013). This release adds compatibility with Elasticsearch 0.90.5.

This release is compatible with Couchbase Server 2.2, and it is backward compatible with earlier 2.x releases.

Elasticsearch Plug-in 1.1.0

This release note is for the Elasticsearch plug-in release 1.1.0 GA (August 2013). This release adds compatibility with Elasticsearch 0.90.2.

Elasticsearch Plug-in 1.0.0

This release note is for the Elasticsearch plug-in release 1.0.0 GA (February 2013). This is the first general availability (GA) release. It contains the following enhancements and bug fixes:

  • Now compatible with version 0.20.2 of Elasticsearch.

  • Now supports document expiration using Elasticsearch TTL.

  • Now supports XDCR conflict resolution to reduce bandwidth usage in some cases.

  • Fixed Couchbase index template to allow searching on the document metadata.

  • Fixed data corruption under high load. (CBES-11)

  • Fixed recognition of non-JSON documents. (CBES-11)

  • Improved log information when indexing stub documents.

Elasticsearch Plug-in 1.0.0 Beta

This is the beta release of the Couchbase plug-in for Elasticsearch 1.0.0 Beta (February 2013).