mirror of
https://codeberg.org/redict/redict.git
synced 2025-01-22 16:18:28 -05:00
c1aaad06d8
Add two optional callbacks to the RedisModuleTypeMethods structure, which is `free_effort` and `unlink`. the `free_effort` callback indicates the effort required to free a module memory. Currently, if the effort exceeds LAZYFREE_THRESHOLD, the module memory may be released asynchronously. the `unlink` callback indicates the key has been removed from the DB by redis, and may soon be freed by a background thread. Add `lazyfreed_objects` info field, which represents the number of objects that have been lazyfreed since redis was started. Add `RM_GetTypeMethodVersion` API, which return the current redis-server runtime value of `REDISMODULE_TYPE_METHOD_VERSION`. You can use that when calling `RM_CreateDataType` to know which fields of RedisModuleTypeMethods are gonna be supported and which will be ignored.
33 lines
845 B
Bash
Executable File
33 lines
845 B
Bash
Executable File
#!/bin/sh
|
|
TCL_VERSIONS="8.5 8.6"
|
|
TCLSH=""
|
|
|
|
for VERSION in $TCL_VERSIONS; do
|
|
TCL=`which tclsh$VERSION 2>/dev/null` && TCLSH=$TCL
|
|
done
|
|
|
|
if [ -z $TCLSH ]
|
|
then
|
|
echo "You need tcl 8.5 or newer in order to run the Redis ModuleApi test"
|
|
exit 1
|
|
fi
|
|
|
|
make -C tests/modules && \
|
|
$TCLSH tests/test_helper.tcl \
|
|
--single unit/moduleapi/commandfilter \
|
|
--single unit/moduleapi/fork \
|
|
--single unit/moduleapi/testrdb \
|
|
--single unit/moduleapi/infotest \
|
|
--single unit/moduleapi/propagate \
|
|
--single unit/moduleapi/hooks \
|
|
--single unit/moduleapi/misc \
|
|
--single unit/moduleapi/blockonkeys \
|
|
--single unit/moduleapi/scan \
|
|
--single unit/moduleapi/datatype \
|
|
--single unit/moduleapi/auth \
|
|
--single unit/moduleapi/keyspace_events \
|
|
--single unit/moduleapi/blockedclient \
|
|
--single unit/moduleapi/getkeys \
|
|
--single unit/moduleapi/test_lazyfree \
|
|
"${@}"
|