Re: Memory exeception
От | Nick Fankhauser |
---|---|
Тема | Re: Memory exeception |
Дата | |
Msg-id | NEBBLAAHGLEEPCGOBHDGIEFDDOAA.nickf@ontko.com обсуждение исходный текст |
Ответ на | Re: Memory exeception (Peter Wasem <peter.wasem@itag.ch>) |
Список | pgsql-jdbc |
Is it possible to take this approach with a query that has an "order by" in it? -Nick > -----Original Message----- > Hi Barry > > This is exactly what I observed. The physical memory dropped down > to almost > zero (but no swap was used) before the exception was thrown. I'm > not sure if I > can use cursors (other than ResultSet) since my application is Java-based. > > Thanks > > Barry Lind wrote: > > > Peter, > > > > Postgres will return the entire result into memory first before > > processing the first row of data. If you don't want this behavior you > > should use explicit cursors and fetch statements to get data a few rows > > at a time. See the postgres documentation on the 'cursor' and 'fetch' > > sql statements. > > > > thanks, > > --Barry > > > > Peter Wasem wrote: > > > > > Hi > > > > > > I have a problem in processing large numbers of rows in ResultSets. > > > Here's the code fragment where the problem occurs: > > > > > > ... > > > ResultSet rset = stmt.executeQuery( "select ... from ... where ... > > > order by ..." ) ; > > > while(rset.next() ) > > > { // Process the row } > > > ... > > > > > > The query addresses some 100'000 rows. When stmt.executeQuery() is > > > executed suddenly an exception occurs. > > > The same program works fine with other JDBC drivers. > > > > > > Any ideas ? > > > > > > Greetings > > > Peter > > > > > > ---------------------------(end of > broadcast)--------------------------- > > > TIP 2: you can get off all lists at once with the unregister command > > > (send "unregister YourEmailAddressHere" to > majordomo@postgresql.org) > > > >
В списке pgsql-jdbc по дате отправления: