Releases: RedisGears/RedisGears
2.0-M14 (v2.0.13)
This is the thirteenth milestone release of RedisGears 2.0: Triggers and Functions.
The API is not yet final and might change based on feedback.
Any feedback is highly appreciated.
Details (since 2.0-M12)
Improvements
- Update v8 version to 11.7.439.17.
Notes
- The version inside Redis will be 2.0.13 in semantic versioning. Since the version of a module in Redis is numeric, we could not add a Milestone flag.
- Minimal Redis version: 7.2-RC3
2.0-M13 (v2.0.12)
This is the twelfth milestone release of RedisGears 2.0: Triggers and Functions.
The API is not yet final and might change based on feedback.
Any feedback is highly appreciated.
Details (since 2.0-M12)
Bugfixes
- #1023 Add TCONFIG_GET and redisgears_2.FORCESHARDSCONNECTION to exclude commands.
- #1008 and #1020 Fix when the data is read when a StreamTrigger is fired.
- #1010 Apply loading timeout on AOF and replication stream.
Improvements
- Minor patch update for the V8 JavaScript engine.
Notes
- The version inside Redis will be 2.0.12 in semantic versioning. Since the version of a module in Redis is numeric, we could not add a Milestone flag.
- Minimal Redis version: 7.2-RC3
2.0-M12 (v2.0.11)
This is the eleventh milestone release of RedisGears 2.0: Triggers and Functions.
The API is not yet final and might change based on feedback. Any feedback is highly appreciated.
Details (since 2.0-M11)
Bugfixes
#1003 Fix build issues for different versions.
Notes
- The version inside Redis will be 2.0.10 in semantic versioning. Since the version of a module in Redis is numeric, we could not add a Milestone flag.
- Minimal Redis version: 7.2-RC3
2.0-M11 (v2.0.10)
This is the tenth milestone release of RedisGears 2.0: Triggers and Functions.
The API is not yet final and might change based on feedback. Any feedback is highly appreciated.
Details (since 2.0-M10)
Features
- #994 Include Triggers and Functions information with the
INFO
command.
Bugfixes
- #1001 Fix the replication order when a stream is trimmed in the StreamTrigger.
Notes
- The version inside Redis will be 2.0.10 in semantic versioning. Since the version of a module in Redis is numeric, we could not add a Milestone flag.
- Minimal Redis version: 7.2-RC3
2.0-M10 (v2.0.9)
This is the ninth milestone release of RedisGears 2.0: Triggers and Functions.
The API is not yet final and might change based on feedback. Any feedback is highly appreciated.
Details (since 2.0-M08)
Features
- #989 Support for avoid replication traffic. An async function will not be able to lock Redis and the processing of stream records will be stopped when Redis requests to avoid replication traffic.
- #998 Disable WebAssembly support by default in the V8 engine.
Bugfixes
- #984 Ensure a full crash report is available on panic in the V8 engine.
- #990 Fix potential crashes when updating the stats from a background promise.
- #992 Fix crashes when trying to resolve a promise multiple times.
- #996 Add minimal initialization steps for the V8 engine to ensure that it is initialized on the main thread.
Notes
- The version inside Redis will be 2.0.9 in semantic versioning. Since the version of a module in Redis is numeric, we could not add a Milestone flag.
- Minimal Redis version: 7.2-RC3
2.0-M08 (v2.0.7)
This is the seventh milestone release of RedisGears 2.0: Triggers and Functions.
The API is not yet final and might change based on feedback. Any feedback is highly appreciated.
Details (since 2.0-M07)
Features
- #979 Better support for handling fatal errors in Async functions. The error can now be returned to the user.
Performance enhancements
- #973 Allow lazy loading of the JavaScript engine.
- #974 Lazy initialization of threads and connections between shards (when used in a cluster).
Bugfixes
- #977 Allow additional whitespace after the prologue when parsing.
Improvements
- #980 Update the V8 JavaScript engine to 11.4.183.27.
Notes
- The version inside Redis will be 2.0.7 in semantic versioning. Since the version of a module in Redis is numeric, we could not add a Milestone flag.
- Minimal Redis version: 7.2-RC3
Version 1.2.7
This is a maintenance release for RedisGears 1.2
Update urgency: LOW
: No need to upgrade unless there are new features or fixes.
Details
Features:
- #978 Upgrade JVM to 17.0.7
2.0-M07 (v2.0.6)
This is the seventh milestone release of RedisGears 2.0: Triggers and Functions.
The JavaScript API went through a major revamp to follow JavaScript standards and distinguish between mandatory and optional arguments. The Triggers and Functions commands are now aligned with the Redis Functions command.
The API is not yet final and might change based on feedback. Any feedback is highly appreciated.
Details (since 2.0-M02)
Features
- #875 The api_version was added to the library prologue indicating the minimum required API version. Indicating the library works on the specified API version and later minor versions.
- #896 Additional optional callback on a KeySpace trigger that can perform read operations exactly when the notification happens.
- #910 The JavaScript API is updated to be inline with JavaScript best practices. Registrations of functions and triggers is done with mandatory arguments and a single optional object.
- #935 Ability to load an RDB from a Redis Server with the RedisGears module loaded but NOT used into a Redis Server without the RedisGears module.
- #946 Support the
REPLICAOF
command. (Redis Enterprise) - Updated commands
- #910
TFUNCTION
andTFCALL
is used instead ofRG.FUNCTION
andRG.FCALL
. - #939 The commands are updated to match the Redis Functions commands.
TFCALL
combines the library and function in a single argument with '.
' separated. Example:TFCALL <library_name>.<function_name>
. - #900 rated the ability to run functions as a coroutine in
TFCALLASYNC
. Clients rely onTFCALL
to never block shared connections so other commands are not delayed on such connections.
- #910
Performance enhancements
- #906 Limit the total memory usage of all combined libraries, the values can be configured during module load.
- #940 Validate the current memory usage when uploading a new library to not exceed the max memory limit.
Bugfixes
- #913 Do not trigger notifications when Redis is loading from a persistence file.
Notes:
- The version inside Redis will be 2.0.6 in semantic versioning. Since the version of a module in Redis is numeric, we could not add a Milestone flag.
- Minimal Redis version: 7.2-RC1
Version 1.2.6
This is a maintenance release for RedisGears 1.2
Update urgency: LOW
: No need to upgrade unless there are new features or fixes.
Details
Features:
Bug fixes:
- #810 Fix invalid memory access when checking if a trigger is already register
2.0-M02 (v2.0.1)
This is the second milestone release of RedisGears 2.0.
Highlights
This is the second milestone release for RedisGears 2.0. RedisGears brings the ability to execute and trigger business logic inside Redis using JavaScript (JS).
RedisGears 2.0 also comes with a complete API refactoring to be closer to Redis Functions which was introduced in Redis 7. RedisGears uses the v8 engine.
The API is not yet final and might change based on feedback. Any feedback is highly appreciated.
Getting started
Features
-
Library support
- Like Redis functions, functions need to be uploaded as part of a library.
- A library is immutable and can contain multiple functions.
- RedisGears functions can call JS functions within the same library.
-
- Functions can be configured to be executed on key changes.
- Functions can be executed synchronously alongside the notification on the main thread or asynchronously in the background.
-
- Entries are picked up by the RedisGears function when the batch size is reached or when the timeout is reached with at least 1 entry, unlike the fixed-size batch processing in RedisGears 1.
- Control how many entries are processed simultaneously.
-
Background Processing Using JS coroutines
- RedisGears functions can run in a background process (unlike Redis Functions or Scripts).
- Heavy calculations can be sent to the background to avoid blocking the Redis main thread.
- Control which parts of your functions are executed on the background thread or the Redis main thread with coroutines.
-
- We made the API more intuitive based on community feedback.
- Declarative APIs such as
run_on_key
allows execution of a function on the shard where the key lives. Orrun_on_all_shards
which will execute the function on all the shards and return the results.
Notes:
- The version inside Redis will be 2.0.1 in semantic versioning. Since the version of a module in Redis is numeric, we could not add a Milestone flag.
- Minimal Redis version: 7.0.3.