Re: DETOASTing in custom memory context
От | strk |
---|---|
Тема | Re: DETOASTing in custom memory context |
Дата | |
Msg-id | 20031027195704.C51468@freek.keybit.net обсуждение исходный текст |
Ответ на | DETOASTing in custom memory context (strk <strk@keybit.net>) |
Ответы |
Re: DETOASTing in custom memory context
|
Список | pgsql-hackers |
From whitin an aggregate sfunc I did: oldcontext = MemoryContextSwitchTo(fcinfo->flinfo->fn_mcxt); geom = (GEOMETRY*)PG_DETOAST_DATUM(datum); MemoryContextSwitchTo(oldcontext); And later in aggregate's finalfunc:pfree(geom); Result:segfault! What's wrong with it ? NOTE that if I MemoryContextAllocate in fcinfo->flinfo->fn_mcxt and memcopy DETOASTED geom, everything works (ar at least it seems to) --strk; strk wrote: > Tom, thanks again for the quick answer and > sorry for the lame question about memor allocation. > > I hope this is acceptable: > Is there a way to make PG_DETOAST_DATUM and friends allocate > memory in a custom memory context ? > > Right now I'm DETOASTing, memcopying in a custom context > and pfreeing the DETOASTed datum, I'd like to avoid one > copy. > > TIA. > --strk; > > ---------------------------(end of broadcast)--------------------------- > TIP 9: the planner will ignore your desire to choose an index scan if your > joining column's datatypes do not match
В списке pgsql-hackers по дате отправления: