[ 
https://issues.apache.org/jira/browse/FOP-2561?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

simon steiner updated FOP-2561:
-------------------------------
    Priority: Major  (was: Critical)

> Multithreaded FOP conserve memory failure
> -----------------------------------------
>
>                 Key: FOP-2561
>                 URL: https://issues.apache.org/jira/browse/FOP-2561
>             Project: FOP
>          Issue Type: Bug
>    Affects Versions: 2.0
>            Reporter: Maciej Zerkowski
>
> Hi Guys,
> I'm dealing with really large data so using conserve memory flag as below 
> {code}
> foUserAgent.setConserveMemoryPolicy(true);
> {code}
> But it seems that in multithreaded mode all of the threads use the same 
> default location set by the resolver:
> {code}
> CachedRenderPagesModel.class:  tempBaseURI = TEMP_URI_GENERATOR.generate();
> So I can see in the logs:
> ...
> Delegating to default resolver for uri: tmp:/fop-page-873.ser
> ...
> {code}
> But in multithreaded configuration I'm getting the below exception:
> {code}
> 13:59:53.334 [task-scheduler-4] ERROR org.apache.fop.apps.FOUserAgent- Error 
> while serializing page 4. Reason: java.io.IOException: 
> /tmp/fop-page-3.ser2704106194054979958.fop.tmp has been already created for 
> /fop-page-3.ser
> java.io.IOException: /tmp/fop-page-3.ser2704106194054979958.fop.tmp has been 
> already created for /fop-page-3.ser
>       at 
> org.apache.fop.apps.io.ResourceResolverFactory$DefaultTempResourceResolver.createTempFile(ResourceResolverFactory.java:187)
>  ~[fop-2.0.jar!/:na]
>       at 
> org.apache.fop.apps.io.ResourceResolverFactory$DefaultTempResourceResolver.getOutputStream(ResourceResolverFactory.java:199)
>  ~[fop-2.0.jar!/:na]
>       at 
> org.apache.fop.apps.io.ResourceResolverFactory$TempAwareResourceResolver.getOutputStream(ResourceResolverFactory.java:159)
>  ~[fop-2.0.jar!/:na]
>       at 
> org.apache.fop.apps.io.ResourceResolverFactory$DefaultResourceResolver.getOutputStream(ResourceResolverFactory.java:126)
>  ~[fop-2.0.jar!/:na]
>       at com.xxxxxxx.fop.XXXXXX.getOutputStream(XXXXXX.java:87) 
> ~[xxx.jar!/:na]
>       at 
> org.apache.fop.apps.io.InternalResourceResolver.getOutputStream(InternalResourceResolver.java:103)
>  ~[fop-2.0.jar!/:na]
>       at 
> org.apache.fop.area.CachedRenderPagesModel.savePage(CachedRenderPagesModel.java:128)
>  [fop-2.0.jar!/:na]
>       at 
> org.apache.fop.area.CachedRenderPagesModel.checkPreparedPages(CachedRenderPagesModel.java:110)
>  [fop-2.0.jar!/:na]
>       at 
> org.apache.fop.area.RenderPagesModel.addPage(RenderPagesModel.java:146) 
> [fop-2.0.jar!/:na]
> {code}
> Can you please advise if there is a way to maybe configure it for 
> multithreaded mode - maybe I'm missing something? How to make this tmp files 
> unique...
> Or it is rather a bug?



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

Reply via email to