66
77package org .elasticsearch .xpack .ccr ;
88
9- import com .carrotsearch .hppc .cursors .ObjectCursor ;
109import org .elasticsearch .ElasticsearchException ;
1110import org .elasticsearch .action .ActionListener ;
1211import org .elasticsearch .action .admin .cluster .settings .ClusterUpdateSettingsRequest ;
4443import org .elasticsearch .plugins .Plugin ;
4544import org .elasticsearch .snapshots .RestoreInfo ;
4645import org .elasticsearch .snapshots .RestoreService ;
47- import org .elasticsearch .test .junit .annotations .TestLogging ;
4846import org .elasticsearch .test .transport .MockTransportService ;
4947import org .elasticsearch .transport .ConnectTransportException ;
5048import org .elasticsearch .transport .RemoteTransportException ;
8886import static org .hamcrest .Matchers .greaterThan ;
8987import static org .hamcrest .Matchers .hasSize ;
9088
91- @ TestLogging (value = "org.elasticsearch.xpack.ccr:trace,org.elasticsearch.indices.recovery:trace,org.elasticsearch.index.seqno:debug" )
9289public class CcrRetentionLeaseIT extends CcrIntegTestCase {
9390
9491 public static final class RetentionLeaseRenewIntervalSettingPlugin extends Plugin {
@@ -224,9 +221,9 @@ public void testRetentionLeaseIsRenewedDuringRecovery() throws Exception {
224221
225222 // block the recovery from completing; this ensures the background sync is still running
226223 final ClusterStateResponse followerClusterState = followerClient ().admin ().cluster ().prepareState ().clear ().setNodes (true ).get ();
227- for (final ObjectCursor < DiscoveryNode > senderNode : followerClusterState .getState ().nodes (). getNodes (). values ()) {
224+ for (final DiscoveryNode senderNode : followerClusterState .getState ().nodes ()) {
228225 final MockTransportService senderTransportService =
229- (MockTransportService ) getFollowerCluster ().getInstance (TransportService .class , senderNode .value . getName ());
226+ (MockTransportService ) getFollowerCluster ().getInstance (TransportService .class , senderNode .getName ());
230227 senderTransportService .addSendBehavior (
231228 (connection , requestId , action , request , options ) -> {
232229 if (ClearCcrRestoreSessionAction .NAME .equals (action )
@@ -248,9 +245,9 @@ public void testRetentionLeaseIsRenewedDuringRecovery() throws Exception {
248245 assertRetentionLeaseRenewal (numberOfShards , numberOfReplicas , followerIndex , leaderIndex );
249246 latch .countDown ();
250247 } finally {
251- for (final ObjectCursor < DiscoveryNode > senderNode : followerClusterState .getState ().nodes (). getDataNodes (). values ()) {
248+ for (final DiscoveryNode senderNode : followerClusterState .getState ().nodes ()) {
252249 final MockTransportService senderTransportService =
253- (MockTransportService ) getFollowerCluster ().getInstance (TransportService .class , senderNode .value . getName ());
250+ (MockTransportService ) getFollowerCluster ().getInstance (TransportService .class , senderNode .getName ());
254251 senderTransportService .clearAllRules ();
255252 }
256253 }
@@ -405,9 +402,9 @@ public void testUnfollowRemovesRetentionLeases() throws Exception {
405402
406403 final ClusterStateResponse followerClusterState = followerClient ().admin ().cluster ().prepareState ().clear ().setNodes (true ).get ();
407404 try {
408- for (final ObjectCursor < DiscoveryNode > senderNode : followerClusterState .getState ().nodes (). getNodes (). values ()) {
405+ for (final DiscoveryNode senderNode : followerClusterState .getState ().nodes ()) {
409406 final MockTransportService senderTransportService =
410- (MockTransportService ) getFollowerCluster ().getInstance (TransportService .class , senderNode .value . getName ());
407+ (MockTransportService ) getFollowerCluster ().getInstance (TransportService .class , senderNode .getName ());
411408 senderTransportService .addSendBehavior (
412409 (connection , requestId , action , request , options ) -> {
413410 if (RetentionLeaseActions .Remove .ACTION_NAME .equals (action )
@@ -456,9 +453,9 @@ public void testUnfollowRemovesRetentionLeases() throws Exception {
456453 assertThat (Strings .toString (shardStats ), shardStats .getRetentionLeaseStats ().retentionLeases ().leases (), empty ());
457454 }
458455 } finally {
459- for (final ObjectCursor < DiscoveryNode > senderNode : followerClusterState .getState ().nodes (). getDataNodes (). values ()) {
456+ for (final DiscoveryNode senderNode : followerClusterState .getState ().nodes ()) {
460457 final MockTransportService senderTransportService =
461- (MockTransportService ) getFollowerCluster ().getInstance (TransportService .class , senderNode .value . getName ());
458+ (MockTransportService ) getFollowerCluster ().getInstance (TransportService .class , senderNode .getName ());
462459 senderTransportService .clearAllRules ();
463460 }
464461 }
@@ -488,9 +485,9 @@ public void testUnfollowFailsToRemoveRetentionLeases() throws Exception {
488485
489486 final ClusterStateResponse followerClusterState = followerClient ().admin ().cluster ().prepareState ().clear ().setNodes (true ).get ();
490487 try {
491- for (final ObjectCursor < DiscoveryNode > senderNode : followerClusterState .getState ().nodes (). getNodes (). values ()) {
488+ for (final DiscoveryNode senderNode : followerClusterState .getState ().nodes ()) {
492489 final MockTransportService senderTransportService =
493- (MockTransportService ) getFollowerCluster ().getInstance (TransportService .class , senderNode .value . getName ());
490+ (MockTransportService ) getFollowerCluster ().getInstance (TransportService .class , senderNode .getName ());
494491 senderTransportService .addSendBehavior (
495492 (connection , requestId , action , request , options ) -> {
496493 if (RetentionLeaseActions .Remove .ACTION_NAME .equals (action )
@@ -526,9 +523,9 @@ public void testUnfollowFailsToRemoveRetentionLeases() throws Exception {
526523 getLeaderCluster ().getClusterName (),
527524 new Index (leaderIndex , leaderUUID ))));
528525 } finally {
529- for (final ObjectCursor < DiscoveryNode > senderNode : followerClusterState .getState ().nodes (). getDataNodes (). values ()) {
526+ for (final DiscoveryNode senderNode : followerClusterState .getState ().nodes ()) {
530527 final MockTransportService senderTransportService =
531- (MockTransportService ) getFollowerCluster ().getInstance (TransportService .class , senderNode .value . getName ());
528+ (MockTransportService ) getFollowerCluster ().getInstance (TransportService .class , senderNode .getName ());
532529 senderTransportService .clearAllRules ();
533530 }
534531 }
@@ -766,35 +763,36 @@ public void testRetentionLeaseIsAddedIfItDisappearsWhileFollowing() throws Excep
766763 final CountDownLatch latch = new CountDownLatch (1 );
767764
768765 final ClusterStateResponse followerClusterState = followerClient ().admin ().cluster ().prepareState ().clear ().setNodes (true ).get ();
769- for (final ObjectCursor <DiscoveryNode > senderNode : followerClusterState .getState ().nodes ().getNodes ().values ()) {
770- final MockTransportService senderTransportService =
771- (MockTransportService ) getFollowerCluster ().getInstance (TransportService .class , senderNode .value .getName ());
772- senderTransportService .addSendBehavior (
766+ try {
767+ for (final DiscoveryNode senderNode : followerClusterState .getState ().nodes ()) {
768+ final MockTransportService senderTransportService =
769+ (MockTransportService ) getFollowerCluster ().getInstance (TransportService .class , senderNode .getName ());
770+ senderTransportService .addSendBehavior (
773771 (connection , requestId , action , request , options ) -> {
774772 if (RetentionLeaseActions .Renew .ACTION_NAME .equals (action )
775- || TransportActionProxy .getProxyAction (RetentionLeaseActions .Renew .ACTION_NAME ).equals (action )) {
773+ || TransportActionProxy .getProxyAction (RetentionLeaseActions .Renew .ACTION_NAME ).equals (action )) {
776774 senderTransportService .clearAllRules ();
777775 final RetentionLeaseActions .RenewRequest renewRequest = (RetentionLeaseActions .RenewRequest ) request ;
778776 final String primaryShardNodeId =
779- getLeaderCluster ()
780- .clusterService ()
781- .state ()
782- .routingTable ()
783- .index (leaderIndex )
784- .shard (renewRequest .getShardId ().id ())
785- .primaryShard ()
786- .currentNodeId ();
777+ getLeaderCluster ()
778+ .clusterService ()
779+ .state ()
780+ .routingTable ()
781+ .index (leaderIndex )
782+ .shard (renewRequest .getShardId ().id ())
783+ .primaryShard ()
784+ .currentNodeId ();
787785 final String primaryShardNodeName =
788- getLeaderCluster ().clusterService ().state ().nodes ().get (primaryShardNodeId ).getName ();
786+ getLeaderCluster ().clusterService ().state ().nodes ().get (primaryShardNodeId ).getName ();
789787 final IndexShard primary =
790- getLeaderCluster ()
791- .getInstance (IndicesService .class , primaryShardNodeName )
792- .getShardOrNull (renewRequest .getShardId ());
788+ getLeaderCluster ()
789+ .getInstance (IndicesService .class , primaryShardNodeName )
790+ .getShardOrNull (renewRequest .getShardId ());
793791 final CountDownLatch innerLatch = new CountDownLatch (1 );
794792 // this forces the background renewal from following to face a retention lease not found exception
795793 primary .removeRetentionLease (
796- getRetentionLeaseId (followerIndex , leaderIndex ),
797- ActionListener .wrap (r -> innerLatch .countDown (), e -> fail (e .toString ())));
794+ getRetentionLeaseId (followerIndex , leaderIndex ),
795+ ActionListener .wrap (r -> innerLatch .countDown (), e -> fail (e .toString ())));
798796
799797 try {
800798 innerLatch .await ();
@@ -807,11 +805,18 @@ public void testRetentionLeaseIsAddedIfItDisappearsWhileFollowing() throws Excep
807805 }
808806 connection .sendRequest (requestId , action , request , options );
809807 });
810- }
808+ }
811809
812- latch .await ();
810+ latch .await ();
813811
814- assertRetentionLeaseRenewal (numberOfShards , numberOfReplicas , followerIndex , leaderIndex );
812+ assertRetentionLeaseRenewal (numberOfShards , numberOfReplicas , followerIndex , leaderIndex );
813+ } finally {
814+ for (final DiscoveryNode senderNode : followerClusterState .getState ().nodes ()) {
815+ final MockTransportService senderTransportService =
816+ (MockTransportService ) getFollowerCluster ().getInstance (TransportService .class , senderNode .getName ());
817+ senderTransportService .clearAllRules ();
818+ }
819+ }
815820 }
816821
817822 /**
@@ -858,9 +863,9 @@ public void testPeriodicRenewalDoesNotAddRetentionLeaseAfterUnfollow() throws Ex
858863 final ClusterStateResponse followerClusterState = followerClient ().admin ().cluster ().prepareState ().clear ().setNodes (true ).get ();
859864
860865 try {
861- for (final ObjectCursor < DiscoveryNode > senderNode : followerClusterState .getState ().nodes (). getNodes (). values ()) {
866+ for (final DiscoveryNode senderNode : followerClusterState .getState ().nodes ()) {
862867 final MockTransportService senderTransportService =
863- (MockTransportService ) getFollowerCluster ().getInstance (TransportService .class , senderNode .value . getName ());
868+ (MockTransportService ) getFollowerCluster ().getInstance (TransportService .class , senderNode .getName ());
864869 senderTransportService .addSendBehavior (
865870 (connection , requestId , action , request , options ) -> {
866871 if (RetentionLeaseActions .Renew .ACTION_NAME .equals (action )
@@ -914,9 +919,9 @@ public void onResponseReceived(
914919 assertThat (Strings .toString (shardStats ), shardStats .getRetentionLeaseStats ().retentionLeases ().leases (), empty ());
915920 }
916921 } finally {
917- for (final ObjectCursor < DiscoveryNode > senderNode : followerClusterState .getState ().nodes (). getDataNodes (). values ()) {
922+ for (final DiscoveryNode senderNode : followerClusterState .getState ().nodes ()) {
918923 final MockTransportService senderTransportService =
919- (MockTransportService ) getFollowerCluster ().getInstance (TransportService .class , senderNode . value .getName ());
924+ (MockTransportService ) getFollowerCluster ().getInstance (TransportService .class , senderNode .getName ());
920925 senderTransportService .clearAllRules ();
921926 }
922927 }
0 commit comments