@@ -57,14 +57,9 @@ public void testCleanupWhenEmpty() throws Exception {
5757 MetaStateService metaStateService = new MetaStateService (env , xContentRegistry ());
5858 DanglingIndicesState danglingState = createDanglingIndicesState (env , metaStateService );
5959
60- // Given an empty state
6160 assertTrue (danglingState .getDanglingIndices ().isEmpty ());
62-
63- // When passed an empty metadata
6461 MetaData metaData = MetaData .builder ().build ();
6562 danglingState .cleanupAllocatedDangledIndices (metaData );
66-
67- // Then the state remains empty
6863 assertTrue (danglingState .getDanglingIndices ().isEmpty ());
6964 }
7065 }
@@ -73,36 +68,24 @@ public void testDanglingIndicesDiscovery() throws Exception {
7368 try (NodeEnvironment env = newNodeEnvironment ()) {
7469 MetaStateService metaStateService = new MetaStateService (env , xContentRegistry ());
7570 DanglingIndicesState danglingState = createDanglingIndicesState (env , metaStateService );
76-
77- // Given an empty state
7871 assertTrue (danglingState .getDanglingIndices ().isEmpty ());
79-
80- // When passed a metdata with an unknown index
8172 MetaData metaData = MetaData .builder ().build ();
8273 final Settings .Builder settings = Settings .builder ().put (indexSettings ).put (IndexMetaData .SETTING_INDEX_UUID , "test1UUID" );
8374 IndexMetaData dangledIndex = IndexMetaData .builder ("test1" ).settings (settings ).build ();
8475 metaStateService .writeIndex ("test_write" , dangledIndex );
8576 Map <Index , IndexMetaData > newDanglingIndices = danglingState .findNewDanglingIndices (metaData );
86-
87- // Then that index is considered dangling
8877 assertTrue (newDanglingIndices .containsKey (dangledIndex .getIndex ()));
89-
90- // And when passed another metadata with that index
9178 metaData = MetaData .builder ().put (dangledIndex , false ).build ();
9279 newDanglingIndices = danglingState .findNewDanglingIndices (metaData );
93-
94- // Then then index is not considered to be a new dangling index for a second time
9580 assertFalse (newDanglingIndices .containsKey (dangledIndex .getIndex ()));
9681 }
9782 }
9883
9984 public void testInvalidIndexFolder () throws Exception {
10085 try (NodeEnvironment env = newNodeEnvironment ()) {
101- // Given an empty state
10286 MetaStateService metaStateService = new MetaStateService (env , xContentRegistry ());
10387 DanglingIndicesState danglingState = createDanglingIndicesState (env , metaStateService );
10488
105- // When passed settings for an index whose folder does not exist
10689 MetaData metaData = MetaData .builder ().build ();
10790 final String uuid = "test1UUID" ;
10891 final Settings .Builder settings = Settings .builder ().put (indexSettings ).put (IndexMetaData .SETTING_INDEX_UUID , uuid );
@@ -113,8 +96,6 @@ public void testInvalidIndexFolder() throws Exception {
11396 Files .move (path , path .resolveSibling ("invalidUUID" ), StandardCopyOption .ATOMIC_MOVE );
11497 }
11598 }
116-
117- // Then an exception is thrown describing the problem
11899 try {
119100 danglingState .findNewDanglingIndices (metaData );
120101 fail ("no exception thrown for invalid folder name" );
@@ -170,31 +151,24 @@ public void testDanglingProcessing() throws Exception {
170151
171152 public void testDanglingIndicesNotImportedWhenTombstonePresent () throws Exception {
172153 try (NodeEnvironment env = newNodeEnvironment ()) {
173- // Given an empty state
174154 MetaStateService metaStateService = new MetaStateService (env , xContentRegistry ());
175155 DanglingIndicesState danglingState = createDanglingIndicesState (env , metaStateService );
176156
177- // When passed a dangling index
178157 final Settings .Builder settings = Settings .builder ().put (indexSettings ).put (IndexMetaData .SETTING_INDEX_UUID , "test1UUID" );
179158 IndexMetaData dangledIndex = IndexMetaData .builder ("test1" ).settings (settings ).build ();
180159 metaStateService .writeIndex ("test_write" , dangledIndex );
181160
182- // And there is a tombstone for that index
183161 final IndexGraveyard graveyard = IndexGraveyard .builder ().addTombstone (dangledIndex .getIndex ()).build ();
184162 final MetaData metaData = MetaData .builder ().indexGraveyard (graveyard ).build ();
185-
186- // Then that index is not imported
187163 assertThat (danglingState .findNewDanglingIndices (metaData ).size (), equalTo (0 ));
188164 }
189165 }
190166
191167 public void testDanglingIndicesStripAliases () throws Exception {
192168 try (NodeEnvironment env = newNodeEnvironment ()) {
193- // Given an empty state
194169 MetaStateService metaStateService = new MetaStateService (env , xContentRegistry ());
195170 DanglingIndicesState danglingState = createDanglingIndicesState (env , metaStateService );
196171
197- // When passed an index that has an alias
198172 final Settings .Builder settings = Settings .builder ().put (indexSettings ).put (IndexMetaData .SETTING_INDEX_UUID , "test1UUID" );
199173 IndexMetaData dangledIndex = IndexMetaData .builder ("test1" )
200174 .settings (settings )
@@ -205,13 +179,9 @@ public void testDanglingIndicesStripAliases() throws Exception {
205179
206180 final MetaData metaData = MetaData .builder ().build ();
207181 Map <Index , IndexMetaData > newDanglingIndices = danglingState .findNewDanglingIndices (metaData );
208-
209- // Then the index is identifying as dangling
210182 assertThat (newDanglingIndices .size (), equalTo (1 ));
211183 Map .Entry <Index , IndexMetaData > entry = newDanglingIndices .entrySet ().iterator ().next ();
212184 assertThat (entry .getKey ().getName (), equalTo ("test1" ));
213-
214- // And the alias is removed
215185 assertThat (entry .getValue ().getAliases ().size (), equalTo (0 ));
216186 }
217187 }
@@ -220,11 +190,10 @@ public void testDanglingIndicesAreNotAllocatedWhenDisabled() throws Exception {
220190 try (NodeEnvironment env = newNodeEnvironment ()) {
221191 MetaStateService metaStateService = new MetaStateService (env , xContentRegistry ());
222192 LocalAllocateDangledIndices localAllocateDangledIndices = mock (LocalAllocateDangledIndices .class );
223- DanglingIndicesState danglingState = createDanglingIndicesState (env , metaStateService , localAllocateDangledIndices );
193+ DanglingIndicesState danglingState = createDanglingIndicesState (env , metaStateService , localAllocateDangledIndices , false );
224194
225195 assertTrue (danglingState .getDanglingIndices ().isEmpty ());
226196
227- // Given a metadata that does not enable allocation of dangling indices
228197 MetaData metaData = MetaData .builder ().build ();
229198
230199 final Settings .Builder settings = Settings .builder ().put (indexSettings ).put (IndexMetaData .SETTING_INDEX_UUID , "test1UUID" );
@@ -233,10 +202,8 @@ public void testDanglingIndicesAreNotAllocatedWhenDisabled() throws Exception {
233202
234203 danglingState .findNewAndAddDanglingIndices (metaData );
235204
236- // When calling the allocate method
237205 danglingState .allocateDanglingIndices ();
238206
239- // Then allocation is not attempted
240207 verify (localAllocateDangledIndices , never ()).allocateDangled (any (), any ());
241208 }
242209 }
@@ -245,13 +212,10 @@ public void testDanglingIndicesAreAllocatedWhenEnabled() throws Exception {
245212 try (NodeEnvironment env = newNodeEnvironment ()) {
246213 MetaStateService metaStateService = new MetaStateService (env , xContentRegistry ());
247214 LocalAllocateDangledIndices localAllocateDangledIndices = mock (LocalAllocateDangledIndices .class );
248- DanglingIndicesState danglingState = createDanglingIndicesState (env , metaStateService , localAllocateDangledIndices );
215+ DanglingIndicesState danglingState = createDanglingIndicesState (env , metaStateService , localAllocateDangledIndices , true );
249216
250217 assertTrue (danglingState .getDanglingIndices ().isEmpty ());
251218
252- // Given a state where automatic allocation is enabled
253- danglingState .setAllocateDanglingIndicesSetting (true );
254-
255219 MetaData metaData = MetaData .builder ().build ();
256220
257221 final Settings .Builder settings = Settings .builder ().put (indexSettings ).put (IndexMetaData .SETTING_INDEX_UUID , "test1UUID" );
@@ -260,24 +224,23 @@ public void testDanglingIndicesAreAllocatedWhenEnabled() throws Exception {
260224
261225 danglingState .findNewAndAddDanglingIndices (metaData );
262226
263- // When calling the allocate method
264227 danglingState .allocateDanglingIndices ();
265228
266- // Ensure that allocation is attempted
267229 verify (localAllocateDangledIndices ).allocateDangled (any (), any ());
268230 }
269231 }
270232
271233 private DanglingIndicesState createDanglingIndicesState (NodeEnvironment env , MetaStateService metaStateService ) {
272- return createDanglingIndicesState (env , metaStateService , null );
234+ return createDanglingIndicesState (env , metaStateService , null , true );
273235 }
274236
275237 private DanglingIndicesState createDanglingIndicesState (
276238 NodeEnvironment env ,
277239 MetaStateService metaStateService ,
278- LocalAllocateDangledIndices indexAllocator
240+ LocalAllocateDangledIndices indexAllocator ,
241+ boolean shouldAutoImport
279242 ) {
280- final Settings allocateSettings = Settings .builder ().put (AUTO_IMPORT_DANGLING_INDICES_SETTING .getKey (), false ).build ();
243+ final Settings allocateSettings = Settings .builder ().put (AUTO_IMPORT_DANGLING_INDICES_SETTING .getKey (), shouldAutoImport ).build ();
281244
282245 final ClusterService clusterServiceMock = mock (ClusterService .class );
283246 when (clusterServiceMock .getClusterSettings ()).thenReturn (
0 commit comments