You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@geode.apache.org by "ASF subversion and git services (Jira)" <ji...@apache.org> on 2021/05/27 20:11:00 UTC

[jira] [Commented] (GEODE-9222) Remove ByteArrayWrapperUsage From RedisSet

    [ https://issues.apache.org/jira/browse/GEODE-9222?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17352725#comment-17352725 ] 

ASF subversion and git services commented on GEODE-9222:
--------------------------------------------------------

Commit c6d1da1059328daa0731d8493146152bb6a99594 in geode's branch refs/heads/develop from Donal Evans
[ https://gitbox.apache.org/repos/asf?p=geode.git;h=c6d1da1 ]

GEODE-9222: Remove ByteArrayWrapper from RedisSet (#6487)

 - Replace uses of ByteArrayWrapper with byte[] in RedisSet,
 NullRedisSet and other Set-related classes
 - Replace internal Set in RedisSet with fastutil
 ObjectOpenCustomHashSet
 - Replace the membersAddAll and membersRemoveAll methods with looped
 calls to membersAdd and membersRemove, as ObjectOpenCustomHashSet does
 not implement removeAll, which causes errors when comparing
 the contents of Sets
 - Change implementation of sunionstore, sinterstore and sdiffstore to
 correctly use ObjectOpenCustomHashSet
 - Moving the set commands executor to a shared object rather than
 allocating it for each operation
 - Replace uses of collection implementations with interfaces where possible
 - Make RedisSet.smembers() public, similar to RedisHash.hkeys() and
 RedisHash.hvalue()
 - Change RedisSet.toString to be in line with other Redis classes
 - These changes break the sizing tests, but these tests have been
 determined to be inconsistent due to the current implementation of
 sizeable in RedisSet. GEODE-9279 will address the issues with sizeable
 in a future commit
 - These changes break backwards compatibility with Geode 1.14.0

Authored-by: Donal Evans <do...@vmware.com>

> Remove ByteArrayWrapperUsage From RedisSet
> ------------------------------------------
>
>                 Key: GEODE-9222
>                 URL: https://issues.apache.org/jira/browse/GEODE-9222
>             Project: Geode
>          Issue Type: Sub-task
>          Components: redis
>            Reporter: Wayne
>            Assignee: Donal Evans
>            Priority: Major
>              Labels: pull-request-available
>             Fix For: 1.15.0
>
>
> The classes RedisSet and NullRedisSet should be refactored to eliminate the use of ByteArrayWrapper and use byte[] instead.
>  
> When used as a key in a GeodeRegion, the new RedisKey class should be used as a key instead of byte[].
>   
> +Acceptance Criteria+
> After this refactor, we must verify that all existing regression tests run without failure.  Using the Redis Benchmarking tools, we expect an improvement in transaction throughput.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)