Fully managed and integrated with Google Cloud, Azure, and AWS.
Build the fastest, most reliable GenAI apps with our advanced vector database.
Self-managed software with enterprise-grade compliance and reliability.
Synchronize data in near-real time to make data fast—without writing code.
In-memory database for caching & streaming.
FUNCTION LOAD [REPLACE] function-code
@write
,
@slow
,
@scripting
,
Load a library to Redis.
The command's gets a single mandatory parameter which is the source code that implements the library.
The library payload must start with Shebang statement that provides a metadata about the library (like the engine to use and the library name).
Shebang format: #!<engine name> name=<library name>
. Currently engine name must be lua
.
For the Lua engine, the implementation should declare one or more entry points to the library with the redis.register_function()
API.
Once loaded, you can call the functions in the library with the FCALL
(or FCALL_RO
when applicable) command.
When attempting to load a library with a name that already exists, the Redis server returns an error.
The REPLACE
modifier changes this behavior and overwrites the existing library with the new contents.
The command will return an error in the following circumstances:
REPLACE
modifier.REPLACE
is specified).For more information please refer to Introduction to Redis Functions.
The following example will create a library named mylib
with a single function, myfunc
, that returns the first argument it gets.
redis> FUNCTION LOAD "#!lua name=mylib \n redis.register_function('myfunc', function(keys, args) return args[1] end)"
mylib
redis> FCALL myfunc 0 hello
"hello"