Skip to content

Commit

Permalink
Update CHANGELOG & Migration Guide to reflect 7.0.1 release (#793)
Browse files Browse the repository at this point in the history
  • Loading branch information
Ivan Rabotyaga authored May 3, 2021
1 parent 2d10b3e commit e19ad16
Show file tree
Hide file tree
Showing 2 changed files with 12 additions and 0 deletions.
7 changes: 7 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,13 @@

### Bugs Fixed

## 7.0.1 (2021-05-03)

### Changes

* [#792](https://github.com/toptal/chewy/pull/792): Skip ES version memoization for search requests ([@rabotyaga][])
* See the Migration Guide for details

## 7.2.0 (2021-04-19)

### New Features
Expand Down
5 changes: 5 additions & 0 deletions migration_guide.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,11 @@ In order to upgrade Chewy 6/Elasticsearch 6 to Chewy 7/Elasticsearch 7 in the mo
* Run your test suite on Chewy 7.0 / Elasticsearch 7
* Run manual tests on Chewy 7.0 / Elasticsearch 7
* Upgrade to Chewy 7.0
* The “total hits” counter is an integer for ES versions < 7 and an object (hash) for the versions starting from 7.0.0. Elasticsearch added a special option, `rest_total_hits_as_int`, to ease the upgrade, that could be appended to any request and results in the old “total hits” format. Unfortunately, this option is not recognized by ES versions prior to 7.0.0, which means that we have to check the version to decide if we need this option.
Normally Chewy does memoization of the current ES version, but this might be inappropriate for the upgrade, as the version changes live.
To handle that we have 2 versions of Chewy for this stage of the upgrade: 7.0.0 and 7.0.1. Version 7.0.0 does the memoization and version 7.0.1 requests the current version on every search request.
* You can use the 7.0.0 version if it's fine for you to have an application restart immediately after ES cluster upgrade.
* If you're using the 7.0.1 version you might be interested in keeping the timeframe between this step and updating to Chewy 7.1 as small as possible, as version 7.0.1 skips ES version memoization for search requests to help dynamically detect ES version. This leads to an extra version request on each search request, i.e. could affect the overall performance/latency of the search and a load of ES cluster.
* Perform a [rolling upgrade](https://www.elastic.co/guide/en/elasticsearch/reference//rolling-upgrades.html) of Elasticsearch
* Run your test suite on Chewy 7.1 / Elasticsearch 7
* Run manual tests on Chewy 7.1 / Elasticsearch 7
Expand Down

0 comments on commit e19ad16

Please sign in to comment.