File tree 2 files changed +5
-3
lines changed
server/src/test/java/org/elasticsearch/index/engine
2 files changed +5
-3
lines changed Original file line number Diff line number Diff line change @@ -308,9 +308,6 @@ tests:
308
308
- class : org.elasticsearch.packaging.test.DockerTests
309
309
method : test012SecurityCanBeDisabled
310
310
issue : https://github.com/elastic/elasticsearch/issues/116636
311
- - class : org.elasticsearch.index.engine.ThreadPoolMergeSchedulerTests
312
- method : testSchedulerCloseWaitsForRunningMerge
313
- issue : https://github.com/elastic/elasticsearch/issues/125236
314
311
- class : org.elasticsearch.index.shard.StoreRecoveryTests
315
312
method : testAddIndices
316
313
issue : https://github.com/elastic/elasticsearch/issues/124104
Original file line number Diff line number Diff line change @@ -508,18 +508,21 @@ public void testSchedulerCloseWaitsForRunningMerge() throws Exception {
508
508
)
509
509
) {
510
510
CountDownLatch mergeDoneLatch = new CountDownLatch (1 );
511
+ CountDownLatch mergeRunningLatch = new CountDownLatch (1 );
511
512
MergeSource mergeSource = mock (MergeSource .class );
512
513
OneMerge oneMerge = mock (OneMerge .class );
513
514
when (oneMerge .getStoreMergeInfo ()).thenReturn (getNewMergeInfo (randomLongBetween (1L , 10L )));
514
515
when (oneMerge .getMergeProgress ()).thenReturn (new MergePolicy .OneMergeProgress ());
515
516
when (mergeSource .getNextMerge ()).thenReturn (oneMerge , (OneMerge ) null );
516
517
doAnswer (invocation -> {
518
+ mergeRunningLatch .countDown ();
517
519
OneMerge merge = (OneMerge ) invocation .getArguments ()[0 ];
518
520
assertFalse (merge .isAborted ());
519
521
// wait to be signalled before completing the merge
520
522
mergeDoneLatch .await ();
521
523
return null ;
522
524
}).when (mergeSource ).merge (any (OneMerge .class ));
525
+ // submit the merge
523
526
threadPoolMergeScheduler .merge (mergeSource , randomFrom (MergeTrigger .values ()));
524
527
Thread t = new Thread (() -> {
525
528
try {
@@ -531,6 +534,8 @@ public void testSchedulerCloseWaitsForRunningMerge() throws Exception {
531
534
t .start ();
532
535
try {
533
536
assertTrue (t .isAlive ());
537
+ // wait for the merge to actually run
538
+ mergeRunningLatch .await ();
534
539
// ensure the merge scheduler is effectively "closed"
535
540
assertBusy (() -> {
536
541
MergeSource mergeSource2 = mock (MergeSource .class );
You can’t perform that action at this time.
0 commit comments