At 11:36 AM 6/18/2002 -0700, Nikhil Budhiraja wrote:
>yup , you are right Andrei, ...this is really a common
>problem and there is no standard design pattern to
>resolve this.
>
>Although, i came across a few frameworks which claim
>they can resolve this issue but each of them missed
>one thing or the other.
I'd suggest we pursue 2 main directions (let me remind that we are
optimizing 2 things at a time - memory consumption and response times):
1. "ResultIterator" :
something in line with what Robert's requirements are. This query would
return an iterator backed by the open result set. If this is used within
web applications, it has to have a single request scope (or at least has
to have a controlling thread that would guarantee closing of the result set
once the processing is done). This is ideal for report generation on the
application side.
2. "ResultPager" :
this is a fully disconnected results list that would have faults for pages
and an automated mechanism to resolve them. How it is done is an
implementation detail. You suggestion is probably good for the data that is
not modified too often. Otherwise if you do the same query multiple times
to read data page by page, you will get different data every time (to a
point that your last record marker may not be there anymore). Also Misha
mentioned to me some Oracle-specific features that may place a marker on
the database side. I wonder if anyone heard of something like that?
Andrus
This archive was generated by hypermail 2.0.0 : Wed Jun 19 2002 - 00:47:26 EDT