Re: pgsql: Pull up isReset flag from AllocSetContext to MemoryContext struc
От | Tom Lane |
---|---|
Тема | Re: pgsql: Pull up isReset flag from AllocSetContext to MemoryContext struc |
Дата | |
Msg-id | 26356.1306088286@sss.pgh.pa.us обсуждение исходный текст |
Ответ на | pgsql: Pull up isReset flag from AllocSetContext to MemoryContext struc (Heikki Linnakangas <heikki.linnakangas@iki.fi>) |
Ответы |
Re: pgsql: Pull up isReset flag from AllocSetContext
to MemoryContext struc
|
Список | pgsql-committers |
Heikki Linnakangas <heikki.linnakangas@iki.fi> writes: > Pull up isReset flag from AllocSetContext to MemoryContext struct. This > avoids the overhead of one function call when calling MemoryContextReset(), > and it seems like the isReset optimization would be applicable to any new > memory context we might invent in the future anyway. > This buys back the overhead I just added in previous patch to always call > MemoryContextReset() in ExecScan, even when there's no quals or projections. Do you actually have any measurements that prove that? This seems like a rather ugly destruction of a modularity boundary in return for a hypothetical performance gain. I'm also concerned that you've probably added cycles on net to MemoryContextAlloc (where it's no longer possible to tail-call AllocSetAlloc), which could very easily cost more cycles on most workloads than could ever be saved by making MemoryContextReset a shade faster. regards, tom lane
В списке pgsql-committers по дате отправления: