From 38b3b950d4da2bde105e355af6f6a5f75c0b3112 Mon Sep 17 00:00:00 2001 From: Finn Carroll Date: Mon, 5 Aug 2024 17:03:46 +0000 Subject: [PATCH] Revert attempt to clean cache Signed-off-by: Finn Carroll --- .../store/remote/utils/TransferManager.java | 21 +++---------------- 1 file changed, 3 insertions(+), 18 deletions(-) diff --git a/server/src/main/java/org/opensearch/index/store/remote/utils/TransferManager.java b/server/src/main/java/org/opensearch/index/store/remote/utils/TransferManager.java index b6eb8401f2d2f..189c491e3eebe 100644 --- a/server/src/main/java/org/opensearch/index/store/remote/utils/TransferManager.java +++ b/server/src/main/java/org/opensearch/index/store/remote/utils/TransferManager.java @@ -96,27 +96,12 @@ public IndexInput fetchBlob(BlobFetchRequest blobFetchRequest) throws IOExceptio @SuppressWarnings("removal") private static FileCachedIndexInput createIndexInput(FileCache fileCache, StreamReader streamReader, BlobFetchRequest request) { try { - // This local file cache is ref counted and may not strictly enforce capacity. - // In our use case capacity directly relates to disk usage. - // If we find available capacity is exceeded deny further BlobFetchRequests. + // This local file cache is ref counted and may not strictly enforce configured capacity. + // If we find available capacity is exceeded, deny further BlobFetchRequests. Supplier cacheUsagePerc = () -> fileCache.capacity() <= 0 ? 0 : (short) (Math.round((100d * fileCache.usage().usage()) / fileCache.capacity())); - if (cacheUsagePerc.get() >= 99) { - System.gc(); - - // File reference cleanup is not immediate and is processed - // in a dedicated thread. - try { - Thread.sleep(10); - } catch (InterruptedException e) { - Thread.currentThread().interrupt(); - } - - fileCache.prune(); - if (cacheUsagePerc.get() >= 99) { - throw new IOException("Local file cache capacity exceeded - BlobFetchRequest failed: " + request.getFilePath()); - } + throw new IOException("Local file cache capacity exceeded - BlobFetchRequest failed: " + request.getFilePath()); } if (Files.exists(request.getFilePath()) == false) { logger.trace("Fetching from Remote in createIndexInput of Transfer Manager");