Unverified Commit 9906daf5 authored by David Dougherty's avatar David Dougherty Committed by GitHub
Browse files

Update old links for modules-api-ref.md (#13479)

This PR replaces old .../topics/... links with current links,
specifically for the modules-api-ref.md file and the new automation that
Paolo Lazzari is working on. A few of the topics links have redirects,
but some don't. Best to use updated links.
parent ded8d993
...@@ -15,7 +15,8 @@ Another good example is to think of Redis as a more complex version of memcached ...@@ -15,7 +15,8 @@ Another good example is to think of Redis as a more complex version of memcached
If you want to know more, this is a list of selected starting points: If you want to know more, this is a list of selected starting points:
* Introduction to Redis data types. https://redis.io/topics/data-types-intro * Introduction to Redis data types. https://redis.io/docs/latest/develop/data-types/
* The full list of Redis commands. https://redis.io/commands * The full list of Redis commands. https://redis.io/commands
* There is much more inside the official Redis documentation. https://redis.io/documentation * There is much more inside the official Redis documentation. https://redis.io/documentation
...@@ -493,7 +494,7 @@ Other C files ...@@ -493,7 +494,7 @@ Other C files
* `dict.c` is an implementation of a non-blocking hash table which rehashes incrementally. * `dict.c` is an implementation of a non-blocking hash table which rehashes incrementally.
* `cluster.c` implements the Redis Cluster. Probably a good read only after being very familiar with the rest of the Redis code base. If you want to read `cluster.c` make sure to read the [Redis Cluster specification][4]. * `cluster.c` implements the Redis Cluster. Probably a good read only after being very familiar with the rest of the Redis code base. If you want to read `cluster.c` make sure to read the [Redis Cluster specification][4].
[4]: https://redis.io/topics/cluster-spec [4]: https://redis.io/docs/latest/operate/oss_and_stack/reference/cluster-spec/
Anatomy of a Redis command Anatomy of a Redis command
--- ---
......
...@@ -478,7 +478,7 @@ static int __redisGetSubscribeCallback(redisAsyncContext *ac, redisReply *reply, ...@@ -478,7 +478,7 @@ static int __redisGetSubscribeCallback(redisAsyncContext *ac, redisReply *reply,
/* Match reply with the expected format of a pushed message. /* Match reply with the expected format of a pushed message.
* The type and number of elements (3 to 4) are specified at: * The type and number of elements (3 to 4) are specified at:
* https://redis.io/topics/pubsub#format-of-pushed-messages */ * https://redis.io/docs/latest/develop/interact/pubsub/#format-of-pushed-messages */
if ((reply->type == REDIS_REPLY_ARRAY && !(c->flags & REDIS_SUPPORTS_PUSH) && reply->elements >= 3) || if ((reply->type == REDIS_REPLY_ARRAY && !(c->flags & REDIS_SUPPORTS_PUSH) && reply->elements >= 3) ||
reply->type == REDIS_REPLY_PUSH) { reply->type == REDIS_REPLY_PUSH) {
assert(reply->element[0]->type == REDIS_REPLY_STRING); assert(reply->element[0]->type == REDIS_REPLY_STRING);
......
...@@ -838,7 +838,7 @@ replica-priority 100 ...@@ -838,7 +838,7 @@ replica-priority 100
# this is used in order to send invalidation messages to clients. Please # this is used in order to send invalidation messages to clients. Please
# check this page to understand more about the feature: # check this page to understand more about the feature:
# #
# https://redis.io/topics/client-side-caching # https://redis.io/docs/latest/develop/use/client-side-caching/
# #
# When tracking is enabled for a client, all the read only queries are assumed # When tracking is enabled for a client, all the read only queries are assumed
# to be cached: this will force Redis to store information in the invalidation # to be cached: this will force Redis to store information in the invalidation
...@@ -1016,7 +1016,7 @@ replica-priority 100 ...@@ -1016,7 +1016,7 @@ replica-priority 100
# * stream - Data type: streams related. # * stream - Data type: streams related.
# #
# For more information about ACL configuration please refer to # For more information about ACL configuration please refer to
# the Redis web site at https://redis.io/topics/acl # the Redis web site at https://redis.io/docs/latest/operate/oss_and_stack/management/security/acl/
# ACL LOG # ACL LOG
# #
...@@ -1393,7 +1393,7 @@ disable-thp yes ...@@ -1393,7 +1393,7 @@ disable-thp yes
# restarting the server can lead to data loss. A conversion needs to be done # restarting the server can lead to data loss. A conversion needs to be done
# by setting it via CONFIG command on a live server first. # by setting it via CONFIG command on a live server first.
# #
# Please check https://redis.io/topics/persistence for more information. # Please check https://redis.io/docs/latest/operate/oss_and_stack/management/persistence/ for more information.
appendonly no appendonly no
...@@ -1880,7 +1880,7 @@ latency-monitor-threshold 0 ...@@ -1880,7 +1880,7 @@ latency-monitor-threshold 0
############################# EVENT NOTIFICATION ############################## ############################# EVENT NOTIFICATION ##############################
# Redis can notify Pub/Sub clients about events happening in the key space. # Redis can notify Pub/Sub clients about events happening in the key space.
# This feature is documented at https://redis.io/topics/notifications # This feature is documented at https://redis.io/docs/latest/develop/use/keyspace-notifications/
# #
# For instance if keyspace events notification is enabled, and a client # For instance if keyspace events notification is enabled, and a client
# performs a DEL operation on key "foo" stored in the Database 0, two # performs a DEL operation on key "foo" stored in the Database 0, two
......
...@@ -133,7 +133,7 @@ sentinel monitor mymaster 127.0.0.1 6379 2 ...@@ -133,7 +133,7 @@ sentinel monitor mymaster 127.0.0.1 6379 2
sentinel down-after-milliseconds mymaster 30000 sentinel down-after-milliseconds mymaster 30000
# IMPORTANT NOTE: starting with Redis 6.2 ACL capability is supported for # IMPORTANT NOTE: starting with Redis 6.2 ACL capability is supported for
# Sentinel mode, please refer to the Redis website https://redis.io/topics/acl # Sentinel mode, please refer to the Redis website https://redis.io/docs/latest/operate/oss_and_stack/management/security/acl/
# for more details. # for more details.
# Sentinel's ACL users are defined in the following format: # Sentinel's ACL users are defined in the following format:
...@@ -145,7 +145,7 @@ sentinel down-after-milliseconds mymaster 30000 ...@@ -145,7 +145,7 @@ sentinel down-after-milliseconds mymaster 30000
# user worker +@admin +@connection ~* on >ffa9203c493aa99 # user worker +@admin +@connection ~* on >ffa9203c493aa99
# #
# For more information about ACL configuration please refer to the Redis # For more information about ACL configuration please refer to the Redis
# website at https://redis.io/topics/acl and redis server configuration # website at https://redis.io/docs/latest/operate/oss_and_stack/management/security/acl/ and redis server configuration
# template redis.conf. # template redis.conf.
# ACL LOG # ACL LOG
...@@ -174,7 +174,7 @@ acllog-max-len 128 ...@@ -174,7 +174,7 @@ acllog-max-len 128
# so Sentinel will try to authenticate with the same password to all the # so Sentinel will try to authenticate with the same password to all the
# other Sentinels. So you need to configure all your Sentinels in a given # other Sentinels. So you need to configure all your Sentinels in a given
# group with the same "requirepass" password. Check the following documentation # group with the same "requirepass" password. Check the following documentation
# for more info: https://redis.io/topics/sentinel # for more info: https://redis.io/docs/latest/operate/oss_and_stack/management/sentinel/
# #
# IMPORTANT NOTE: starting with Redis 6.2 "requirepass" is a compatibility # IMPORTANT NOTE: starting with Redis 6.2 "requirepass" is a compatibility
# layer on top of the ACL system. The option effect will be just setting # layer on top of the ACL system. The option effect will be just setting
......
...@@ -203,7 +203,7 @@ sds createLatencyReport(void) { ...@@ -203,7 +203,7 @@ sds createLatencyReport(void) {
if (dictSize(server.latency_events) == 0 && if (dictSize(server.latency_events) == 0 &&
server.latency_monitor_threshold == 0) server.latency_monitor_threshold == 0)
{ {
report = sdscat(report,"I'm sorry, Dave, I can't do that. Latency monitoring is disabled in this Redis instance. You may use \"CONFIG SET latency-monitor-threshold <milliseconds>.\" in order to enable it. If we weren't in a deep space mission I'd suggest to take a look at https://redis.io/topics/latency-monitor.\n"); report = sdscat(report,"I'm sorry, Dave, I can't do that. Latency monitoring is disabled in this Redis instance. You may use \"CONFIG SET latency-monitor-threshold <milliseconds>.\" in order to enable it. If we weren't in a deep space mission I'd suggest to take a look at https://redis.io/docs/latest/operate/oss_and_stack/management/optimization/latency-monitor.\n");
return report; return report;
} }
......
...@@ -983,7 +983,7 @@ int moduleGetCommandChannelsViaAPI(struct redisCommand *cmd, robj **argv, int ar ...@@ -983,7 +983,7 @@ int moduleGetCommandChannelsViaAPI(struct redisCommand *cmd, robj **argv, int ar
* *
* These functions are used to implement custom Redis commands. * These functions are used to implement custom Redis commands.
* *
* For examples, see https://redis.io/topics/modules-intro. * For examples, see https://redis.io/docs/latest/develop/reference/modules/.
* -------------------------------------------------------------------------- */ * -------------------------------------------------------------------------- */
   
/* Return non-zero if a module command, that was declared with the /* Return non-zero if a module command, that was declared with the
...@@ -1197,7 +1197,7 @@ RedisModuleCommand *moduleCreateCommandProxy(struct RedisModule *module, sds dec ...@@ -1197,7 +1197,7 @@ RedisModuleCommand *moduleCreateCommandProxy(struct RedisModule *module, sds dec
* from the same input arguments and key values. * from the same input arguments and key values.
* Starting from Redis 7.0 this flag has been deprecated. * Starting from Redis 7.0 this flag has been deprecated.
* Declaring a command as "random" can be done using * Declaring a command as "random" can be done using
* command tips, see https://redis.io/topics/command-tips. * command tips, see https://redis.io/docs/latest/develop/reference/command-tips/.
* * **"allow-stale"**: The command is allowed to run on slaves that don't * * **"allow-stale"**: The command is allowed to run on slaves that don't
* serve stale data. Don't use if you don't know what * serve stale data. Don't use if you don't know what
* this means. * this means.
...@@ -1587,7 +1587,7 @@ int RM_SetCommandACLCategories(RedisModuleCommand *command, const char *aclflags ...@@ -1587,7 +1587,7 @@ int RM_SetCommandACLCategories(RedisModuleCommand *command, const char *aclflags
* both strings set to NULL. * both strings set to NULL.
* *
* - `tips`: A string of space-separated tips regarding this command, meant for * - `tips`: A string of space-separated tips regarding this command, meant for
* clients and proxies. See https://redis.io/topics/command-tips. * clients and proxies. See https://redis.io/docs/latest/develop/reference/command-tips/.
* *
* - `arity`: Number of arguments, including the command name itself. A positive * - `arity`: Number of arguments, including the command name itself. A positive
* number specifies an exact number of arguments and a negative number * number specifies an exact number of arguments and a negative number
...@@ -5425,7 +5425,7 @@ int RM_HashGet(RedisModuleKey *key, int flags, ...) { ...@@ -5425,7 +5425,7 @@ int RM_HashGet(RedisModuleKey *key, int flags, ...) {
/* -------------------------------------------------------------------------- /* --------------------------------------------------------------------------
* ## Key API for Stream type * ## Key API for Stream type
* *
* For an introduction to streams, see https://redis.io/topics/streams-intro. * For an introduction to streams, see https://redis.io/docs/latest/develop/data-types/streams/.
* *
* The type RedisModuleStreamID, which is used in stream functions, is a struct * The type RedisModuleStreamID, which is used in stream functions, is a struct
* with two 64-bit fields and is defined as * with two 64-bit fields and is defined as
...@@ -6298,7 +6298,7 @@ fmterr: ...@@ -6298,7 +6298,7 @@ fmterr:
* // Do something with myval. * // Do something with myval.
* } * }
* *
* This API is documented here: https://redis.io/topics/modules-intro * This API is documented here: https://redis.io/docs/latest/develop/reference/modules/
*/ */
RedisModuleCallReply *RM_Call(RedisModuleCtx *ctx, const char *cmdname, const char *fmt, ...) { RedisModuleCallReply *RM_Call(RedisModuleCtx *ctx, const char *cmdname, const char *fmt, ...) {
client *c = NULL; client *c = NULL;
...@@ -6808,7 +6808,7 @@ robj *moduleTypeDupOrReply(client *c, robj *fromkey, robj *tokey, int todb, robj ...@@ -6808,7 +6808,7 @@ robj *moduleTypeDupOrReply(client *c, robj *fromkey, robj *tokey, int todb, robj
   
/* Register a new data type exported by the module. The parameters are the /* Register a new data type exported by the module. The parameters are the
* following. Please for in depth documentation check the modules API * following. Please for in depth documentation check the modules API
* documentation, especially https://redis.io/topics/modules-native-types. * documentation, especially https://redis.io/docs/latest/develop/reference/modules/modules-native-types/.
* *
* * **name**: A 9 characters data type name that MUST be unique in the Redis * * **name**: A 9 characters data type name that MUST be unique in the Redis
* Modules ecosystem. Be creative... and there will be no collisions. Use * Modules ecosystem. Be creative... and there will be no collisions. Use
...@@ -7697,7 +7697,7 @@ void RM_LatencyAddSample(const char *event, mstime_t latency) { ...@@ -7697,7 +7697,7 @@ void RM_LatencyAddSample(const char *event, mstime_t latency) {
* ## Blocking clients from modules * ## Blocking clients from modules
* *
* For a guide about blocking commands in modules, see * For a guide about blocking commands in modules, see
* https://redis.io/topics/modules-blocking-ops. * https://redis.io/docs/latest/develop/reference/modules/modules-blocking-ops/.
* -------------------------------------------------------------------------- */ * -------------------------------------------------------------------------- */
   
/* Returns 1 if the client already in the moduleUnblocked list, 0 otherwise. */ /* Returns 1 if the client already in the moduleUnblocked list, 0 otherwise. */
...@@ -8709,7 +8709,7 @@ void moduleReleaseGIL(void) { ...@@ -8709,7 +8709,7 @@ void moduleReleaseGIL(void) {
* runs is dangerous and discouraged. In order to react to key space events with * runs is dangerous and discouraged. In order to react to key space events with
* write actions, please refer to `RM_AddPostNotificationJob`. * write actions, please refer to `RM_AddPostNotificationJob`.
* *
* See https://redis.io/topics/notifications for more information. * See https://redis.io/docs/latest/develop/use/keyspace-notifications/ for more information.
*/ */
int RM_SubscribeToKeyspaceEvents(RedisModuleCtx *ctx, int types, RedisModuleNotificationFunc callback) { int RM_SubscribeToKeyspaceEvents(RedisModuleCtx *ctx, int types, RedisModuleNotificationFunc callback) {
RedisModuleKeyspaceSubscriber *sub = zmalloc(sizeof(*sub)); RedisModuleKeyspaceSubscriber *sub = zmalloc(sizeof(*sub));
......
...@@ -9,7 +9,7 @@ ...@@ -9,7 +9,7 @@
#include "server.h" #include "server.h"
/* This file implements keyspace events notification via Pub/Sub and /* This file implements keyspace events notification via Pub/Sub and
* described at https://redis.io/topics/notifications. */ * described at https://redis.io/docs/latest/develop/use/keyspace-notifications/. */
/* Turn a string representing notification classes into an integer /* Turn a string representing notification classes into an integer
* representing notification classes flags xored. * representing notification classes flags xored.
......
...@@ -4,7 +4,7 @@ ...@@ -4,7 +4,7 @@
# Software Watchdog, which provides a similar functionality but in # Software Watchdog, which provides a similar functionality but in
# a more reliable / easy to use way. # a more reliable / easy to use way.
# #
# Check https://redis.io/topics/latency for more information. # Check https://redis.io/docs/latest/operate/oss_and_stack/management/optimization/latency/ for more information.
#!/bin/bash #!/bin/bash
nsamples=1 nsamples=1
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment