[ 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)