Skip to content

Commit

Permalink
Allow XTRIM maxLength equal 0 (#2030)
Browse files Browse the repository at this point in the history
Since "XTRIM key MAXLEN 0" is allowed by Redis, it may be useful remove the coded constraint "MAXLEN > 0" in order to clean the whole stream.
  • Loading branch information
NicoAvanzDev authored Mar 10, 2022
1 parent 7ff36c5 commit ffebc58
Show file tree
Hide file tree
Showing 2 changed files with 3 additions and 2 deletions.
1 change: 1 addition & 0 deletions docs/ReleaseNotes.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
## Unreleased

- Fix [#1988](https://github.com/StackExchange/StackExchange.Redis/issues/1988): Don't issue `SELECT` commands if explicitly disabled ([#2023 by NickCraver](https://github.com/StackExchange/StackExchange.Redis/pull/2023))
- Fix: Allow `XTRIM` `MAXLEN` argument to be `0` ([#2030 by NicoAvanzDev](https://github.com/StackExchange/StackExchange.Redis/pull/2030))
- Adds: `ConfigurationOptions.BeforeSocketConnect` for configuring sockets between creation and connection ([#2031 by NickCraver](https://github.com/StackExchange/StackExchange.Redis/pull/2031))

## 2.5.43
Expand Down
4 changes: 2 additions & 2 deletions src/StackExchange.Redis/RedisDatabase.cs
Original file line number Diff line number Diff line change
Expand Up @@ -3402,9 +3402,9 @@ private Message GetSingleStreamReadMessage(RedisKey key, RedisValue afterId, int

private Message GetStreamTrimMessage(RedisKey key, int maxLength, bool useApproximateMaxLength, CommandFlags flags)
{
if (maxLength <= 0)
if (maxLength < 0)
{
throw new ArgumentOutOfRangeException(nameof(maxLength), "maxLength must be greater than 0.");
throw new ArgumentOutOfRangeException(nameof(maxLength), "maxLength must be equal to or greater than 0.");
}

var values = new RedisValue[2 + (useApproximateMaxLength ? 1 : 0)];
Expand Down

0 comments on commit ffebc58

Please sign in to comment.