Michael Blow has submitted this change and it was merged.

Change subject: [NO ISSUE][*DB] LogManagerWithReplication optimizations
......................................................................


[NO ISSUE][*DB] LogManagerWithReplication optimizations

- user model changes: no
- storage format changes: no
- interface changes: no

Details:

- eliminate boxing/unboxing of txnids
- remove redundant hashset contains call

Change-Id: I6e5068c6fe3f6226eabd5403440682c52662421e
Reviewed-on: https://asterix-gerrit.ics.uci.edu/3251
Sonar-Qube: Jenkins <[email protected]>
Integration-Tests: Jenkins <[email protected]>
Tested-by: Jenkins <[email protected]>
Contrib: Jenkins <[email protected]>
Reviewed-by: Till Westmann <[email protected]>
---
M 
asterixdb/asterix-transactions/src/main/java/org/apache/asterix/transaction/management/service/logging/LogManagerWithReplication.java
1 file changed, 6 insertions(+), 5 deletions(-)

Approvals:
  Anon. E. Moose #1000171: 
  Till Westmann: Looks good to me, approved
  Jenkins: Verified; No violations found; ; Verified



diff --git 
a/asterixdb/asterix-transactions/src/main/java/org/apache/asterix/transaction/management/service/logging/LogManagerWithReplication.java
 
b/asterixdb/asterix-transactions/src/main/java/org/apache/asterix/transaction/management/service/logging/LogManagerWithReplication.java
index d2e9629..8a1cc65 100644
--- 
a/asterixdb/asterix-transactions/src/main/java/org/apache/asterix/transaction/management/service/logging/LogManagerWithReplication.java
+++ 
b/asterixdb/asterix-transactions/src/main/java/org/apache/asterix/transaction/management/service/logging/LogManagerWithReplication.java
@@ -18,9 +18,6 @@
  */
 package org.apache.asterix.transaction.management.service.logging;
 
-import java.util.Set;
-import java.util.concurrent.ConcurrentHashMap;
-
 import org.apache.asterix.common.exceptions.ACIDException;
 import org.apache.asterix.common.replication.IReplicationManager;
 import org.apache.asterix.common.replication.IReplicationStrategy;
@@ -30,11 +27,15 @@
 import org.apache.asterix.common.transactions.LogType;
 import org.apache.hyracks.api.util.InvokeUtil;
 
+import it.unimi.dsi.fastutil.longs.LongOpenHashSet;
+import it.unimi.dsi.fastutil.longs.LongSet;
+import it.unimi.dsi.fastutil.longs.LongSets;
+
 public class LogManagerWithReplication extends LogManager {
 
     private IReplicationManager replicationManager;
     private IReplicationStrategy replicationStrategy;
-    private final Set<Long> replicatedTxn = ConcurrentHashMap.newKeySet();
+    private final LongSet replicatedTxn = LongSets.synchronize(new 
LongOpenHashSet());
 
     public LogManagerWithReplication(ITransactionSubsystem txnSubsystem) {
         super(txnSubsystem);
@@ -52,7 +53,7 @@
                 case LogType.FLUSH:
                 case LogType.FILTER:
                     shouldReplicate = 
replicationStrategy.isMatch(logRecord.getDatasetId());
-                    if (shouldReplicate && 
!replicatedTxn.contains(logRecord.getTxnId())) {
+                    if (shouldReplicate) {
                         replicatedTxn.add(logRecord.getTxnId());
                     }
                     break;

-- 
To view, visit https://asterix-gerrit.ics.uci.edu/3251
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: merged
Gerrit-Change-Id: I6e5068c6fe3f6226eabd5403440682c52662421e
Gerrit-PatchSet: 3
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Michael Blow <[email protected]>
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Jenkins <[email protected]>
Gerrit-Reviewer: Michael Blow <[email protected]>
Gerrit-Reviewer: Murtadha Hubail <[email protected]>
Gerrit-Reviewer: Till Westmann <[email protected]>

Reply via email to