Skip to content

Releases: gatewayd-io/gatewayd-plugin-cache

v0.1.4

v0.1.4 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 23 Mar 23:34
a658707

Since the query parsing functions can be reused in other plugins, I moved it to the SDK.

What's Changed

Full Changelog: v0.1.3...v0.1.4

v0.1.3

v0.1.3 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 23 Mar 22:14
e684a3d

This release contains two fixes:

  1. The errors are now returned back to the calling function, thus not swallowed.
  2. The Redis KEYS command is refactored and replaced with the SCAN command to prevent server hiccups on too many keys.

What's Changed

Full Changelog: v0.1.2...v0.1.3

v0.1.2

v0.1.2 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 22 Mar 23:43
3c527fe

This release completes supports for different type of statements that can be detected by the cache plugin to invalidate the cached data. And here is the list of supported statement, as of this release:

  • DML: SELECT, INSERT, UPDATE and DELETE
  • Multi-statements: UNION, INTERSECT and EXCEPT
  • DDL: TRUNCATE, DROP and ALTER
  • WITH clause
  • Multiple queries (delimited by semicolon)

What's Changed

Full Changelog: v0.1.1...v0.1.2

v0.1.1

v0.1.1 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 22 Mar 21:31
5dc7356

In this release I removed gocache and completely replaced it with go-redis.

What's Changed

Full Changelog: v0.1.0...v0.1.1

v0.1.0

v0.1.0 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 21 Mar 21:58
04e77dc

What's Changed

Full Changelog: v0.0.16...v0.1.0

v0.0.16

Choose a tag to compare

@github-actions github-actions released this 19 Mar 22:24

This is the first release of the series to come for the gatewayd-plugin-cache. It also marks the end of the v0.0.x milestone and contains most of the basic functionality proposed in the 001 - Cache proposal. This release contains these features:

  1. Basic caching functionality for detecting SQL SELECT clause in the request and caching the response returned by the database server (PostgreSQL). #1
  2. Support for configuring TTL for cached keys. #2
  3. Detection of simple and nested SQL DMLs, inserts, updates and deletes, to invalidate the cache, while supporting WITH, JOIN, UNION, INTERSECT and EXCEPT. #3
  4. Periodic cache invalidation for invalidating stale client keys. #4
  5. Support for multiple databases on a single database server, with the ability to detect which clients are connected to which server and database by reading the startup message. #9 #27
  6. Fallback to single server single database when the startup message cannot be decoded. #12
  7. Ability to configure Redis with Redis URL: redis://user:pass@server/0. #13
  8. Add tests and the test and release workflow. #20 #21 #22
  9. More efficient cache invalidation. #30

Currently the plugin is only released for Linux on amd64 and arm64 architectures, and macOS will be added later (#39).

I'd be happy to have your feedback and contributions. And please report issues if you find any.

Full Changelog: v0.0.15...v0.0.16