From 277efe3ab23da759ce84b467e2dfb566885e7c2e Mon Sep 17 00:00:00 2001 From: Bastien CHAMAGNE Date: Tue, 13 Jun 2023 11:24:22 +0200 Subject: [PATCH] Use a split instead of 2 reverse --- lib/archethic_cache/lru.ex | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/lib/archethic_cache/lru.ex b/lib/archethic_cache/lru.ex index 89e006a2c..53baedf31 100644 --- a/lib/archethic_cache/lru.ex +++ b/lib/archethic_cache/lru.ex @@ -134,11 +134,11 @@ defmodule ArchethicCache.LRU do if predicate.(state) do state else - case Enum.reverse(keys) do - [] -> + case Enum.split(keys, -1) do + {[], []} -> state - [oldest_key | rest] -> + {rest, [oldest_key]} -> [{_, {size, oldest_value}}] = :ets.take(table, oldest_key) evict_fn.(oldest_key, oldest_value) @@ -146,7 +146,7 @@ defmodule ArchethicCache.LRU do %{ state | bytes_used: bytes_used - size, - keys: Enum.reverse(rest) + keys: rest }, predicate )