Subject | URGENT: API memory leak!! |
---|---|
Author | Lev Assinovsky |
Post date | 2002-02-09T13:03:34Z |
Hello!
I catched the strange behavior in C/API (Linux RedHat6.2, IB6.01 SS,
FB1.0 Beta2 SS)
If we have nested select (sorry, I use schematic language):
select from tab1
while(fetch(tab1))
{
select from tab2
while (fetch(tab2))
{
}
}
then select from tab2 (in isc_dsql_prepare) allocates 25 Kb and never
release it!
It happens once (in first iteration of top level loop).
If size of tab1 is small (3 rows) no allocation happens.
I got allocation when tab1 size was 100 rows.
If we repeat that compound statement (by putting it in the loop)
allocation still takes place just one time.
If we add similar statement but with another top level select (another
table)
one MORE extra 25 Kb is allocated.
Sure I have different statement handles.
It's a pain in my case since I have big FastCGI application
with about 75 tables. My application should stay in memory but it grows
(1 Mb per day).
If it's necessary I can post the source code.
I was wondering if anybody could help with this problem.
Sincerely,
--
Lev Assinovsky Peterlink Web
Programmer St. Petersburg, Russia
Tel/Fax: +7 812 3275343 197022 ul.Chapigina 7�
E-mail: lev@...
[Non-text portions of this message have been removed]
I catched the strange behavior in C/API (Linux RedHat6.2, IB6.01 SS,
FB1.0 Beta2 SS)
If we have nested select (sorry, I use schematic language):
select from tab1
while(fetch(tab1))
{
select from tab2
while (fetch(tab2))
{
}
}
then select from tab2 (in isc_dsql_prepare) allocates 25 Kb and never
release it!
It happens once (in first iteration of top level loop).
If size of tab1 is small (3 rows) no allocation happens.
I got allocation when tab1 size was 100 rows.
If we repeat that compound statement (by putting it in the loop)
allocation still takes place just one time.
If we add similar statement but with another top level select (another
table)
one MORE extra 25 Kb is allocated.
Sure I have different statement handles.
It's a pain in my case since I have big FastCGI application
with about 75 tables. My application should stay in memory but it grows
(1 Mb per day).
If it's necessary I can post the source code.
I was wondering if anybody could help with this problem.
Sincerely,
--
Lev Assinovsky Peterlink Web
Programmer St. Petersburg, Russia
Tel/Fax: +7 812 3275343 197022 ul.Chapigina 7�
E-mail: lev@...
[Non-text portions of this message have been removed]