Subject | Re: [firebird-support] FB 1.5 RC6 linear slowdown |
---|---|
Author | Rafael Szuminski |
Post date | 2003-09-30T16:08:26Z |
Oops, replied to the wrong email.....Anyhow take a look at this:
One area I would look into is queries with sub-select statements. In my
case (a small database app) the slowdowns started with more data in the
subselect table. For instance:
Select * from TblCustomers where CustomerID in (Select CustomerID from
tblSomething Where Something=Something) or CityID in (Select CityID from
Something where Something=Something)
With 30000 customers the query started slowing with data being added to
table 'something'. If there were 1-5 records in 'something' it was fast,
but at 100 records in something the query execution time increased 50 times
Anyhow, rewriting the query to use left joins solved the issue for me.
Hope this helps
Raf
Rajesh Punjabi wrote:
Rafael Szuminski
Email:raf@...
Phone:(949)939 - 2458
www.BDCSoftware.com
One area I would look into is queries with sub-select statements. In my
case (a small database app) the slowdowns started with more data in the
subselect table. For instance:
Select * from TblCustomers where CustomerID in (Select CustomerID from
tblSomething Where Something=Something) or CityID in (Select CityID from
Something where Something=Something)
With 30000 customers the query started slowing with data being added to
table 'something'. If there were 1-5 records in 'something' it was fast,
but at 100 records in something the query execution time increased 50 times
Anyhow, rewriting the query to use left joins solved the issue for me.
Hope this helps
Raf
Rajesh Punjabi wrote:
> Hi Thomas,--
>
> Thomas Miller wrote:
>
>
>>The problem is likely one of two issues (or both)
>>
>>#1) Memory leak in client. You mentioned you have a pool. Structure
>>the pool
>>to periodically close a pool connection and restart a new one.
>>
>
> There is no memory leak. The memory graph stays within a narrow band.
> Maybe I did not communicate this right, but the client (our application)
> has been stress tested with Oracle and MySQL with InnoDB transactions
> and is able to process hundreds of concurrent requests and for days in a
> stress test environment without any performance degradation. With
> Firebird, the degradation is apparent in about 30 minutes.
>
>
>>#2) There has been a problem with the garbage collection running in its
>>own
>>thread. It seems that the amount of garbage that may accumulate is more
>>then
>>the threads alloted time to do the clean up, so it does no clean up. During
>>the day, this kills performance. Supposedly it was fixed for RC5??, but
>>maybe
>>not.
>>
>
> Should this not cause memory usage to go up as well? We do not see any
> gradual increase in memory consumption.
>
>
>>Try #1 first and see if it helps. Maybe if a connection is more then
>>one hour
>>old and idle, kill it and make a new one.
>>
>
> We have the feature turned on in JBoss where it will refresh (close and
> renew) a connection after every 15 idle mins.
>
> Thanks,
> Rajesh
>
>
>
> To unsubscribe from this group, send an email to:
> firebird-support-unsubscribe@yahoogroups.com
>
>
>
> Your use of Yahoo! Groups is subject to http://docs.yahoo.com/info/terms/
>
>
>
Rafael Szuminski
Email:raf@...
Phone:(949)939 - 2458
www.BDCSoftware.com