From: | Thomas Munro <thomas(dot)munro(at)enterprisedb(dot)com> |
---|---|
To: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
Cc: | Pg Hackers <pgsql-hackers(at)postgresql(dot)org> |
Subject: | Re: DSM segment handle generation in background workers |
Date: | 2018-10-11 03:18:40 |
Message-ID: | CAEepm=1xxETRCZexNSxkABpNg-65U6Z2pxynJ8V0vURqob+Rqw@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
On Tue, Oct 9, 2018 at 3:21 PM Thomas Munro
<thomas(dot)munro(at)enterprisedb(dot)com> wrote:
> On Tue, Oct 9, 2018 at 1:53 PM Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> wrote:
> > Thomas Munro <thomas(dot)munro(at)enterprisedb(dot)com> writes:
> > > On Mon, Oct 8, 2018 at 1:17 AM Thomas Munro
> > > <thomas(dot)munro(at)enterprisedb(dot)com> wrote:
> > >> That's because the bgworker startup path doesn't contain a call to
> > >> srandom(...distinguishing stuff...), unlike BackendRun(). I suppose
> > >> do_start_bgworker() could gain a similar call... or perhaps that call
> > >> should be moved into InitPostmasterChild(). If we put it in there
> > >> right after MyStartTime is assigned a new value, we could use the same
> > >> incantation that PostmasterMain() uses.
> >
> > > Maybe something like this?
> >
> > I think the bit with
> >
> > #ifndef HAVE_STRONG_RANDOM
> > random_seed = 0;
> > random_start_time.tv_usec = 0;
> > #endif
> >
> > should also be done in every postmaster child, no? If we want to hide the
> > postmaster's state from child processes, we ought to hide it from all.
>
> Ok, here is a sketch patch with a new function InitRandomSeeds() to do
> that. It is called from PostmasterMain(), InitPostmasterChild() and
> InitStandaloneProcess() for consistency.
Here's a version I propose to push to master and 11 tomorrow, if there
are no objections.
--
Thomas Munro
http://www.enterprisedb.com
Attachment | Content-Type | Size |
---|---|---|
0001-Use-different-random-seeds-in-all-backends.patch | application/octet-stream | 4.8 KB |
From | Date | Subject | |
---|---|---|---|
Next Message | Michael Paquier | 2018-10-11 03:38:10 | Re: Restore CurrentUserId only if 'prevUser' is valid when abort transaction |
Previous Message | Robert Haas | 2018-10-11 03:06:39 | Re: executor relation handling |