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

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

Commit 39e3a89b9e1e313bea6b0449430f5cbdb9a7b327 in geode's branch 
refs/heads/develop from Jens Deppe
[ https://gitbox.apache.org/repos/asf?p=geode.git;h=39e3a89b9e ]

GEODE-10161: Remove unnecessary synchronization from RedisList (#7579)

- Now, with the addition of versioning and synchronization at the
  higher-level methods, all the synchronization can be removed from the
  small, helper methods we have.
- We still need to ensure that there is synchronization between toData
  and within methods that are mutating the list.
- Inline various helper methods in RedisList as they are not adding any
  value.
- Use AvailablePortHelper to set up the port that the crashing VM will
  use. Without this there is interference from other tests when running
  multiple tests concurrently (in the stressTest job).
- Ran at least 1000 iterations of all list-related DUnit tests without
  any failures.

> Clean up synchronization in RedisList
> -------------------------------------
>
>                 Key: GEODE-10161
>                 URL: https://issues.apache.org/jira/browse/GEODE-10161
>             Project: Geode
>          Issue Type: Improvement
>          Components: redis
>            Reporter: Jens Deppe
>            Priority: Major
>              Labels: pull-request-available
>
> Prior to adding versioning, we needed {{synchronized}} on various helper 
> methods that modified the internal list data structure. This was in order to 
> ensure exclusive access in the event of a {{toData()}} call (during 
> GII/bucket movement). {{toData()}} is also synchronized. However, now that 
> we're synchronizing within more of the 'top-level' methods in RedisList, 
> (because we're also changing the {{version}} value), I think that we should 
> be able to remove all of the {{synchronized}} modifiers on the smaller helper 
> methods.



--
This message was sent by Atlassian Jira
(v8.20.7#820007)

Reply via email to