2017-10-08 19:04 GMT+02:00 Pavel Stehule <pavel.steh...@gmail.com>:
> > > 2017-10-08 18:59 GMT+02:00 Andres Freund <and...@anarazel.de>: > >> On 2017-10-08 18:57:28 +0200, Pavel Stehule wrote: >> > 2017-10-08 18:44 GMT+02:00 Andres Freund <and...@anarazel.de>: >> > >> > > Hi, >> > > >> > > On 2017-10-08 18:36:23 +0200, Pavel Stehule wrote: >> > > > 2. Lot of used tables are pretty wide - 60, 120, .. columns >> > > > >> > > > Now, I am doing profiling, and I see so most time is related to >> > > > >> > > > ExecTypeFromTLInternal(List *targetList, bool hasoid, bool skipjunk) >> > > >> > > Yea, that's known - I've complained about this a couple times. You >> could >> > > try whether the following master branch helps: >> > > https://git.postgresql.org/gitweb/?p=users/andresfreund/ >> > > postgres.git;a=shortlog;h=refs/heads/simple_statement_perf >> > > >> > > That's just micro-optimization though, not a more fundamental >> > > solution. But for me it yields pretty nice speedups for cases with >> long >> > > tlists. >> > > >> > > >> > it is just this patch >> > >> > HeapTuple tup; >> > Form_pg_type typTup; >> > >> > + if (typid < FirstBootstrapObjectId) >> > + break; >> > + >> > tup = SearchSysCache1(TYPEOID, ObjectIdGetDatum(typid)); >> > if (!HeapTupleIsValid(tup)) >> > elog(ERROR, "cache lookup failed for type %u", typid); >> >> No. >> > > please, how I can clone your repo? > > > I found it