[geode] branch feature/GEODE-8334 created (now a410403)
This is an automated email from the ASF dual-hosted git repository. zhouxj pushed a change to branch feature/GEODE-8334 in repository https://gitbox.apache.org/repos/asf/geode.git. at a410403 GEODE-8334: PutAll/RemoveAll at primary bucket should get rvvLock to sync with clear This branch includes the following new commits: new a410403 GEODE-8334: PutAll/RemoveAll at primary bucket should get rvvLock to sync with clear The 1 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "add" were already present in the repository and have only been added to this reference.
[geode] 01/01: GEODE-8334: PutAll/RemoveAll at primary bucket should get rvvLock to sync with clear
This is an automated email from the ASF dual-hosted git repository. zhouxj pushed a commit to branch feature/GEODE-8334 in repository https://gitbox.apache.org/repos/asf/geode.git commit a4104033ceb20e80b491ed4b3ae89da2c6969f5f Author: zhouxh AuthorDate: Mon Jul 6 17:46:14 2020 -0700 GEODE-8334: PutAll/RemoveAll at primary bucket should get rvvLock to sync with clear --- .../apache/geode/internal/cache/partitioned/PutAllPRMessage.java | 8 .../geode/internal/cache/partitioned/RemoveAllPRMessage.java | 8 2 files changed, 16 insertions(+) diff --git a/geode-core/src/main/java/org/apache/geode/internal/cache/partitioned/PutAllPRMessage.java b/geode-core/src/main/java/org/apache/geode/internal/cache/partitioned/PutAllPRMessage.java index 5c2cf3d..fcd379a 100755 --- a/geode-core/src/main/java/org/apache/geode/internal/cache/partitioned/PutAllPRMessage.java +++ b/geode-core/src/main/java/org/apache/geode/internal/cache/partitioned/PutAllPRMessage.java @@ -418,6 +418,7 @@ public class PutAllPRMessage extends PartitionMessageWithDirectReply { Object[] keys = getKeysToBeLocked(); if (!notificationOnly) { boolean locked = false; +boolean rvvLocked = false; try { if (putAllPRData.length > 0) { if (this.posDup && bucketRegion.getConcurrencyChecksEnabled()) { @@ -443,6 +444,10 @@ public class PutAllPRMessage extends PartitionMessageWithDirectReply { bucketRegion.recordBulkOpStart(membershipID, eventID); } locked = bucketRegion.waitUntilLocked(keys); + if (!rvvLocked) { +bucketRegion.lockRVVForBulkOp(); +rvvLocked = true; + } boolean lockedForPrimary = false; final HashMap succeeded = new HashMap(); PutAllPartialResult partialKeys = new PutAllPartialResult(putAllPRDataSize); @@ -523,6 +528,9 @@ public class PutAllPRMessage extends PartitionMessageWithDirectReply { } catch (RegionDestroyedException e) { ds.checkRegionDestroyedOnBucket(bucketRegion, true, e); } finally { + if (rvvLocked) { +bucketRegion.unlockRVVForBulkOp(); + } if (locked) { bucketRegion.removeAndNotifyKeys(keys); } diff --git a/geode-core/src/main/java/org/apache/geode/internal/cache/partitioned/RemoveAllPRMessage.java b/geode-core/src/main/java/org/apache/geode/internal/cache/partitioned/RemoveAllPRMessage.java index 6e05a41..51fdb43 100644 --- a/geode-core/src/main/java/org/apache/geode/internal/cache/partitioned/RemoveAllPRMessage.java +++ b/geode-core/src/main/java/org/apache/geode/internal/cache/partitioned/RemoveAllPRMessage.java @@ -412,6 +412,7 @@ public class RemoveAllPRMessage extends PartitionMessageWithDirectReply { if (!notificationOnly) { boolean locked = false; +boolean rvvLocked = false; try { if (removeAllPRData.length > 0) { if (this.posDup && bucketRegion.getConcurrencyChecksEnabled()) { @@ -437,6 +438,10 @@ public class RemoveAllPRMessage extends PartitionMessageWithDirectReply { bucketRegion.recordBulkOpStart(membershipID, eventID); } locked = bucketRegion.waitUntilLocked(keys); + if (!rvvLocked) { +bucketRegion.lockRVVForBulkOp(); +rvvLocked = true; + } boolean lockedForPrimary = false; final ArrayList succeeded = new ArrayList(); PutAllPartialResult partialKeys = new PutAllPartialResult(removeAllPRDataSize); @@ -532,6 +537,9 @@ public class RemoveAllPRMessage extends PartitionMessageWithDirectReply { } catch (RegionDestroyedException e) { ds.checkRegionDestroyedOnBucket(bucketRegion, true, e); } finally { + if (rvvLocked) { +bucketRegion.unlockRVVForBulkOp(); + } if (locked) { bucketRegion.removeAndNotifyKeys(keys); }
[geode] branch develop updated (ee13af8 -> 7badfc7)
This is an automated email from the ASF dual-hosted git repository. dschneider pushed a change to branch develop in repository https://gitbox.apache.org/repos/asf/geode.git. from ee13af8 GEODE-8327: buildSrc depends directly on guava. Declare it. Misc other build fixups (#5339) add 7badfc7 GEODE-8332: Refactor inregion classes (#5320) No new revisions were added by this update. Summary of changes: .../geode/redis/CheckPrimaryBucketFunction.java| 6 +- .../executor/string/BitCountIntegrationTest.java | 6 + .../executor/string/BitPosIntegrationTest.java | 9 + .../executor/string/GetIntegrationTest.java| 11 +- .../codeAnalysis/sanctionedDataSerializables.txt | 4 + .../geode/redis/internal/GeodeRedisServer.java | 4 +- .../redis/internal/PassiveExpirationManager.java | 4 +- .../redis/internal/data/AbstractRedisData.java | 32 ++ .../geode/redis/internal/data/CommandHelper.java | 147 +++ .../geode/redis/internal/data/EmptyRedisSet.java | 79 .../geode/redis/internal/data/NullRedisData.java | 116 + .../{EmptyRedisHash.java => NullRedisHash.java}| 23 +- .../geode/redis/internal/data/NullRedisSet.java| 177 .../geode/redis/internal/data/NullRedisString.java | 314 ++ .../geode/redis/internal/data/RedisData.java | 23 + ...java => RedisDataCommandsFunctionExecutor.java} | 37 +- .../geode/redis/internal/data/RedisHash.java | 2 +- ...java => RedisHashCommandsFunctionExecutor.java} | 88 ++-- .../data/RedisKeyCommandsFunctionExecutor.java | 65 +++ .../redis/internal/data/RedisKeyInRegion.java | 126 -- .../apache/geode/redis/internal/data/RedisSet.java | 2 +- .../data/RedisSetCommandsFunctionExecutor.java | 111 + .../redis/internal/data/RedisSetInRegion.java | 258 --- .../geode/redis/internal/data/RedisString.java | 59 ++- .../data/RedisStringCommandsFunctionExecutor.java | 154 +++ .../redis/internal/data/RedisStringInRegion.java | 483 - .../redis/internal/executor/AbstractExecutor.java | 4 +- .../redis/internal/executor/CommandFunction.java | 258 --- .../executor/SingleResultRedisFunction.java| 30 +- .../internal/executor/hash/HScanExecutor.java | 2 +- .../redis/internal/executor/hash/HashExecutor.java | 2 +- java => RedisHashCommandsFunctionInvoker.java} | 36 +- .../internal/executor/key/ExpireExecutor.java | 2 +- .../internal/executor/key/PersistExecutor.java | 2 +- ...r.java => RedisKeyCommandsFunctionInvoker.java} | 23 +- .../internal/executor/key/RenameFunction.java | 52 +-- ...r.java => RedisSetCommandsFunctionInvoker.java} | 31 +- .../redis/internal/executor/set/SScanExecutor.java | 2 +- .../redis/internal/executor/set/SetExecutor.java | 2 +- ...ava => RedisStringCommandsFunctionInvoker.java} | 47 +- .../internal/executor/string/StringExecutor.java | 2 +- .../sanctioned-geode-redis-serializables.txt | 6 +- .../geode/redis/internal/data/RedisHashTest.java | 2 +- .../geode/redis/internal/data/RedisSetTest.java| 2 +- 44 files changed, 1506 insertions(+), 1339 deletions(-) create mode 100644 geode-redis/src/main/java/org/apache/geode/redis/internal/data/CommandHelper.java delete mode 100644 geode-redis/src/main/java/org/apache/geode/redis/internal/data/EmptyRedisSet.java create mode 100644 geode-redis/src/main/java/org/apache/geode/redis/internal/data/NullRedisData.java copy geode-redis/src/main/java/org/apache/geode/redis/internal/data/{EmptyRedisHash.java => NullRedisHash.java} (72%) create mode 100644 geode-redis/src/main/java/org/apache/geode/redis/internal/data/NullRedisSet.java create mode 100644 geode-redis/src/main/java/org/apache/geode/redis/internal/data/NullRedisString.java rename geode-redis/src/main/java/org/apache/geode/redis/internal/data/{EmptyRedisHash.java => RedisDataCommandsFunctionExecutor.java} (51%) rename geode-redis/src/main/java/org/apache/geode/redis/internal/data/{RedisHashInRegion.java => RedisHashCommandsFunctionExecutor.java} (51%) create mode 100644 geode-redis/src/main/java/org/apache/geode/redis/internal/data/RedisKeyCommandsFunctionExecutor.java delete mode 100644 geode-redis/src/main/java/org/apache/geode/redis/internal/data/RedisKeyInRegion.java create mode 100644 geode-redis/src/main/java/org/apache/geode/redis/internal/data/RedisSetCommandsFunctionExecutor.java delete mode 100644 geode-redis/src/main/java/org/apache/geode/redis/internal/data/RedisSetInRegion.java create mode 100644 geode-redis/src/main/java/org/apache/geode/redis/internal/data/RedisStringCommandsFunctionExecutor.java delete mode 100644 geode-redis/src/main/java/org/apache/geode/redis/internal/data/RedisStringInRegion.java rename geode-redis/src/main/java/org/apache/geode/redis/internal/executor/hash/{RedisHashCommandsFunctionExecutor.java =>
[geode] branch develop updated (ee13af8 -> 7badfc7)
This is an automated email from the ASF dual-hosted git repository. dschneider pushed a change to branch develop in repository https://gitbox.apache.org/repos/asf/geode.git. from ee13af8 GEODE-8327: buildSrc depends directly on guava. Declare it. Misc other build fixups (#5339) add 7badfc7 GEODE-8332: Refactor inregion classes (#5320) No new revisions were added by this update. Summary of changes: .../geode/redis/CheckPrimaryBucketFunction.java| 6 +- .../executor/string/BitCountIntegrationTest.java | 6 + .../executor/string/BitPosIntegrationTest.java | 9 + .../executor/string/GetIntegrationTest.java| 11 +- .../codeAnalysis/sanctionedDataSerializables.txt | 4 + .../geode/redis/internal/GeodeRedisServer.java | 4 +- .../redis/internal/PassiveExpirationManager.java | 4 +- .../redis/internal/data/AbstractRedisData.java | 32 ++ .../geode/redis/internal/data/CommandHelper.java | 147 +++ .../geode/redis/internal/data/EmptyRedisSet.java | 79 .../geode/redis/internal/data/NullRedisData.java | 116 + .../{EmptyRedisHash.java => NullRedisHash.java}| 23 +- .../geode/redis/internal/data/NullRedisSet.java| 177 .../geode/redis/internal/data/NullRedisString.java | 314 ++ .../geode/redis/internal/data/RedisData.java | 23 + ...java => RedisDataCommandsFunctionExecutor.java} | 37 +- .../geode/redis/internal/data/RedisHash.java | 2 +- ...java => RedisHashCommandsFunctionExecutor.java} | 88 ++-- .../data/RedisKeyCommandsFunctionExecutor.java | 65 +++ .../redis/internal/data/RedisKeyInRegion.java | 126 -- .../apache/geode/redis/internal/data/RedisSet.java | 2 +- .../data/RedisSetCommandsFunctionExecutor.java | 111 + .../redis/internal/data/RedisSetInRegion.java | 258 --- .../geode/redis/internal/data/RedisString.java | 59 ++- .../data/RedisStringCommandsFunctionExecutor.java | 154 +++ .../redis/internal/data/RedisStringInRegion.java | 483 - .../redis/internal/executor/AbstractExecutor.java | 4 +- .../redis/internal/executor/CommandFunction.java | 258 --- .../executor/SingleResultRedisFunction.java| 30 +- .../internal/executor/hash/HScanExecutor.java | 2 +- .../redis/internal/executor/hash/HashExecutor.java | 2 +- java => RedisHashCommandsFunctionInvoker.java} | 36 +- .../internal/executor/key/ExpireExecutor.java | 2 +- .../internal/executor/key/PersistExecutor.java | 2 +- ...r.java => RedisKeyCommandsFunctionInvoker.java} | 23 +- .../internal/executor/key/RenameFunction.java | 52 +-- ...r.java => RedisSetCommandsFunctionInvoker.java} | 31 +- .../redis/internal/executor/set/SScanExecutor.java | 2 +- .../redis/internal/executor/set/SetExecutor.java | 2 +- ...ava => RedisStringCommandsFunctionInvoker.java} | 47 +- .../internal/executor/string/StringExecutor.java | 2 +- .../sanctioned-geode-redis-serializables.txt | 6 +- .../geode/redis/internal/data/RedisHashTest.java | 2 +- .../geode/redis/internal/data/RedisSetTest.java| 2 +- 44 files changed, 1506 insertions(+), 1339 deletions(-) create mode 100644 geode-redis/src/main/java/org/apache/geode/redis/internal/data/CommandHelper.java delete mode 100644 geode-redis/src/main/java/org/apache/geode/redis/internal/data/EmptyRedisSet.java create mode 100644 geode-redis/src/main/java/org/apache/geode/redis/internal/data/NullRedisData.java copy geode-redis/src/main/java/org/apache/geode/redis/internal/data/{EmptyRedisHash.java => NullRedisHash.java} (72%) create mode 100644 geode-redis/src/main/java/org/apache/geode/redis/internal/data/NullRedisSet.java create mode 100644 geode-redis/src/main/java/org/apache/geode/redis/internal/data/NullRedisString.java rename geode-redis/src/main/java/org/apache/geode/redis/internal/data/{EmptyRedisHash.java => RedisDataCommandsFunctionExecutor.java} (51%) rename geode-redis/src/main/java/org/apache/geode/redis/internal/data/{RedisHashInRegion.java => RedisHashCommandsFunctionExecutor.java} (51%) create mode 100644 geode-redis/src/main/java/org/apache/geode/redis/internal/data/RedisKeyCommandsFunctionExecutor.java delete mode 100644 geode-redis/src/main/java/org/apache/geode/redis/internal/data/RedisKeyInRegion.java create mode 100644 geode-redis/src/main/java/org/apache/geode/redis/internal/data/RedisSetCommandsFunctionExecutor.java delete mode 100644 geode-redis/src/main/java/org/apache/geode/redis/internal/data/RedisSetInRegion.java create mode 100644 geode-redis/src/main/java/org/apache/geode/redis/internal/data/RedisStringCommandsFunctionExecutor.java delete mode 100644 geode-redis/src/main/java/org/apache/geode/redis/internal/data/RedisStringInRegion.java rename geode-redis/src/main/java/org/apache/geode/redis/internal/executor/hash/{RedisHashCommandsFunctionExecutor.java =>
[geode] branch develop updated (54a21c5 -> ee13af8)
This is an automated email from the ASF dual-hosted git repository. rhoughton pushed a change to branch develop in repository https://gitbox.apache.org/repos/asf/geode.git. from 54a21c5 GEODE-8328: Fix GfshRuleIntegrationTest on Windows (#5345) add ee13af8 GEODE-8327: buildSrc depends directly on guava. Declare it. Misc other build fixups (#5339) No new revisions were added by this update. Summary of changes: buildSrc/build.gradle | 1 + extensions/geode-modules-assembly/build.gradle | 4 extensions/geode-modules-session/build.gradle | 3 +++ extensions/geode-modules-tomcat7/build.gradle | 3 +++ extensions/geode-modules/build.gradle | 3 +++ geode-gfsh/build.gradle | 2 +- geode-membership/build.gradle | 23 ++- gradle/java.gradle | 2 ++ gradle/publish-java.gradle | 1 + gradle/sonar.gradle | 24 gradle/standard-subproject-configuration.gradle | 15 +-- gradle/test.gradle | 15 +++ 12 files changed, 48 insertions(+), 48 deletions(-)