Re: [PERFORM] insert performance for win32

From: "Dann Corbit" <DCorbit(at)connx(dot)com>
To: "Magnus Hagander" <mha(at)sollentuna(dot)net>, "Tom Lane" <tgl(at)sss(dot)pgh(dot)pa(dot)us>, "Merlin Moncure" <merlin(dot)moncure(at)rcsonline(dot)com>
Cc: <pgsql-hackers(at)postgresql(dot)org>, <pgsql-performance(at)postgresql(dot)org>
Subject: Re: [PERFORM] insert performance for win32
Date: 2005-11-04 18:41:28
Message-ID: D425483C2C5C9F49B5B7A41F8944154757D281@postal.corporate.connx.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

> -----Original Message-----
> From: pgsql-hackers-owner(at)postgresql(dot)org [mailto:pgsql-hackers-
> owner(at)postgresql(dot)org] On Behalf Of Magnus Hagander
> Sent: Friday, November 04, 2005 10:31 AM
> To: Tom Lane; Merlin Moncure
> Cc: pgsql-hackers(at)postgresql(dot)org; pgsql-performance(at)postgresql(dot)org
> Subject: Re: [HACKERS] [PERFORM] insert performance for win32
>
> > >> 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?
> >
> > Ah, right, and in fact I'd missed the comment at line 325
> > pointing out that we're relying on the sigsetjmp to be
> > re-executed every time through. That could be improved on,
> > likely, but not right before a release.
> >
> > Does the flag need to be global? I'm thinking

How about:

void
setup_cancel_handler(void)
{
+ static bool done = false;
+
+ if (!done)
+ {
SetConsoleCtrlHandler(consoleHandler, TRUE);
+ done = true;
+ }
}

> Seems like a simple enough solution, don't see why it shouldn't work.
As
> long as psql is single-threaded, which it is...
> (Actually, that code seems to re-set done=true on every call which
seems
> unnecessary - but that might be optimised away, I guess)
>
> //Magnus
>
>
> ---------------------------(end of
broadcast)---------------------------
> TIP 3: Have you checked our extensive FAQ?
>
> http://www.postgresql.org/docs/faq

Browse pgsql-hackers by date

  From Date Subject
Next Message Tom Lane 2005-11-04 18:54:04 Re: Reducing the overhead of NUMERIC data
Previous Message Tom Lane 2005-11-04 18:37:32 Re: insert performance for win32