[
https://issues.apache.org/jira/browse/GEODE-8076?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17101991#comment-17101991
]
ASF subversion and git services commented on GEODE-8076:
--------------------------------------------------------
Commit da38d512415984b4e82a2869401bf45bc128263e in geode's branch
refs/heads/develop from Murtuza Boxwala
[ https://gitbox.apache.org/repos/asf?p=geode.git;h=da38d51 ]
GEODE-8076: simplify redis concurrency code (#5019)
Added StripedExecutor which is used by the redis set functions to cause all
operations for a given key to be executed sequentially.
Note that DeltaSet has been renamed to RedisSet.
The RedisSet interface is now named RedisSetCommands.
Co-authored-by: Darrel Schneider <[email protected]>
Co-authored-by: Murtuza <[email protected]>
Co-authored-by: Sarah <[email protected]>
Co-authored-by: john <[email protected]>
> simplify redis concurrency code
> -------------------------------
>
> Key: GEODE-8076
> URL: https://issues.apache.org/jira/browse/GEODE-8076
> Project: Geode
> Issue Type: Improvement
> Components: redis
> Reporter: Darrel Schneider
> Assignee: Darrel Schneider
> Priority: Major
> Fix For: 1.14.0
>
>
> Currently when doing a redis set operation, for example sadd, the code has to
> be careful to deal with other threads concurrently changing the same set.
> It does this in a number of ways but this could be simplified by having a
> higher level layer of the code ensure that for a given redis "key" operations
> will done in sequential order.
> This can be done safely in a distributed cluster because we now route all
> operations for a given key to the server that is storing the primary copy of
> data for that key.
> I spike was done and we found that this form of locking did not hurt
> performance. Since it allows simpler code that is less likely to have subtle
> concurrency issues we plan on merging the work done in the spike into the
> product.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)