Re: [HACKERS] Cutting initdb's runtime (Perl question embedded)
От | Andres Freund |
---|---|
Тема | Re: [HACKERS] Cutting initdb's runtime (Perl question embedded) |
Дата | |
Msg-id | 20170413204223.7znfwllhqmglzaam@alap3.anarazel.de обсуждение исходный текст |
Ответ на | Re: [HACKERS] Cutting initdb's runtime (Perl question embedded) (Tom Lane <tgl@sss.pgh.pa.us>) |
Ответы |
Re: [HACKERS] Cutting initdb's runtime (Perl question embedded)
|
Список | pgsql-hackers |
On 2017-04-13 14:05:43 -0400, Tom Lane wrote: > Andres Freund <andres@anarazel.de> writes: > > On 2017-04-13 12:56:14 -0400, Tom Lane wrote: > >> Andres Freund <andres@anarazel.de> writes: > >>> Cool. I wonder if we also should remove AtEOXact_CatCache()'s > >>> cross-checks - the resowner replacement has been in place for a while, > >>> and seems robust enough. They're now the biggest user of time. > > >> Hm, biggest user of time in what workload? I've not noticed that > >> function particularly. > > > Just initdb. I presume it's because the catcaches will frequently be > > relatively big there. > > Hm. That ties into something I was looking at yesterday. The only > reason that function is called so much is that bootstrap mode runs a > separate transaction for *each line of the bki file* (cf do_start, > do_end in bootparse.y). Which seems pretty silly. Indeed. > On the whole, though, we may be looking at diminishing returns here. > I just did some "perf" measurement of the overall "initdb" cycle, > and what I'm seeing suggests that bootstrap mode as such is now a > pretty small fraction of the overall cycle: > > + 51.07% 0.01% 28 postgres postgres [.] PostgresMain # > ... > + 13.52% 0.00% 0 postgres postgres [.] AuxiliaryProcessMain # > > That says that the post-bootstrap steps are now the bulk of the time, > which agrees with naked-eye observation. The AtEOXact_CatCache weren't only in bootstrap mode, but yea, it's by far smaller wins in comparison to the regprocin thing. Greetings, Andres Freund
В списке pgsql-hackers по дате отправления: