What you probably ought to do next is build Postgres with a debugging malloc library to learn more about who's eating up what. I am not sure whether libperl will automatically use the malloc attached to the main executable or whether you need to whack it around too. (Come to think of it, doesn't Perl normally use its very own private malloc? Maybe there's an issue right there ...)
Perl can, yeah. If a
perl -V
shows a "usemymalloc=y" in the output somewhere then perl's using its own internal malloc and you're definitely never going to release memory to anything. If it's 'n' then it'll use the default malloc scheme -- I'm pretty sure for embedding use it uses whatever routines the embedder defines, but it's been a while since I've poked around in there.
Anyway, if perl's using its own memory allocator you'll want to rebuild it to not do that.
--
Dan
--------------------------------------it's like this------------------- Dan Sugalski even samurai [EMAIL PROTECTED] have teddy bears and even teddy bears get drunk
---------------------------(end of broadcast)--------------------------- TIP 7: don't forget to increase your free space map settings