From 0e24776c35dda5fe627547569fc3d626bd498828 Mon Sep 17 00:00:00 2001 From: labkey-jeckels Date: Tue, 22 Jul 2025 21:05:11 -0700 Subject: [PATCH 1/3] Track search work by container; purge on delete --- .../test/util/search/SearchAdminAPIHelper.java | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/src/org/labkey/test/util/search/SearchAdminAPIHelper.java b/src/org/labkey/test/util/search/SearchAdminAPIHelper.java index 3a73eface6..28e8a52f5d 100644 --- a/src/org/labkey/test/util/search/SearchAdminAPIHelper.java +++ b/src/org/labkey/test/util/search/SearchAdminAPIHelper.java @@ -42,6 +42,13 @@ public abstract class SearchAdminAPIHelper { + @LogMethod(quiet = true) + public static void purgeForContainer(String containerPath) + { + var cmd = new SimplePostCommand("search", "cancelIndexing"); + executeCommand(cmd, containerPath); + } + public static void waitForIndexer() { waitForIndexer(WAIT_FOR_PAGE); @@ -57,7 +64,7 @@ public static void waitForIndexer(int timeout) var cmd = new SimplePostCommand("search", "waitForIndexer"); cmd.setTimeout(timeout); - executeWaitForIndexer(cmd); + executeCommand(cmd, null); } public static void waitForIndexerBackground() @@ -73,7 +80,7 @@ public static void waitForIndexerBackground(int timeout) cmd.setTimeout(timeout); cmd.setParameters(Map.of("priority", "background")); - executeWaitForIndexer(cmd); + executeCommand(cmd, null); } @LogMethod(quiet = true) @@ -106,11 +113,11 @@ public static void waitForSearchServiceBootstrap(Connection cn) while (!timer.isTimedOut()); } - private static void executeWaitForIndexer(PostCommand cmd) + private static void executeCommand(PostCommand cmd, String containerPath) { try { - var response = cmd.execute(WebTestHelper.getRemoteApiConnection(), null); + var response = cmd.execute(WebTestHelper.getRemoteApiConnection(), containerPath); assertEquals("WaitForIndexer action timed out", HttpStatus.SC_OK, response.getStatusCode()); } catch (Exception cmdException) { From dd0053f2cd684950563f7137bec8893c7adf29ff Mon Sep 17 00:00:00 2001 From: labkey-jeckels Date: Fri, 25 Jul 2025 15:48:34 -0700 Subject: [PATCH 2/3] Revamp priorities --- src/org/labkey/test/util/search/SearchAdminAPIHelper.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/org/labkey/test/util/search/SearchAdminAPIHelper.java b/src/org/labkey/test/util/search/SearchAdminAPIHelper.java index 28e8a52f5d..3d47728f29 100644 --- a/src/org/labkey/test/util/search/SearchAdminAPIHelper.java +++ b/src/org/labkey/test/util/search/SearchAdminAPIHelper.java @@ -78,7 +78,7 @@ public static void waitForIndexerBackground(int timeout) // Invoke a special server action that waits until all previous indexer tasks are complete, even wait for background indexing tasks to complete (e.g. deleteContainer) var cmd = new SimplePostCommand("search", "waitForIndexer"); cmd.setTimeout(timeout); - cmd.setParameters(Map.of("priority", "background")); + cmd.setParameters(Map.of("priority", "crawlLow")); executeCommand(cmd, null); } From 726d8b8819319c855d53cb5a8490573a7ffa5a9d Mon Sep 17 00:00:00 2001 From: labkey-jeckels Date: Mon, 28 Jul 2025 08:07:34 -0700 Subject: [PATCH 3/3] Simplify priorities - flatten list and prioritize Resources over Runnables --- src/org/labkey/test/util/search/SearchAdminAPIHelper.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/org/labkey/test/util/search/SearchAdminAPIHelper.java b/src/org/labkey/test/util/search/SearchAdminAPIHelper.java index 3d47728f29..7b99862fc2 100644 --- a/src/org/labkey/test/util/search/SearchAdminAPIHelper.java +++ b/src/org/labkey/test/util/search/SearchAdminAPIHelper.java @@ -78,7 +78,7 @@ public static void waitForIndexerBackground(int timeout) // Invoke a special server action that waits until all previous indexer tasks are complete, even wait for background indexing tasks to complete (e.g. deleteContainer) var cmd = new SimplePostCommand("search", "waitForIndexer"); cmd.setTimeout(timeout); - cmd.setParameters(Map.of("priority", "crawlLow")); + cmd.setParameters(Map.of("priority", "idle")); executeCommand(cmd, null); }