RE: [GENERAL] Long update query ?

Поиск
Список
Период
Сортировка
От Jackson, DeJuan
Тема RE: [GENERAL] Long update query ?
Дата
Msg-id F10BB1FAF801D111829B0060971D839F432E56@cpsmail
обсуждение исходный текст
Список pgsql-general
PostgreSQL 6.3 and lower has a problem with lots of OR's in the where
clause (the optimizer exhaust memory if I'm not mistaken).  ProstgreSQL
6.4 will handle OR's better.  In the mean time I'd suggest rewriting
your queries (don't forget that you can use IN/NOT IN).
        -DEJ

> Hello,
> I have query:
> UPDATE userd_session_stat SET status =1 WHERE status=0 AND ((uid <>627
> AND
> tty <>'ttyA03') OR (uid <> 425 AND tty <> 'ttyA05') OR (uid <> 8011
> AND tty
> <> 'ttyA09') OR (uid <> 2092 AND tty <> 'ttyA0f') OR (uid <> 249 AND
> tty <>
> 'ttyp3') OR (uid <> 249 AND tty <> 'ttyp4') OR (uid <> 249 AND tty <>
> 'ttyp5') OR (uid <> 249 AND tty <> 'ttyp6'))
>
> But, postgres complains that:
> FATAL 1:  palloc failure: memory exhausted
>
>  I see, the query must be less than 4kB, and this query is less.
> Long SELECT queries works fine.
> Have any idea? Maybe, I have to change postmaster's settings ? Query
> executes from libpg programm.
>
> Thanx,
> ---------------------------
> Sergei Chernev
> Internet: ser@nsu.ru
> Phone: +7-3832-397354
>

В списке pgsql-general по дате отправления:

Предыдущее
От: bboyd@istmail.com
Дата:
Сообщение: unsubscribe
Следующее
От: David Hartwig
Дата:
Сообщение: Re: [GENERAL] Long update query ?