Yes, I know, but the backend does not allow for a bigger buffer. Trying > to use a 80K (char[81920])buffer did not work and returns: > INFO: string-size : 48015 > INFO: +++++++++++++++++++++++++++ > server closed the connection unexpectedly > This probably means the server terminated abnormally > before or while processing the request. > The connection to the server was lost. Attempting reset: Succeeded. > > > The surprising thing is that the data can be displayed using elog but > not returend with a string pointer. > <http://archives.postgresql.org/>
You cannot just return pointer to stack (local for function) buffer - it gets freed on return from the function. You must explicitly palloc required memory chunk.