Young-Seok Kim has posted comments on this change. Change subject: Introducing Data Replication To AsterixDB ......................................................................
Patch Set 6: (17 comments) Please address comments. https://asterix-gerrit.ics.uci.edu/#/c/338/6/asterix-common/src/main/java/org/apache/asterix/common/replication/ReplicaEvent.java File asterix-common/src/main/java/org/apache/asterix/common/replication/ReplicaEvent.java: Line 25: SPLIT, better be FAIL Line 26: MERGE, JOIN https://asterix-gerrit.ics.uci.edu/#/c/338/6/asterix-replication/src/main/java/org/apache/asterix/replication/management/ReplicationChannel.java File asterix-replication/src/main/java/org/apache/asterix/replication/management/ReplicationChannel.java: Line 105: lsmComponentsFilesSyncQ = new LinkedBlockingQueue<LSMComponentLSNSyncTask>(); Renaming: lsmComponentRemoteLSN2LocalLSNMappingTaskQ Line 106: lsmComponents = new ConcurrentHashMap<String, LSMComponentProperties>(); lsmComponentId2PropertiesMap Line 107: remoteLogsMap = new ConcurrentHashMap<Long, RemoteLogMapping>(); localLSN2RemoteLSNMap Line 108: lsmComponentsSyncService = new LSMComponentsSyncService(); lsmComponentLSNMappingService Line 262: Map<IIndex, Long> indexesToFlush = new HashMap<IIndex, Long>(); candidateIndexesToFlush Line 268: if (index != null) { say the case for open indexes Line 275: List<IIndex> openIndexList = indexLifecycleManager.getOpenIndexes(); Let's have a method in datasetlifecyclemanager::getOpenIndex(resourceId or by name) and change two iterations to one iteration. Line 284: //force to flush "//for to flush" comment should go away. Line 288: failedToFlushIndexes.add(indexesToFlush.get(index)); IndexesNotToBeFlushed Line 620: Let's explain the situation when this situation can happen. F->M->D https://asterix-gerrit.ics.uci.edu/#/c/338/6/asterix-replication/src/main/java/org/apache/asterix/replication/management/ReplicationManager.java File asterix-replication/src/main/java/org/apache/asterix/replication/management/ReplicationManager.java: Line 738: public void requestFlushLaggingReplicaIndexes(long nonSharpCheckpointTargetLSN) throws IOException { Please describe protocols which is not obvious. Line 823: this is recovery method.? Line 875: recovery method? Line 900: recovery method? https://asterix-gerrit.ics.uci.edu/#/c/338/6/asterix-replication/src/main/java/org/apache/asterix/replication/storage/ReplicaResourcesManager.java File asterix-replication/src/main/java/org/apache/asterix/replication/storage/ReplicaResourcesManager.java: Line 369: public HashMap<Long, Long> getReplicaIndexLSNMap(String indexPath) throws IOException { accessing IndexLSNMap should be synchronized between all possible readers and writers. -- To view, visit https://asterix-gerrit.ics.uci.edu/338 To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings Gerrit-MessageType: comment Gerrit-Change-Id: I729fdd1144dbc9ff039b4bc414494860d7553810 Gerrit-PatchSet: 6 Gerrit-Project: asterixdb Gerrit-Branch: master Gerrit-Owner: Murtadha Hubail <[email protected]> Gerrit-Reviewer: Ian Maxon <[email protected]> Gerrit-Reviewer: Jenkins <[email protected]> Gerrit-Reviewer: Murtadha Hubail <[email protected]> Gerrit-Reviewer: Yingyi Bu <[email protected]> Gerrit-Reviewer: Young-Seok Kim <[email protected]> Gerrit-Reviewer: abdullah alamoudi <[email protected]> Gerrit-HasComments: Yes
