Skip to content

Releases: gatewayd-io/gatewayd-plugin-cache

v0.2.3

02 Sep 20:03
1cccc46

Choose a tag to compare

What's Changed

  • Implement the new JSON binary protocol by @mostafa in #60

Full Changelog: v0.2.2...v0.2.3

v0.2.2

03 Aug 18:11
ec08243

Choose a tag to compare

What's Changed

Full Changelog: v0.2.1...v0.2.2

v0.2.1

08 Jul 21:47
3dc35a6

Choose a tag to compare

What's Changed

Full Changelog: v0.2.0...v0.2.1

v0.2.0

25 May 21:32
4694193

Choose a tag to compare

In this PR, a new environment variable is introduced that control whether to exit on startup error or not. The errors that might cause the plugin to exit are:

  1. The Redis URL cannot be parsed.
  2. Redis cannot be pinged.

What's Changed

  • Add option whether to exit on startup error or not by @mostafa in #55

Full Changelog: v0.1.8...v0.2.0

v0.1.8

23 May 19:46
09940b4

Choose a tag to compare

This PR adds a few changes to the v0.1.x milestone, update dependencies and fix a bug in returning termination response.

Full Changelog: v0.1.7...v0.1.8

v0.1.7

25 Mar 00:45
b12dddd

Choose a tag to compare

This release officially marks the end of v0.1.x milestone. The focus of this milestone was on stability and reliability, which is greatly achieved with the changes and fixes throughout. The changes and fixes are as follows:

  1. Lint code with golangci-lint, as a task in the test workflow in GitHub Actions. #34
  2. Completely remove gocache and replace it with go-redis. #17
  3. Detect (almost) all changes to DB for invalidating cached keys: #19
    • DML: SELECT, INSERT, UPDATE and DELETE
    • Multi-statements: UNION, INTERSECT and EXCEPT
    • DDL: TRUNCATE, DROP and ALTER
    • WITH clause
    • Multiple queries (delimited by semicolon)
  4. Error propagation to the calling function. #40
  5. Replace instances of Redis KEYS command with SCAN command to prevent blocking calls. #30
  6. Move PostgreSQL query parsing to the SDK. #41 #8
  7. Add new Prometheus counter metrics for Redis commands and counting RPC method calls:
    • cache_scans_total: total number of cache scans.
    • cache_scan_keys_total: total number of cache scan keys.
    • get_plugin_config_total: total number of calls to the getPluginConfig method.
    • on_closed_total: total number of calls to the onClosed method.
    • on_traffic_from_client_total: total number of calls to the onTrafficFromClient method.
    • on_traffic_from_server_total: total number of calls to the onTrafficFromServer method.
  8. Fix ignore list of query types to prevent all SQL queries from invalidating cache. 08c6d19

What's Changed

Full Changelog: v0.1.6...v0.1.7

v0.1.6

24 Mar 22:13

Choose a tag to compare

v0.1.6 Pre-release
Pre-release

This release contains a single commit that fixes ignore list of SQL statement before invalidation.

Full Changelog: v0.1.5...v0.1.6

v0.1.5

24 Mar 18:59
9b4a570

Choose a tag to compare

v0.1.5 Pre-release
Pre-release

This release contains two new Prometheus metrics for total number of Redis scans: cache_scans_total, and the total number of keys scanned: cache_scan_keys_total.

What's Changed

Full Changelog: v0.1.4...v0.1.5

v0.1.4

23 Mar 23:34
a658707

Choose a tag to compare

v0.1.4 Pre-release
Pre-release

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

23 Mar 22:14
e684a3d

Choose a tag to compare

v0.1.3 Pre-release
Pre-release

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