Skip to content

Releases: elastic/curator

3.4.1 (10 February 2016)

10 Feb 22:08
Compare
Choose a tag to compare

General

  • Update license copyright to 2016
  • Use slim python version with Docker #527 (xaka)
  • Changed --master-only exit code to 0 when connected to non-master node #540 (wkruse)
  • Add cx_Freeze capability to setup.py, plus a binary_release.py
    script to simplify binary package creation. #554 (untergeek)
  • Set Elastic as author. #555 (untergeek)
  • Put repository creation methods into API and document them. Requested in #550 (untergeek)

Bug fixes

  • Fix sphinx documentation build error #506 (hydrapolic)
  • Ensure snapshots are found before iterating #507 (garyelephant)
  • Fix a doc inconsistency #509 (pmoust)
  • Fix a typo in show documentation #513 (pbamba)
  • Default to trying the cluster state for checking whether indices are closed, and
    then fall back to using the _cat API (for Amazon ES instances). #519 (untergeek)
  • Improve logging to show time delay between optimize runs, if selected. #525 (untergeek)
  • Allow elasticsearch-py module versions through 2.3.0 (a presumption at this point) #524 (untergeek)
  • Improve logging in snapshot api method to reveal when a repository appears to be
    missing. Reported in #551 (untergeek)
  • Test that --timestring has the correct variable for --time-unit.
    Reported in #544 (untergeek)
  • Allocation will exit with exit_code 0 now when there are no indices to work on.
    Reported in #531 (untergeek)

3.4.0 (28 October 2015)

28 Oct 15:30
Compare
Choose a tag to compare

General

  • API change in elasticsearch-py 1.7.0 prevented alias operations. Fixed in
    #486 (HonzaKral)
  • During index selection you can now select only closed indices with --closed-only.
    Does not impact --all-indices Reported in #476. Fixed in #487 (Basster)
  • API Changes in Elasticsearch 2.0.0 required some refactoring. All tests pass
    for ES versions 1.0.3 through 2.0.0-rc1. Fixed in #488 (untergeek)
  • es_repo_mgr now has access to the same SSL options from #462. #489 (untergeek)
  • Logging improvements requested in #475. (untergeek)
  • Added --quiet flag. #494 (untergeek)
  • Fixed index_closed to work with AWS Elasticsearch. #499 (univerio)
  • Acceptable versions of Elasticsearch-py module are 1.8.0 up to 2.1.0 (untergeek)

3.4.0.rc1 (23 October 2015)

23 Oct 19:08
Compare
Choose a tag to compare
Pre-release

Announcement

This release supports Elasticsearch 2.0. The CI Jenkins build tests with 2.0 are currently not working because of Jenkins issues rather than Curator code. All tests pass with python 2.7 and 3.4 with my hardware.

General

  • API change in elasticsearch-py 1.7.0 prevented alias operations. Fixed in
    #486 (HonzaKral)
  • During index selection you can now select only closed indices with --closed-only.
    Does not impact --all-indices Reported in #476. Fixed in #487 (Basster)
  • API Changes in Elasticsearch 2.0.0 required some refactoring. All tests pass
    for ES versions 1.0.3 through 2.0.0-rc1. Fixed in #488 (untergeek)
  • es_repo_mgr now has access to the same SSL options from #462. #489 (untergeek)
  • Logging improvements requested in #475. (untergeek)
  • Added --quiet flag. #494 (untergeek)
  • Fixed index_closed to work with AWS Elasticsearch. #499 (univerio)

3.3.0 (31 August 2015)

31 Aug 21:15
Compare
Choose a tag to compare

New Features

  • Allocation type can now also be include or exclude, in addition to the
    the existing default require type. Add --type to the allocation command
    to specify the type. #443 (steffo)
  • Add SSL features, --ssl-no-validate and certificate to provide other
    ways to validate SSL connections to Elasticsearch. #436 (untergeek)

General

  • Bump elasticsearch python module dependency to 1.6.0+ to enable synced_flush
    API call. Reported in #447 (untergeek)

Bug fixes

  • Delete by space was only reporting space used by primary shards. Fixed to
    show all space consumed. Reported in #455 (untergeek)
  • Update exit codes and messages for snapshot selection. Reported in #452 (untergeek)
  • Fix potential int/float casting issues. Reported in #465 (untergeek)

Testing

  • Curator is tested in Jenkins. Each commit to the master branch is tested with both Python versions 2.7.6 and 3.4.0 against each of the following Elasticsearch versions:
    • 1.7_nightly
    • 1.6_nightly
    • 1.7.0
    • 1.6.1
    • 1.5.1
    • 1.4.4
    • 1.3.9
    • 1.2.4
    • 1.1.2
    • 1.0.3
  • Jenkins was testing with Python 2.6.3 and 3.2.1. Those Python versions were buggy, so they've been updated to the aforementioned 2.7.6 and 3.4.0. If you are using a Python version different from either of these, your results may vary.

3.2.3 (16 July 2015)

17 Jul 00:10
Compare
Choose a tag to compare

Bug fix

  • In order to address customer and community issues with bulk deletes, the
    master_timeout is now invoked for delete operations. This should address
    503s with 30s timeouts in the debug log, even when --timeout is set to
    a much higher value. The master_timeout is tied to the --timeout
    flag value, but will not exceed 300 seconds. #420 (untergeek)

General

  • Mixing it up a bit here by putting General second! The only other changes
    are that logging has been improved for deletes so you won't need to have the
    --debug flag to see if you have error codes >= 400, and some code
    documentation improvements.

3.2.2 (13 July 2015)

13 Jul 17:56
Compare
Choose a tag to compare

General

  • This is a very minor change. The mock library recently removed support
    for Python 2.6. As many Curator users are using RHEL/CentOS 6, which is
    pinned to Python 2.6, this requires the mock version referenced by Curator
    to also be pinned to a supported version (mock==1.0.1).

Also note that build failures were related to this. Mock 1.1.0 and 1.1.1 depend on pbr, which was at 1.2.0 when Curator 3.2.1 was released. The pbr module has since been upgraded to 1.3.0, which likely fixed the errors. Since we've pinned mock, this is moot, however.

3.2.1 (10 July 2015)

10 Jul 20:38
Compare
Choose a tag to compare

This is a lightweight patch release.

General

  • Added delete verification & retry (fixed at 3x) to potentially cover an edge
    case in #420 (untergeek)
  • Since GitHub allows rST (reStructuredText) README documents, and that's what
    PyPI wants also, the README has been rebuilt in rST. (untergeek)

Bug fixes

  • If closing indices with ES 1.6+, and all indices are closed, ensure that the
    seal command does not try to seal all indices. Reported in #426 (untergeek)
  • Capture AttributeError when sealing indices if a non-TransportError occurs.
    Reported in #429 (untergeek)

3.2.0 (25 June 2015)

25 Jun 22:17
Compare
Choose a tag to compare

3.2.0 (25 June 2015)

New!

  • Added support to manually seal, or perform a synced flush
    on indices with the seal command. #394 (untergeek)
  • Added experimental support for SSL certificate validation. In order for
    this to work, you must install the certifi python module:
    pip install certifi
    This feature should automatically work if the certifi module is
    installed. Please report any issues.

General

  • Changed logging to go to stdout rather than stderr. Reopened #121 and
    figured they were right. This is better. (untergeek)
  • Exit code 99 was unpopular. It has been removed. Reported in #371 and #391
    (untergeek)
  • Add --skip-repo-validation flag for snapshots. Do not validate write
    access to repository on all cluster nodes before proceeding. Useful for
    shared filesystems where intermittent timeouts can affect validation, but
    won't likely affect snapshot success. Requested in #396 (untergeek)
  • An alias no longer needs to be pre-existent in order to use the alias
    command. #317 (untergeek)
  • es_repo_mgr now passes through upstream errors in the event a repository
    fails to be created. Requested in #405 (untergeek)

Bug fixes

  • In rare cases, * wildcard would not expand. Replaced with _all.
    Reported in #399 (untergeek)
  • Beginning with Elasticsearch 1.6, closed indices cannot have their replica
    count altered. Attempting to do so results in this error:
    org.elasticsearch.ElasticsearchIllegalArgumentException: Can't update [index.number_of_replicas] on closed indices [[test_index]] - can leave index in an unopenable state
    As a result, the change_replicas method has been updated to prune closed
    indices. This change will apply to all versions of Elasticsearch.
    Reported in #400 (untergeek)
  • Fixed es_repo_mgr repository creation verification error. Reported in #389
    (untergeek)

3.1.0 (21 May 2015)

21 May 19:30
Compare
Choose a tag to compare

Announcement

This is a minor version release with a few new features and some bug fixes.

  • Test count: 255
  • Code coverage: 99%

General

  • If wait_for_completion is true, snapshot success is now tested and logged.
    Reported in #253 (untergeek)
  • Log & return false if a snapshot is already in progress (untergeek)
  • Logs individual deletes per index, even though they happen in batch mode.
    Also log individual snapshot deletions. Reported in #372 (untergeek)
  • Moved chunk_index_list from cli to api utils as it's now also used by filter.py
  • Added a warning and 10 second timer countdown if you use --timestring to filter
    indices, but do not use --older-than or --newer-than in conjunction with it.
    This is to address #348, which behavior isn't a bug, but prevents accidental
    action against all of your time-series indices. The warning and timer are
    not displayed for show and --dry-run operations.
  • Added tests for es_repo_mgr in #350
  • Doc fixes

Bug fixes

  • delete-by-space needed the same fix used for #245. Fixed in #353 (untergeek)
  • Increase default client timeout for es_repo_mgr as node discovery and
    availability checks for S3 repositories can take a bit. Fixed in #352 (untergeek)
  • If an index is closed, indicate in show and --dry-run output.
    Reported in #327. (untergeek)
  • Fix issue where CLI parameters were not being passed to the es_repo_mgr
    create sub-command.
    Reported in #337. (feltnerm)

3.0.3 (27 Mar 2015)

27 Mar 16:57
Compare
Choose a tag to compare

Announcement

This is a bug fix release. #319 and #320 are affecting a few users, so this
release is being expedited.

  • Test count: 228
  • Code coverage: 99%

General

  • Documentation for the CLI converted to Asciidoc and moved to
    http://www.elastic.co/guide/en/elasticsearch/client/curator/current/index.html
  • Improved logging, and refactored a few methods to help with this.
  • Dry-run output is now more like v2, with the index or snapshot in the log
    line, along with the command. Several tests needed refactoring with this
    change, along with a bit of documentation.

Bug fixes

  • Fix links to repository in setup.py. Reported in #318 (untergeek)
  • No more --delay with optimized indices. Reported in #319 (untergeek)
  • --request_timeout not working as expected. Reinstate the version 2
    timeout override feature to prevent default timeouts for optimize and
    snapshot operations. Reported in #320 (untergeek)
  • Reduce index count to 200 for
    test.integration.test_cli_commands.TestCLISnapshot.test_cli_snapshot_huge_list
    in order to reduce or eliminate Jenkins CI test timeouts.
    Reported in #324 (untergeek)
  • --dry-run no longer calls show, but will show output in the log, as
    in v2. This was a recurring complaint. See #328 (untergeek)