Просмотр исходного кода

defect 706
replica is not set based upon open flags as per specification


git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@744 fd59a12c-fef9-0310-b244-a6a79926bd2f

Steven Dake 20 лет назад
Родитель
Сommit
23c2dd0b53
1 измененных файлов с 4 добавлено и 1 удалено
  1. 4 1
      exec/ckpt.c

+ 4 - 1
exec/ckpt.c

@@ -1369,9 +1369,12 @@ static int message_handler_req_exec_ckpt_checkpointopen (void *message, struct i
 		ckptCheckpoint->retention_timer = 0;
 		ckptCheckpoint->expired = 0;
 		
-		if ((ckptCheckpoint->checkpointCreationAttributes.creationFlags & SA_CKPT_WR_ALL_REPLICAS) == 1 &&
+		if ((ckptCheckpoint->checkpointCreationAttributes.creationFlags & (SA_CKPT_WR_ACTIVE_REPLICA | SA_CKPT_WR_ACTIVE_REPLICA_WEAK)) &&
 			(ckptCheckpoint->checkpointCreationAttributes.creationFlags & SA_CKPT_CHECKPOINT_COLLOCATED) == 0) {
 			ckptCheckpoint->active_replica_set = 1;
+		} else
+		if ((ckptCheckpoint->checkpointCreationAttributes.creationFlags & SA_CKPT_WR_ALL_REPLICAS) == 1) {
+			ckptCheckpoint->active_replica_set = 1;
 		} else {
 			ckptCheckpoint->active_replica_set = 0;
 		}