@@ -78,7 +78,7 @@ func (s *operatorHandlerSuite) SetupTest() {
78
78
s .mockResource .ClusterMetadata .EXPECT ().GetCurrentClusterName ().Return (uuid .New ()).AnyTimes ()
79
79
80
80
args := NewOperatorHandlerImplArgs {
81
- & Config {},
81
+ & Config {NumHistoryShards : 4 },
82
82
nil ,
83
83
s .mockResource .ESClient ,
84
84
s .mockResource .Logger ,
@@ -506,7 +506,7 @@ func (s *operatorHandlerSuite) Test_AddOrUpdateRemoteCluster_RecordFound_Success
506
506
& adminservice.DescribeClusterResponse {
507
507
ClusterId : clusterId ,
508
508
ClusterName : clusterName ,
509
- HistoryShardCount : 0 ,
509
+ HistoryShardCount : 4 ,
510
510
FailoverVersionIncrement : 0 ,
511
511
InitialFailoverVersion : 0 ,
512
512
IsGlobalNamespaceEnabled : true ,
@@ -518,7 +518,7 @@ func (s *operatorHandlerSuite) Test_AddOrUpdateRemoteCluster_RecordFound_Success
518
518
s .mockResource .ClusterMetadataMgr .EXPECT ().SaveClusterMetadata (gomock .Any (), & persistence.SaveClusterMetadataRequest {
519
519
ClusterMetadata : persistencespb.ClusterMetadata {
520
520
ClusterName : clusterName ,
521
- HistoryShardCount : 0 ,
521
+ HistoryShardCount : 4 ,
522
522
ClusterId : clusterId ,
523
523
ClusterAddress : rpcAddress ,
524
524
FailoverVersionIncrement : 0 ,
@@ -545,7 +545,7 @@ func (s *operatorHandlerSuite) Test_AddOrUpdateRemoteCluster_RecordNotFound_Succ
545
545
& adminservice.DescribeClusterResponse {
546
546
ClusterId : clusterId ,
547
547
ClusterName : clusterName ,
548
- HistoryShardCount : 0 ,
548
+ HistoryShardCount : 4 ,
549
549
FailoverVersionIncrement : 0 ,
550
550
InitialFailoverVersion : 0 ,
551
551
IsGlobalNamespaceEnabled : true ,
@@ -557,7 +557,7 @@ func (s *operatorHandlerSuite) Test_AddOrUpdateRemoteCluster_RecordNotFound_Succ
557
557
s .mockResource .ClusterMetadataMgr .EXPECT ().SaveClusterMetadata (gomock .Any (), & persistence.SaveClusterMetadataRequest {
558
558
ClusterMetadata : persistencespb.ClusterMetadata {
559
559
ClusterName : clusterName ,
560
- HistoryShardCount : 0 ,
560
+ HistoryShardCount : 4 ,
561
561
ClusterId : clusterId ,
562
562
ClusterAddress : rpcAddress ,
563
563
FailoverVersionIncrement : 0 ,
@@ -614,7 +614,7 @@ func (s *operatorHandlerSuite) Test_AddOrUpdateRemoteCluster_ValidationError_Fai
614
614
s .IsType (& serviceerror.InvalidArgument {}, err )
615
615
}
616
616
617
- func (s * operatorHandlerSuite ) Test_AddOrUpdateRemoteCluster_ValidationError_ShardCountMismatch () {
617
+ func (s * operatorHandlerSuite ) Test_AddOrUpdateRemoteCluster_ValidationError_ShardCount_Invalid () {
618
618
var rpcAddress = uuid .New ()
619
619
var clusterName = uuid .New ()
620
620
var clusterId = uuid .New ()
@@ -627,7 +627,7 @@ func (s *operatorHandlerSuite) Test_AddOrUpdateRemoteCluster_ValidationError_Sha
627
627
& adminservice.DescribeClusterResponse {
628
628
ClusterId : clusterId ,
629
629
ClusterName : clusterName ,
630
- HistoryShardCount : 1000 ,
630
+ HistoryShardCount : 5 ,
631
631
FailoverVersionIncrement : 0 ,
632
632
InitialFailoverVersion : 0 ,
633
633
IsGlobalNamespaceEnabled : true ,
@@ -637,6 +637,46 @@ func (s *operatorHandlerSuite) Test_AddOrUpdateRemoteCluster_ValidationError_Sha
637
637
s .IsType (& serviceerror.InvalidArgument {}, err )
638
638
}
639
639
640
+ func (s * operatorHandlerSuite ) Test_AddOrUpdateRemoteCluster_ShardCount_Multiple () {
641
+ var rpcAddress = uuid .New ()
642
+ var clusterName = uuid .New ()
643
+ var clusterId = uuid .New ()
644
+ var recordVersion int64 = 5
645
+
646
+ s .mockResource .ClusterMetadata .EXPECT ().GetFailoverVersionIncrement ().Return (int64 (0 ))
647
+ s .mockResource .ClusterMetadata .EXPECT ().GetAllClusterInfo ().Return (make (map [string ]cluster.ClusterInformation ))
648
+ s .mockResource .ClientFactory .EXPECT ().NewRemoteAdminClientWithTimeout (rpcAddress , gomock .Any (), gomock .Any ()).Return (
649
+ s .mockResource .RemoteAdminClient ,
650
+ )
651
+ s .mockResource .RemoteAdminClient .EXPECT ().DescribeCluster (gomock .Any (), & adminservice.DescribeClusterRequest {}).Return (
652
+ & adminservice.DescribeClusterResponse {
653
+ ClusterId : clusterId ,
654
+ ClusterName : clusterName ,
655
+ HistoryShardCount : 16 ,
656
+ FailoverVersionIncrement : 0 ,
657
+ InitialFailoverVersion : 0 ,
658
+ IsGlobalNamespaceEnabled : true ,
659
+ }, nil )
660
+ s .mockResource .ClusterMetadataMgr .EXPECT ().GetClusterMetadata (gomock .Any (), & persistence.GetClusterMetadataRequest {ClusterName : clusterName }).Return (
661
+ & persistence.GetClusterMetadataResponse {
662
+ Version : recordVersion ,
663
+ }, nil )
664
+ s .mockResource .ClusterMetadataMgr .EXPECT ().SaveClusterMetadata (gomock .Any (), & persistence.SaveClusterMetadataRequest {
665
+ ClusterMetadata : persistencespb.ClusterMetadata {
666
+ ClusterName : clusterName ,
667
+ HistoryShardCount : 16 ,
668
+ ClusterId : clusterId ,
669
+ ClusterAddress : rpcAddress ,
670
+ FailoverVersionIncrement : 0 ,
671
+ InitialFailoverVersion : 0 ,
672
+ IsGlobalNamespaceEnabled : true ,
673
+ },
674
+ Version : recordVersion ,
675
+ }).Return (true , nil )
676
+ _ , err := s .handler .AddOrUpdateRemoteCluster (context .Background (), & operatorservice.AddOrUpdateRemoteClusterRequest {FrontendAddress : rpcAddress })
677
+ s .NoError (err )
678
+ }
679
+
640
680
func (s * operatorHandlerSuite ) Test_AddOrUpdateRemoteCluster_ValidationError_GlobalNamespaceDisabled () {
641
681
var rpcAddress = uuid .New ()
642
682
var clusterName = uuid .New ()
@@ -650,7 +690,7 @@ func (s *operatorHandlerSuite) Test_AddOrUpdateRemoteCluster_ValidationError_Glo
650
690
& adminservice.DescribeClusterResponse {
651
691
ClusterId : clusterId ,
652
692
ClusterName : clusterName ,
653
- HistoryShardCount : 0 ,
693
+ HistoryShardCount : 4 ,
654
694
FailoverVersionIncrement : 0 ,
655
695
InitialFailoverVersion : 0 ,
656
696
IsGlobalNamespaceEnabled : false ,
@@ -676,7 +716,7 @@ func (s *operatorHandlerSuite) Test_AddOrUpdateRemoteCluster_ValidationError_Ini
676
716
& adminservice.DescribeClusterResponse {
677
717
ClusterId : clusterId ,
678
718
ClusterName : clusterName ,
679
- HistoryShardCount : 0 ,
719
+ HistoryShardCount : 4 ,
680
720
FailoverVersionIncrement : 0 ,
681
721
InitialFailoverVersion : 0 ,
682
722
IsGlobalNamespaceEnabled : true ,
@@ -714,7 +754,7 @@ func (s *operatorHandlerSuite) Test_AddOrUpdateRemoteCluster_GetClusterMetadata_
714
754
& adminservice.DescribeClusterResponse {
715
755
ClusterId : clusterId ,
716
756
ClusterName : clusterName ,
717
- HistoryShardCount : 0 ,
757
+ HistoryShardCount : 4 ,
718
758
FailoverVersionIncrement : 0 ,
719
759
InitialFailoverVersion : 0 ,
720
760
IsGlobalNamespaceEnabled : true ,
@@ -741,7 +781,7 @@ func (s *operatorHandlerSuite) Test_AddOrUpdateRemoteCluster_SaveClusterMetadata
741
781
& adminservice.DescribeClusterResponse {
742
782
ClusterId : clusterId ,
743
783
ClusterName : clusterName ,
744
- HistoryShardCount : 0 ,
784
+ HistoryShardCount : 4 ,
745
785
FailoverVersionIncrement : 0 ,
746
786
InitialFailoverVersion : 0 ,
747
787
IsGlobalNamespaceEnabled : true ,
@@ -753,7 +793,7 @@ func (s *operatorHandlerSuite) Test_AddOrUpdateRemoteCluster_SaveClusterMetadata
753
793
s .mockResource .ClusterMetadataMgr .EXPECT ().SaveClusterMetadata (gomock .Any (), & persistence.SaveClusterMetadataRequest {
754
794
ClusterMetadata : persistencespb.ClusterMetadata {
755
795
ClusterName : clusterName ,
756
- HistoryShardCount : 0 ,
796
+ HistoryShardCount : 4 ,
757
797
ClusterId : clusterId ,
758
798
ClusterAddress : rpcAddress ,
759
799
FailoverVersionIncrement : 0 ,
@@ -780,7 +820,7 @@ func (s *operatorHandlerSuite) Test_AddOrUpdateRemoteCluster_SaveClusterMetadata
780
820
& adminservice.DescribeClusterResponse {
781
821
ClusterId : clusterId ,
782
822
ClusterName : clusterName ,
783
- HistoryShardCount : 0 ,
823
+ HistoryShardCount : 4 ,
784
824
FailoverVersionIncrement : 0 ,
785
825
InitialFailoverVersion : 0 ,
786
826
IsGlobalNamespaceEnabled : true ,
@@ -792,7 +832,7 @@ func (s *operatorHandlerSuite) Test_AddOrUpdateRemoteCluster_SaveClusterMetadata
792
832
s .mockResource .ClusterMetadataMgr .EXPECT ().SaveClusterMetadata (gomock .Any (), & persistence.SaveClusterMetadataRequest {
793
833
ClusterMetadata : persistencespb.ClusterMetadata {
794
834
ClusterName : clusterName ,
795
- HistoryShardCount : 0 ,
835
+ HistoryShardCount : 4 ,
796
836
ClusterId : clusterId ,
797
837
ClusterAddress : rpcAddress ,
798
838
FailoverVersionIncrement : 0 ,
0 commit comments