Re: [PERFORM] insert performance for win32

Поиск
Список
Период
Сортировка
От Merlin Moncure
Тема Re: [PERFORM] insert performance for win32
Дата
Msg-id 6EE64EF3AB31D5448D0007DD34EEB3417DD7D5@Herge.rcsinc.local
обсуждение исходный текст
Ответы Re: [PERFORM] insert performance for win32  (Tom Lane <tgl@sss.pgh.pa.us>)
Список pgsql-hackers
> "Merlin Moncure" <merlin.moncure@rcsonline.com> writes:
> > Nailed it.
>
> > problem is in mainloop.c -> setup_cancel_handler.  Apparently you
can
> > have multiple handlers and windows keeps track of them all, even if
they
> > do the same thing.  Keeping track of so many system handles would
> > naturally slow the whole process down.
>
> Yipes.  So we really want to do that only once.
>
> AFAICS it is appropriate to move the sigsetjmp and
setup_cancel_handler
> calls in front of the per-line loop inside MainLoop --- can anyone see
> a reason not to?

hm. mainloop is re-entrant, right?  That means each \i would reset the
handler...what is downside to keeping global flag?


> I'm inclined to treat this as an outright bug, not just a minor
certainly...

> performance issue, because it implies that a sufficiently long psql
> script would probably crash a Windows machine.

actually, it's worse than that, it's more of a dos on the whole system,
as windows will eventually stop granting handles, but there is a good
chance of side effects on other applications.

Merlin

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

Предыдущее
От: Chris Browne
Дата:
Сообщение: Re: PG 8.1 supported platforms list
Следующее
От: Tom Lane
Дата:
Сообщение: Re: [PERFORM] insert performance for win32