Skip to content

Releases: olric-data/olric

v0.5.0-alpha.3

27 Mar 22:10

Choose a tag to compare

v0.5.0-alpha.3 Pre-release
Pre-release

Here is the third alpha of v0.5.x tree. It includes many improvements including:

  • Initial implementation of cluster events. Now users can observe the cluster state by subscribing to cluster.events channel. Olric sends events in JSON format. Sample from redis-cli:
1) "message"
2) "cluster.events"
3) "{\"timestamp\":1648410047096938000,\"source\":\"127.0.0.1:3320\",\"kind\":\"node-left-event\",\"node_left\":\"127.0.0.1:3321\"}"
1) "message"
2) "cluster.events"
3) "{\"timestamp\":1648410056207893000,\"source\":\"127.0.0.1:3320\",\"kind\":\"node-join-event\",\"node_join\":\"127.0.0.1:3321\"}"
1) "message"
2) "cluster.events"
3) "{\"timestamp\":1648410056107344000,\"source\":\"127.0.0.1:3321\",\"kind\":\"node-join-event\",\"node_join\":\"127.0.0.1:3320\"}"

Available events:

  • node-join-event
  • node-left-event
  • fragment-migration-event
  • fragment-received-event

It's not fully documented yet. See events/cluster_events.go file to get more information about the feature.

Install with the following command:

go get github.com/buraksezer/[email protected]

v0.5.0-alpha.2

20 Mar 10:13

Choose a tag to compare

v0.5.0-alpha.2 Pre-release
Pre-release

Here is the second alpha of v0.5.x tree. It includes many improvements including:

  • Integration tests for many packages, especially protocol.
  • Distribute client requests in a round-robin fashion.

Install with the following command:

go get github.com/buraksezer/[email protected]

v0.5.0-alpha.1

27 Feb 16:45

Choose a tag to compare

v0.5.0-alpha.1 Pre-release
Pre-release

Here is the first alpha of v0.5.x tree. It includes many improvements including:

  • A new version of Olric API is available. Now Olric has a Client interface and two implementations of it: ClusterClient and EmbeddedClient
  • In-house binary protocol was removed. Olric now uses RESP(Redis Protocol) for communication. Any Redis client can be used to access an Olric cluster.
  • Default storage engine is hugely improved. Its compaction behavior is changed. It's now more memory efficient and fast.
  • The old client implementation has been removed. You can use ClusterClient now as a non-member client.
  • olric-cli and olric-benchmark were removed. redis-cli and memtier_benchmark can be used instead of those tools.

The new API can be inconsistent for now. During the next months, those inconsistencies will be fixed gradually.

Install with the following command:

go get github.com/buraksezer/[email protected]

v0.4.3

22 Feb 09:26

Choose a tag to compare

This release includes the following fixes and improvements:

  • Expand acceptable IP addresses to listen on #143
  • Set default value for TCP keepalive (Failed to check the key count on partition #130)
  • fix: kvstore config not load #140

Thank you @d1ngd0 and @ShawnHsiung for your contributions!

v0.4.2

28 Dec 18:16

Choose a tag to compare

This release includes the following fixes and improvements:

  • bug: dead loop while expand kvstore #137

Thank you @ShawnHsiung for providing a PR to fix that problem.

v0.4.1

20 Dec 21:10

Choose a tag to compare

This release includes the following fixes and improvements:

  • Improve error messages in TCP client implementation. #130

v0.4.0

17 Aug 20:52

Choose a tag to compare

What is Olric?

Distributed cache and in-memory key/value data store. It can be used both as an embedded Go library and as a language-independent service.

With Olric, you can instantly create a fast, scalable, shared pool of RAM across a cluster of computers.

Install

Learn how to install Olric and see Sample Code to get started!

Support

Join our Discord server!

Changes

This release includes the following fixes and improvements:

  • Validate the configuration before running an Olric node #68
  • Design an interface for different storage engine implementations #46
  • Move data structure implementations to their own packages #70
  • Add configuration directives for dead member tracker #101
  • fatal error: concurrent map writes #105
  • Potential race condition in fragment creation #99
  • Read repair feature doesn't work properly #97
  • Consistency only works with two members... #92
  • Collect more metrics about the current state of a node #87
  • Data race in various tests #85
  • panic when set replica count and async replica #93
  • unknown field 'Addrs' in struct literal of type client.Config #110
  • Custom logger doesn't work due to usage of c.Logger.SetOutput #117
  • Single member stats for existing metrics collector #82

v0.3.12

15 Aug 08:53

Choose a tag to compare

This release includes the following fixes and improvements:

  • Custom logger doesn't work due to usage of c.Logger.SetOutput #117
  • Expose DMap.name #116

v0.4.0-rc.1

31 Jul 12:11

Choose a tag to compare

v0.4.0-rc.1 Pre-release
Pre-release

This release includes the following fixes and improvements:

  • Improvements in olric-cli and documentation.

v0.3.11

19 Jul 13:25

Choose a tag to compare

This release includes the following fixes and improvements:

  • Update misleading parts of the Golang client configuration.