Skip to content

Commit 92b59c0

Browse files
committed
Merge branch 'main' into release-rs-gilboa
2 parents 1dee885 + 3f74bb4 commit 92b59c0

File tree

67 files changed

+955
-277
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

67 files changed

+955
-277
lines changed

config.toml

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -71,6 +71,16 @@ rdi_current_version = "1.15.0"
7171
"Rust-sync"={quickstartSlug="rust"}
7272
"Rust-async"={quickstartSlug="rust"}
7373

74+
# Mount directories for duplicate content
75+
[module]
76+
[[module.mounts]]
77+
source = "content"
78+
target = "content"
79+
[[module.mounts]]
80+
source = "content/operate/rs/databases/active-active/develop"
81+
target = "content/operate/rc/databases/active-active/develop"
82+
excludeFiles = ["_index.md"]
83+
7484
# Markup
7585
[markup]
7686
[markup.goldmark]

content/commands/ft.aggregate.md

Lines changed: 13 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -180,12 +180,12 @@ stack_path: docs/interact/search-and-query
180180
summary: Run a search query on an index and perform aggregate transformations on the
181181
results
182182
syntax: "FT.AGGREGATE index query \n [VERBATIM] \n [LOAD count field [field ...]]\
183-
\ \n [TIMEOUT timeout] \n [ GROUPBY nargs property [property ...] [ REDUCE function\
184-
\ nargs arg [arg ...] [AS name] [ REDUCE function nargs arg [arg ...] [AS name]\
185-
\ ...]] ...]] \n [ SORTBY nargs [ property ASC | DESC [ property ASC | DESC ...]]\
186-
\ [MAX num] [WITHCOUNT] \n [ APPLY expression AS name [ APPLY expression AS name\
187-
\ ...]] \n [ LIMIT offset num] \n [FILTER filter] \n [ WITHCURSOR [COUNT read_size]\
188-
\ [MAXIDLE idle_time]] \n [ PARAMS nargs name value [ name value ...]] \n [SCORER scorer]\n
183+
\ \n [TIMEOUT timeout] \n [GROUPBY nargs property [property ...] [REDUCE function\
184+
\ nargs arg [arg ...] [AS name] [REDUCE function nargs arg [arg ...] [AS name]\
185+
\ ...]] ...]] \n [SORTBY nargs [property ASC | DESC [property ASC | DESC ...]]\
186+
\ [MAX num] [WITHCOUNT] \n [APPLY expression AS name [APPLY expression AS name\
187+
\ ...]] \n [LIMIT offset num] \n [FILTER filter] \n [WITHCURSOR [COUNT read_size]\
188+
\ [MAXIDLE idle_time]] \n [PARAMS nargs name value [name value ...]] \n [SCORER scorer]\n
189189
\ [ADDSCORES] \n [DIALECT\
190190
\ dialect]\n"
191191
syntax_fmt: "FT.AGGREGATE index query [VERBATIM] [LOAD\_count field [field ...]]\n\
@@ -402,7 +402,7 @@ FT.AGGREGATE idx "@url:\"about.html\""
402402
GROUPBY 2 @day @country
403403
REDUCE count 0 AS num_visits
404404
SORTBY 4 @day
405-
{{< / highlight >}}
405+
{{< /highlight >}}
406406
</details>
407407

408408
<details open>
@@ -416,7 +416,7 @@ FT.AGGREGATE books-idx *
416416
REDUCE COUNT 0 AS num_published
417417
GROUPBY 0
418418
REDUCE MAX 1 @num_published AS max_books_published_per_year
419-
{{< / highlight >}}
419+
{{< /highlight >}}
420420
</details>
421421

422422
<details open>
@@ -430,7 +430,7 @@ Search for libraries within 10 kilometers of the longitude -73.982254 and latitu
430430
FT.AGGREGATE libraries-idx "@location:[-73.982254 40.753181 10 km]"
431431
LOAD 1 @location
432432
APPLY "geodistance(@location, -73.982254, 40.753181)"
433-
{{< / highlight >}}
433+
{{< /highlight >}}
434434

435435
Here, notice the required use of `LOAD` to pre-load the `@location` attribute because it is a GEO attribute.
436436

@@ -480,7 +480,7 @@ Next, count GitHub events by user (actor), to produce the most active users.
480480
3) "num"
481481
4) "2794"
482482
(0.59s)
483-
{{< / highlight >}}
483+
{{< /highlight >}}
484484

485485
</details>
486486

@@ -502,17 +502,18 @@ FT.AGGREGATE orders "*"
502502
APPLY case(@status == "pending", 1, 0) AS is_pending
503503
APPLY case(@is_pending == 1 && @priority == "high", 1,2) AS status_high
504504
APPLY case(@is_pending == 0 && @priority == "high", 3,4) AS status_completed
505-
{{< / highlight >}}
505+
{{< /highlight >}}
506506

507507
</details>
508+
508509
## Return information
509510

510511
{{< multitabs id="ft-aggregate-return-info"
511512
tab1="RESP2"
512513
tab2="RESP3" >}}
513514

514515
One of the following:
515-
* [Array]({{< relref "/develop/reference/protocol-spec#arrays" >}}) with the first element being the total number of results, followed by result rows as [arrays]({{< relref "/develop/reference/protocol-spec#arrays" >}}) of field-value pairs.
516+
* [Array reply]({{< relref "/develop/reference/protocol-spec#arrays" >}}) where each row is an array reply representing a single aggregate result. The [integer reply]({{< relref "develop/reference/protocol-spec#resp-integers" >}}) at position `1` does not represent a valid value.
516517
* [Simple error reply]({{< relref "/develop/reference/protocol-spec#simple-errors" >}}) in these cases: incorrect number of arguments, non-existent index, invalid query syntax.
517518

518519
-tab-sep-

content/commands/hexpire.md

Lines changed: 16 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -117,20 +117,28 @@ In this case, the time to live is _updated_ to the new value.
117117

118118
Starting with Redis 8, the Redis Query Engine has enhanced behavior when handling expiring hash fields. For detailed information about how [`FT.SEARCH`]({{< relref "/commands/ft.search" >}}) and [`FT.AGGREGATE`]({{< relref "/commands/ft.aggregate" >}}) commands interact with expiring hash fields, see [Key and field expiration behavior]({{< relref "/develop/ai/search-and-query/advanced-concepts/expiration" >}}).
119119

120-
## Example
120+
## Examples
121121

122-
```
123-
redis> HEXPIRE no-key 20 NX FIELDS 2 field1 field2
122+
{{< clients-example set="cmds_hash" step="hexpire" >}}
123+
HEXPIRE no-key 20 NX FIELDS 2 field1 field2
124124
(nil)
125-
redis> HSET mykey field1 "hello" field2 "world"
125+
HSET mykey field1 "hello" field2 "world"
126126
(integer) 2
127-
redis> HEXPIRE mykey 10 FIELDS 3 field1 field2 field3
127+
HEXPIRE mykey 10 FIELDS 3 field1 field2 field3
128128
1) (integer) 1
129129
2) (integer) 1
130130
3) (integer) -2
131-
redis> HGETALL mykey
132-
(empty array)
133-
```
131+
HGETALL mykey
132+
{{< /clients-example >}}
133+
134+
Give these commands a try in the interactive console:
135+
136+
{{% redis-cli %}}
137+
HEXPIRE no-key 20 NX FIELDS 2 field1 field2
138+
HSET mykey field1 "hello" field2 "world"
139+
HEXPIRE mykey 10 FIELDS 3 field1 field2 field3
140+
HGETALL mykey
141+
{{% /redis-cli %}}
134142

135143
## Return information
136144

content/embeds/rc-aa-cidr.md

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
Every CIDR should be unique to properly route network traffic between each Active-Active database instance and your consumer VPCs. The CIDR block regions should _not_ overlap between the Redis server and your app consumer VPCs. In addition, CIDR blocks should not overlap between cluster instances.
2+
3+
When all **Deployment CIDR** regions display a green checkmark, you're ready to continue.
4+
5+
{{<image filename="images/rc/icon-cidr-address-ok.png" width="30px" alt="Green checkmarks indicate valid CIDR address values." >}}
6+
7+
Red exclamation marks indicate error conditions; the tooltip provides additional details.
8+
9+
{{<image filename="images/rc/icon-cidr-address-error.png" width="30px" alt="Red exclamation points indicate CIDR address problems." >}}

content/embeds/rc-pro-billing-units.md

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,3 @@
1-
## Billing Unit types
2-
31
The Redis Billing Unit types associated with your Pro subscription depend on your database memory size and throughput requirements.
42

53
| Billing unit type | Capacity (Memory/Throughput) |
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
In the example below, database writes are concurrent at the points in
2+
time t1 and t2 and happen before a sync can communicate the changes.
3+
However, writes at times t4 and t6 are not concurrent as a sync happened
4+
in between.
5+
6+
| **Time** | **CRDB Instance1** | **CRDB Instance2** |
7+
| ------: | :------: | :------: |
8+
| t1 | SET key1 "a" | |
9+
| t2 | | SET key1 "b" |
10+
| t3 | — Sync — | — Sync — |
11+
| t4 | SET key1 "c" | |
12+
| t5 | — Sync — | — Sync — |
13+
| t6 | | SET key1 "d" |

content/integrate/prometheus-with-redis-cloud/_index.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -193,7 +193,7 @@ Redis publishes preconfigured dashboards for Redis Cloud and Grafana:
193193

194194
* The [subscription status dashboard](https://grafana.com/grafana/dashboards/18406-subscription-status-dashboard/) provides an overview of your Redis Cloud subscriptions.
195195
* The [database status dashboard](https://grafana.com/grafana/dashboards/18407-database-status-dashboard/) displays specific database metrics, including latency, memory usage, ops/second, and key count.
196-
* The [Active-Active dashboard](https://github.com/redis-field-engineering/redis-enterprise-observability/blob/main/grafana/dashboards/grafana_v9-11/cloud/basic/redis-cloud-active-active-dashboard_v9-11.json) displays metrics specific to [Active-Active databases]({{< relref "/operate/rc/databases/configuration/active-active-redis" >}}).
196+
* The [Active-Active dashboard](https://github.com/redis-field-engineering/redis-enterprise-observability/blob/main/grafana/dashboards/grafana_v9-11/cloud/basic/redis-cloud-active-active-dashboard_v9-11.json) displays metrics specific to [Active-Active databases]({{< relref "/operate/rc/databases/active-active" >}}).
197197

198198
These dashboards are open source. For additional dashboard options, or to file an issue, see the [Redis Enterprise observability Github repository](https://github.com/redis-field-engineering/redis-enterprise-observability/tree/main/grafana).
199199

content/operate/_index.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ hideListLinks: true
2222
|:-----------|:--------------|:-----------|:--------------|:--------------|
2323
| Clustering | [Clustering]({{< relref "/operate/rc/databases/configuration/clustering" >}}) | [Clustering]({{<relref "/operate/rs/databases/durability-ha/clustering">}}) | [Scale with Redis Cluster]({{< relref "/operate/oss_and_stack/management/scaling" >}}) | [Redis Enterprise clusters (REC)]({{<relref "/operate/kubernetes/re-clusters">}}) |
2424
| Replication | [Replication]({{< relref "/operate/rc/databases/configuration/high-availability" >}}) | [Replication]({{<relref "/operate/rs/databases/durability-ha/replication">}}) | [Replication]({{< relref "/operate/oss_and_stack/management/replication" >}}) | [Create replica databases]({{<relref "/operate/kubernetes/re-databases/replica-redb/">}})|
25-
| Active-Active geo-distribution | [Active-Active Redis]({{< relref "/operate/rc/databases/configuration/active-active-redis" >}}) | [Active-Active Redis]({{<relref "/operate/rs/databases/active-active">}}) | | [Active-Active databases]({{<relref "/operate/kubernetes/active-active/">}}) |
25+
| Active-Active geo-distribution | [Active-Active Redis]({{< relref "/operate/rc/databases/active-active" >}}) | [Active-Active Redis]({{<relref "/operate/rs/databases/active-active">}}) | | [Active-Active databases]({{<relref "/operate/kubernetes/active-active/">}}) |
2626
| Rolling upgrades | [Upgrade database version]({{< relref "/operate/rc/databases/upgrade-version" >}}) | [Upgrade Redis Software]({{<relref "/operate/rs/installing-upgrading/upgrading">}}) | | [Upgrade Redis for K8s]({{<relref "/operate/kubernetes/upgrade/">}}) |
2727
| Redis Flex/Auto tiering | [Create a Redis Flex database]({{< relref "/operate/rc/databases/create-database/create-flex-database" >}}) | [Redis Flex]({{<relref "/operate/rs/databases/flash">}}) | | [Auto Tiering]({{<relref "/operate/kubernetes/re-clusters/auto-tiering/">}}) |
2828
| Persistence | [Data persistence]({{< relref "/operate/rc/databases/configuration/data-persistence" >}}) | [Persistence]({{<relref "/operate/rs/databases/configure/database-persistence">}}) | [Persistence]({{< relref "/operate/oss_and_stack/management/replication" >}}) | [Persistence volumes]({{<relref "/operate/kubernetes/recommendations/persistent-volumes/">}})|

content/operate/oss_and_stack/stack-with-enterprise/json/active-active.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ The design is based on [A Conflict-Free Replicated JSON Datatype](https://arxiv.
1919

2020
To use JSON in an Active-Active database, you must enable JSON during database creation.
2121

22-
Active-Active Redis Cloud databases add JSON by default. See [Create an Active-Active database]({{< relref "/operate/rc/databases/create-database/create-active-active-database#select-capabilities" >}}) in the Redis Cloud documentation for details.
22+
Active-Active Redis Cloud databases add JSON by default. See [Create an Active-Active database]({{< relref "/operate/rc/databases/active-active/create-active-active-database#select-capabilities" >}}) in the Redis Cloud documentation for details.
2323

2424
In Redis Enterprise Software, Active-Active databases created with or upgraded to Redis version 8 or later automatically enable JSON. For earlier Redis versions, you can enable JSON during database creation:
2525

content/operate/oss_and_stack/stack-with-enterprise/release-notes/redisearch/redisearch-2.10-release-notes.md

Lines changed: 15 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,11 +13,24 @@ weight: 90
1313
---
1414
## Requirements
1515

16-
RediSearch v2.10.23 requires:
16+
RediSearch v2.10.24 requires:
1717

1818
- Minimum Redis compatibility version (database): 7.4
1919
- Minimum Redis Enterprise Software version (cluster): 7.8
2020

21+
## v2.10.24 (October 2025)
22+
23+
This is a maintenance release for RediSearch 2.10.
24+
25+
Update urgency: `LOW`: No need to upgrade unless there are new features you want to use.
26+
27+
Bug Fixes
28+
- [#6960](https://github.com/redisearch/redisearch/pull/6960) - FT.INFO returns the wrong number of documents in OSS Cluster with replicas.
29+
- [#6938](https://github.com/redisearch/redisearch/pull/6938) - Fix for the HIGHLIGHT feature, where if some fields have empty strings, wrong tokens might be highlighted.
30+
- [#7047](https://github.com/redisearch/redisearch/pull/7047) - Avoid crashing in the FT.AGGREGATE command in clusters where different shards have different ON_TIMEOUT policies configured (fail vs return).
31+
32+
Full Changelog: https://github.com/RediSearch/RediSearch/compare/v2.10.23...v2.10.24.
33+
2134
## v2.10.23 (September 2025)
2235

2336
This is a maintenance release for RediSearch 2.10.
@@ -28,7 +41,7 @@ Bug fixes:
2841
- [#6672](https://github.com/RediSearch/RediSearch/pull/6672) Fix potential file descriptor leak when OOM.
2942
- [#6763](https://github.com/RediSearch/RediSearch/pull/6763) Fix potential deadlock during RDB loading in cases where the `INFO` command is sent to the server.
3043

31-
**Full Changelog**: https://github.com/RediSearch/RediSearch/compare/v2.10.22...v2.10.23
44+
Full Changelog: https://github.com/RediSearch/RediSearch/compare/v2.10.22...v2.10.23
3245

3346
## v2.10.22 (August 2025)
3447

0 commit comments

Comments
 (0)