camel-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Krzysztof Hołdanowicz (JIRA) <j...@apache.org>
Subject [jira] [Commented] (CAMEL-12037) File idempotent repository is always initialized with default 1000 cache size
Date Sat, 25 Nov 2017 11:16:01 GMT

    [ https://issues.apache.org/jira/browse/CAMEL-12037?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16265675#comment-16265675
] 

Krzysztof Hołdanowicz commented on CAMEL-12037:
-----------------------------------------------

Yes I will patch it today. I need to set up environment.
Thanks.

> File idempotent repository is always initialized with default 1000 cache size
> -----------------------------------------------------------------------------
>
>                 Key: CAMEL-12037
>                 URL: https://issues.apache.org/jira/browse/CAMEL-12037
>             Project: Camel
>          Issue Type: Bug
>          Components: camel-core
>    Affects Versions: 2.20.0
>            Reporter: Krzysztof Hołdanowicz
>             Fix For: 2.20.2, 2.21.0
>
>   Original Estimate: 10m
>  Remaining Estimate: 10m
>
> http://camel.465427.n5.nabble.com/File-idempotent-repository-problem-since-2-20-td5815760.html
> So far we've been using file idempotent repository which was defined like 
> this: 
> <bean id="download repository" 
> class="of.apache.camel.processor.idempotent.FileIdempotentRepository"> 
>   <property name="fileStore" value="work/.downloadStore.dat" /> 
>   <property name="cacheSize" value="5000" /> 
> </bean> 
> However since Camel version 2.20 I can see that in 
> FileIdempotentRepository.java there is a cache initialization in method 
> doStart(): 
> protected void doStart() throws Exception { 
>  ... 
>  this.cache = LRUCacheFactory.newLRUCache(1000); 
>  ... 
> } 
> which always overrides our cacheSize definition with default value, because 
> doStart method is always invoked just after bean initialization (if the 
> init-method="start" was specified in bean definition) or during camel 
> context initialization. 
> As a consequence our idempotent stores always have a default 1000 cache 
> size limit. 
> Shuldn't the doStart method check the cache instance first before 
> initializing it with default cache size e.g. 
> protected void doStart() throws Exception { 
> ... 
> if (this.cache == null) { 
>   this.cache = LRUCacheFactory.newLRUCache(1000); 
> } 
> ... 
> } 



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Mime
View raw message