Re: [HACKERS] removing the exec() from doexec()

From: Bruce Momjian <maillist(at)candle(dot)pha(dot)pa(dot)us>
To: brett(at)abraxas(dot)scene(dot)com (Brett McCormickS)
Cc: pgsql-hackers(at)hub(dot)org
Subject: Re: [HACKERS] removing the exec() from doexec()
Date: 1998-04-30 01:44:15
Message-ID: 199804300144.VAA00356@candle.pha.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

>
>
> I'm planning on removing the exec from DoExec() and instead just
> dispatch to the appropriate function.
>
> I don't plan on any changes to the usage of "arguments" to this new
> process, basically I'll just store them somewhere and then the forked
> backend can process them.
>
> Is there anything I should keep in mind? I'd like this to eventually
> be integrated into the source tree -- any particular reason why we use
> exec() when we're just re-invoking the same binary?
>
> p.s. this is so my ssl patch doesn't have to negotiate twice -- very expensive

No reason for the exec(). I believe the only advantage is that it gives
us a separate process name in the 'ps' listing. I have looked into
simulating this.

This exec() takes 15% of our startup time. I have wanted it removed for
many releases now. The only problem is to rip out the code that
re-attached to shared memory and stuff like that, because you will no
longer loose the shared memory in the exec(). The IPC code is
complicated, so good luck. I or others can help if you get stuck.

--
Bruce Momjian | 830 Blythe Avenue
maillist(at)candle(dot)pha(dot)pa(dot)us | Drexel Hill, Pennsylvania 19026
+ If your life is a hard drive, | (610) 353-9879(w)
+ Christ can be your backup. | (610) 853-3000(h)

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Bruce Momjian 1998-04-30 01:53:36 Re: [HACKERS] removing the exec() from doexec()
Previous Message Brett McCormickS 1998-04-30 01:20:55 removing the exec() from doexec()