You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@geode.apache.org by "Owen Nichols (Jira)" <ji...@apache.org> on 2022/06/22 20:47:04 UTC
[jira] [Closed] (GEODE-9424) Radish command arguments must support Long values
[ https://issues.apache.org/jira/browse/GEODE-9424?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Owen Nichols closed GEODE-9424.
-------------------------------
> Radish command arguments must support Long values
> -------------------------------------------------
>
> Key: GEODE-9424
> URL: https://issues.apache.org/jira/browse/GEODE-9424
> Project: Geode
> Issue Type: Bug
> Components: redis
> Affects Versions: 1.15.0
> Reporter: Donal Evans
> Assignee: Donal Evans
> Priority: Major
> Labels: pull-request-available, unreleased
> Fix For: 1.15.0
>
>
> To match the behaviour seen when using native Redis, all command arguments that take integer values (that is, as opposed to float or string) must allow values in the range of {{Long.MIN_VALUE}} -> {{Long.MAX_VALUE}}.
> Currently, passing a value smaller than {{Integer.MIN_VALUE}} or larger than {{Integer.MAX_VALUE}} to these commands results in an error being returned, which is not the case for native Redis.
> Currently affected commands are:
> SCAN
> SSCAN
> HSCAN
> SPOP
> SRANDMEMBER
> BITPOS
> GETBIT
> SETBIT
> SETRANGE
> It should be enough to simply parse the argument as a Long and then narrow it to an int in most cases, as internally the maximum value that the argument can possibly take is {{Integer.MAX_VALUE}}. For example, [the maximum number of elements in a Redis set is 2^32 - 1|https://redis.io/topics/data-types#sets], so the largest meaningful value for the SSCAN CURSOR argument internally is {{Integer.MAX_VALUE}}.
--
This message was sent by Atlassian Jira
(v8.20.7#820007)