[NO ISSUE][REP] Pass NC active partitions from CC
authorMurtadha Hubail <murtadha.hubail@couchbase.com>
Thu, 19 Aug 2021 18:40:29 +0000 (21:40 +0300)
committerMurtadha Hubail <mhubail@apache.org>
Fri, 20 Aug 2021 16:47:31 +0000 (16:47 +0000)
commitc9a48b94e22384baf5305c55e8f23af7a26bf88b
tree75a2b74f3d083b4b48c912e1355615aef009bd7e
parentd3eccd4f3b3e95a71d6e8d1f1f9da12c50b248cd
[NO ISSUE][REP] Pass NC active partitions from CC

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

Details:

- Pass NC active partitions from CC and set them
  during node bootstrap.
- Move local storage clean up to LocalStorageCleanupTask
  to clean up after all node partitions have been set.
- Maintain last LSN in master flush LSN to account for
  cases where the first LSN received from master is the
  same as the low water mark LSN.
- Reduce replica failure logging at error level.

Change-Id: I3782bb2be61f8a57ac45dd6dd6ae0942e83ddc40
Reviewed-on: https://asterix-gerrit.ics.uci.edu/c/asterixdb/+/12903
Integration-Tests: Jenkins <jenkins@fulliautomatix.ics.uci.edu>
Reviewed-by: Murtadha Hubail <mhubail@apache.org>
Reviewed-by: Ali Alsuliman <ali.al.solaiman@gmail.com>
Tested-by: Murtadha Hubail <mhubail@apache.org>
14 files changed:
asterixdb/asterix-app/src/main/java/org/apache/asterix/app/nc/ReplicaManager.java
asterixdb/asterix-app/src/main/java/org/apache/asterix/app/nc/task/LocalStorageCleanupTask.java
asterixdb/asterix-app/src/main/java/org/apache/asterix/app/nc/task/UpdateNodeStatusTask.java
asterixdb/asterix-app/src/main/java/org/apache/asterix/app/replication/NcLifecycleCoordinator.java
asterixdb/asterix-app/src/main/java/org/apache/asterix/app/replication/message/RegistrationTasksResponseMessage.java
asterixdb/asterix-app/src/main/java/org/apache/asterix/hyracks/bootstrap/NCApplication.java
asterixdb/asterix-common/src/main/java/org/apache/asterix/common/context/PrimaryIndexOperationTracker.java
asterixdb/asterix-common/src/main/java/org/apache/asterix/common/storage/IReplicaManager.java
asterixdb/asterix-common/src/main/java/org/apache/asterix/common/storage/IndexCheckpoint.java
asterixdb/asterix-replication/src/main/java/org/apache/asterix/replication/api/PartitionReplica.java
asterixdb/asterix-replication/src/main/java/org/apache/asterix/replication/logging/RemoteLogsNotifier.java
asterixdb/asterix-replication/src/main/java/org/apache/asterix/replication/management/IndexReplicationManager.java
asterixdb/asterix-replication/src/main/java/org/apache/asterix/replication/management/LogReplicationManager.java
asterixdb/asterix-replication/src/main/java/org/apache/asterix/replication/sync/ReplicaSynchronizer.java