>
>
> 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@candle.pha.pa.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)