If I am using an ofbiz form to display a paginated list, does the form take
care of closing the EntityListIterator at the end of each request?


David E Jones-3 wrote:
> 
> 
> In a webapp you simply can't leave the connection open, you have to  
> close it at the end of each page request.
> 
> Feel free to try leaving it open between requests and then put the  
> server under a load... what always happens (yep, always, no silver  
> lining scenarios here...) is that the connection pool and related  
> resources are consumed quickly and while the hardware is under almost  
> no load the server starts rejecting requests or things simply time out.
> 
> It's fairly basic stuff actually, but unfortunately transaction  
> management is a powerful tool with a lot of powerful bad side-effects  
> if you don't use it right. It may seem crazy but it is frighteningly  
> common that developers write bad tx mgmt code and  it brings down  
> production servers, sometimes causing a project to be cancelled  
> because clients loose confidence in the system...
> 
> In a desktop application you can keep connections opened longer, but  
> it is still risky and usually a lot of monitoring code is required to  
> clean things up in possible failure states. In a webapp the monitoring  
> and cleanup code has to address lots of tough scenarios and usually  
> conflicts with things that are made to allow apps to scale well... and  
> those conflicts make it impossible no matter how good a programmer you  
> are... you have to choose between scalability and saving on re-query  
> time, and in the real world scalability is usually far more important  
> and will actually result in lower response times overall.
> 
> -David
> 
> 
> On May 14, 2009, at 8:30 AM, snowch wrote:
> 
>>
>> Hi Forum,
>>
>> In the GenericDelegator findListIteratorByCondition() methods, there  
>> is the
>> following warning regarding the EntityListIterator:
>>
>> NOTE THAT THIS MUST BE CLOSED WHEN YOU ARE  DONE WITH IT, AND DON'T  
>> LEAVE IT
>> OPEN TOO LONG BEACUSE IT WILL MAINTAIN A DATABASE CONNECTION.
>>
>> If I have a user paging through a data list form, how can I know  
>> when they
>> have finished so that the EntityListIterator can be closed?
>>
>> Many thanks in advance,
>>
>> Chris
>> -- 
>> View this message in context:
>> http://www.nabble.com/EntityListIterator-and-open-connections-tp23541834p23541834.html
>> Sent from the OFBiz - User mailing list archive at Nabble.com.
>>
> 
> 
> 

-- 
View this message in context: 
http://www.nabble.com/EntityListIterator-and-open-connections-tp23541834p23551852.html
Sent from the OFBiz - User mailing list archive at Nabble.com.

Reply via email to