Обсуждение: Postmaster getting veeeery big: SUBSTR bug
Never mind my initial query, it was just used for demonstration purposes. Herouth was right in stating: "memory used for substr function" has to be the real cause of the problem because any substr select exhibits this behaviour: select substr(tets,1,2) from raw_field; This one starts the postmaster at around 3MB and finishes at 40. Unfortunately, I have no idea about C, can someone identify the problem and come up with a patch? greetings Eildert Groeneveld ========================================= Institute for Animal Science and Animal Behaviour Mariensee 31535 Neustadt Germany Tel : (49)(0)5034 871155 Fax : (49)(0)5034 92579 www : http://www.tzv.fal.de/~eg/ e-mail: eg@tzv.fal.de =========================================
Eildert Groeneveld <eg@tzv.fal.de> writes: > Herouth was right in stating: "memory used for substr function" has to be > the real cause of the problem because any substr select exhibits this > behaviour: > select substr(tets,1,2) from raw_field; > This one starts the postmaster at around 3MB and finishes at 40. > Unfortunately, I have no idea about C, can someone identify the problem > and come up with a patch? The problem is well known and is on the TO-DO list: memory consumed while evaluating expressions is not reclaimed until end of statement. It's by no means specific to substr(). Unfortunately, fixing it is not a small amount of work (else it'd have been done already). I'm hoping to see it fixed in 6.6. regards, tom lane