Skip to content
This repository was archived by the owner on Apr 6, 2019. It is now read-only.

Conversation

@Cylix
Copy link
Owner

@Cylix Cylix commented Sep 20, 2017

Tag

4.0.0.

Date

September 20th, 2017

Changes

  • ZADD score param changed from map to multimap to allow multiple elements with same score
  • connection_callback (replacement of disconnection_callback). Called for any steps of connection process (attempt, success, failure, reconnection, drop, ...)

Additions

  • Sentinel support
  • Automatic reconnection if requested
  • Connection timeout
  • Ability to set number of io workers if you are working with tacopie
  • redis_client renamed into client
  • redis_subscriber renamed into subscriber
  • commands that failed to be sent (client not connected or disconnected) get their callback called with an error reply connection failure. This ensure that now all callbacks are always called
  • if reconnection process is enabled and succeed, failed commands are resent
  • if you send command and commit while client is not connected, it will now dismiss the commands and call their callback with an error, or resend them if reconnection is enabled. This is a change compared to the existing behavior that simply kept the commands in the buffer.
  • doxygen documentation

Removals

  • future_client: all functions have been merge into the redis_client
  • disconnection_callback: it is now replaced by the connection callback

This is a major release with lots of breaking changes.
It aims to enable high availability configuration as well as improved consistency with an enhanced design.

If you are upgrading please consider the following breaking changes:

  • redis_client is now client and redis_subscriber is now subscriber
  • future_client has been removed, but it is actually merged into client. Simply switch from future_client to client and you will have the same behavior
  • disconnection_callback has been removed and replaced by a connection_callback. If you are looking for exact same behavior, you will have to check if the state param is equal to dropped.
  • commands callbacks are always called. In case of failure, an error reply is passed in.

Any other changes should not be breaking changes but you might be interested into the added features.

* Added sentiel and high availability(HA) versions of client and subscriber which will handle connect/reconnection automatically to redis server.

* Merged changes

* clang format

* bump tacopie

* unix compilation. will need some time to code review and port windows changes to unix.

* clean unecessary changes. merge future_client into redis_client to make interface cleaner. rename redis_ prefix to classes

* merge ha_client into client, refactore architecture.

* merge ha_subscriber into subscriber

* try_commit instead of commit in disconnection flow

* doxygen

* tacopie link & documentation & compilation fix

* fix reconnection process

* fix unit tests

* clean code sentinel & make it consistent (avoid regression for example with callbacks execution)

* ability to change number of io service workers at runtime

* ha redis client example

* doxygen doc

* switch ZADD score param from map to multimap #107

* update CHANGELOG.md for 4.0.0 release

* bump tacopie
@Cylix Cylix merged commit b5fd9b8 into master Sep 21, 2017
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants