Re: Re: patch: fix performance problems with repated decomprimation of varlena values in plpgsql
От | Pavel Stehule |
---|---|
Тема | Re: Re: patch: fix performance problems with repated decomprimation of varlena values in plpgsql |
Дата | |
Msg-id | AANLkTimBSh1=k16WmDGXKr6QjP60h2+ks52DF1ZsQRwW@mail.gmail.com обсуждение исходный текст |
Ответ на | Re: Re: patch: fix performance problems with repated decomprimation of varlena values in plpgsql (Robert Haas <robertmhaas@gmail.com>) |
Список | pgsql-hackers |
2011/2/8 Robert Haas <robertmhaas@gmail.com>: > On Mon, Feb 7, 2011 at 11:52 PM, Noah Misch <noah@leadboat.com> wrote: >> On Mon, Feb 07, 2011 at 11:16:18PM -0500, Robert Haas wrote: >>> So >>> can we just get rid of should_be_detoasted, and have exec_eval_datum() >>> or its callers instead test: >>> >>> !var->isnull && var->datatype->typbyval && var->datatype->typlen == -1 >>> && VARATT_IS_EXTENDED(var->value) >> >> FWIW, this is what I meant by option 2 in my summary. >> >>> I haven't tested this, but it's not clear that'd be measurably slower >>> than checking a single Boolean. >> >> Pavel benchmarked this or something close, measuring a performance loss: >> http://archives.postgresql.org/message-id/AANLkTikDHekc9r38w2ttzoMDr8vDaVAnr3LhqfJkEuL9@mail.gmail.com >> >> Tom also expressed concern over performance: >> http://archives.postgresql.org/message-id/24266.1295462892@sss.pgh.pa.us >> >> Not sure what's next. > > Well, Pavel's subsequent reply suggested that he didn't test exactly > this thing, so maybe there's hope. > > Or maybe not. If Tom thought one branch inside exec_eval_datum() was > going to be too expensive, four isn't going to be better. > > But I think we're out of time to work on this for this cycle. Even if > my latest idea is brilliant (and it may not be), we still have to test > it in a variety of cases and get consensus on it, which seems like > more than we can manage right now. I think it's time to mark this one > Returned with Feedback, or perhaps Rejected would be more accurate in > this instance. if you have a briliant idea, then, please, send a path :). There was more ideas, and I am little bit lost. I'll have a time on weekend, and I can do some tests. Regards Pavel Stehule > > -- > Robert Haas > EnterpriseDB: http://www.enterprisedb.com > The Enterprise PostgreSQL Company >
В списке pgsql-hackers по дате отправления: