Roberto Guevara escribió:

> El tema completo es el siguiente, yo uso una libreria que internamente
> agarra cualquier consulta y la desarma en consultas individuales (en 'grosso
> modo' con un LIMIT 1) que recorren ciclicamente la PK para traer los
> resultados fila por fila. El tema es que al correrlo con 1 mes de datos la
> aplicacion se quedaba consultando por mucho tiempo. Al optimizar el manejo
> de memoria y comprobar la velocidad de conexion que estaba ok, solo me
> quedaba 2 opciones o la libreria era demasiado lenta para pedir los datos o
> el motor tardaba en entregarmelos. Para probar la segunda, entonces ejecute
> el query de prueba y me salio el error que les mostre. Por lo que dicen es
> un error que solo sale cuando pido un resource set muy grande con esta
> version de cliente asi que descarto el error que envie.

Creo que no es dificil adivinar que la biblioteca es lenta, si hace lo
del LIMIT 1 que dices.  Es mala idea.

Prueba esto:

begin;
declare foo cursor for select * from datest where fcfec>='2006-12-01'
and fcfec<='2008-12-31'

fetch 1000 from foo;
fetch 1000 from foo;
fetch 1000 from foo;
...  (hasta que se acaben los resultados)

commit;

-- 
Alvaro Herrera                         http://www.flickr.com/photos/alvherre/
"I love the Postgres community. It's all about doing things _properly_. :-)"
(David Garamond)
--
TIP 4: No hagas 'kill -9' a postmaster

Responder a