Link to home
Start Free TrialLog in
Avatar of randyd
randyd

asked on

TOAD implementation

Hey experts!

I have a general question - IF your Oracle (9.2 or 10g) database has say, a terabyte of data in a single table, and you say select * from that table;  TOAD somehow manages to return the first rows of the query, and let you page through the rest...

If you drag the scroll bar to the bottom, you will wait a long time..  then finally see the last screen full of records...

The question is: how is this accomplished?  It seems that all the results are not returned to the client, but instead are kept on the server...  I'm thinking as a snapshot(?).  If this is true, how do you page through a snapshot result set?  any ideas?

alternately, what is the best way to not kill your app with out of memory errors on absurdely large result sets?

thanks for comments.
SOLUTION
Avatar of sujit_kumar
sujit_kumar
Flag of United States of America image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
ASKER CERTIFIED SOLUTION
Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Avatar of randyd
randyd

ASKER

it turns out that TOAD does in fact store the entire result set in memory when you scroll to the bottom.

What got me on this tamgent was a message that stated Snapshot too old after i failed to scroll to the bottom for awhile...  sorta makes sense that the internal mechanism is a snapshop - but its just a read consistent cursor to the client.

anyway, i was aware of first_rows hints etc.  but will split points among all respondents.. thanks