[
https://issues.apache.org/jira/browse/CAMEL-16078?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17272869#comment-17272869
]
Claus Ibsen commented on CAMEL-16078:
-------------------------------------
Yeah Caffeine is not ideal for this use-case where a strict LRU order is
required.
It was used for internal caches to keep the most "active" elements, and there
its okay that its not 100% lru ordered
In the past we used a LRU implementation that then was requested to switch to
caffeine by its author
https://issues.apache.org/jira/browse/CAMEL-8602
And this was also before we had our own implementation now with the
DefaultLRUCache that uses JDK collections.
So I think we can deprecate caffeine and just use our default.
The internal caches are really only used during startup/warmup and has less
"contention today". In the past it was the endpoint registry that benefitted
from concurrency to lookup endpoints. But we now keep known/static endpoints in
a fixed registry so its not dynamic and dont need the LRU anymore.
> IdempotentConsumer + MemoryIdempotentRepository allows duplicates
> -----------------------------------------------------------------
>
> Key: CAMEL-16078
> URL: https://issues.apache.org/jira/browse/CAMEL-16078
> Project: Camel
> Issue Type: Bug
> Components: came-core
> Affects Versions: 3.7.1
> Reporter: Jeremy Ross
> Priority: Major
>
> In certain scenarios, it seems that IdempotentConsumer is allowing duplicate
> message to pass. In the test case below, with a cache size of 50, duplicate
> message within a few messages of each other are allowed to pass.
> Test case: https://gist.github.com/jeremyross/d76f658767b4f476f93a12f9067ed515
--
This message was sent by Atlassian Jira
(v8.3.4#803005)