Friday, February 4, 2011

Re: [firebird-support] Long ad hoc delays?

> Thomas Steinmaurer skriver:
>> > I've got an ASP.Net app with a FB 2.1 DB on a 64 bit Win system.
>> >
>> > From time to time, apparently ad hoc, the FB server does "something"
>> > that takes about half an hour. While doing so it does millions of I/O
>> > reads and Windows' file cache consumes all memory I allow it to, but the
>> > FB process itself doesn't seem to consume memory out of the ordinary.
> [snip]
>> > I guess the most likely reason is that the OO framework issues some SQL
>> > that requires a natural scan of one or both of the large tables, or a
>> > full index scan or something.
>>
>> Or garbage collection kicking in. The used garbage collection mode
>> (background, cooperative, mixed) depends on the Firebird architecture
>> and/or the GCPolicy parameter in firebird.conf.
>
> Oh, but I thought GC wouldn't do such large batches of work such as
> this. I thought GC would do "a little every time" rather than "a lot but
> seldom". Maybe I should read again about GC...

Imagine you do a DELETE FROM on a very huge table and a SELECT COUNT(*)
on that table afterwards. Depending on the garbage collection mode,
garbage collection will either happen immediately in the context of the
SELECT COUNT(*) or marked to be GC by a background thread.

>> Can only talk about FB TraceManager. It works only with Firebird 2.5 due
>> to the Trace API. We have customers, which moved to Firebird 2.5 in a
>> test environment for just taking advantage of the Trace API. Run stuff
>> there and improved queries in their dev environment. ;-)
>>
>> You don't even need to backup/restore (change the ODS) for using the
>> Trace API. Simply take a copy of the database (just in case), connect
>> with Firebird 2.5 and you are ready to go in respect to the Trace API.
>
> Yes, but I shudder at the thought of copying 52 gigabyte over ADSL...
> I'd have to install 2.5 alongside of 2.1 on the production system. I
> guess I could, and set it up to use port 3051.

Yes. I wouldn't mix connections on the same database by different server
processes/versions though.


>> Not sure if a switch to Firebird 2.5 is that easy for you. OO framework etc.
>
> I'd have to test it. I think it would work - the framework (ECO) is
> rather DB agnostic and supports about a dozen engines. And I assume the
> .Net provider has been brought up to date to support 2.5.


--
With regards,

Thomas Steinmaurer
Upscene Productions
http://www.upscene.com
http://blog.upscene.com/thomas/

Download LogManager Series, FB TraceManager today!
Continuous Database Monitoring Solutions supporting
Firebird, InterBase, Advantage Database, MS SQL Server
and NexusDB!


------------------------------------

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Visit http://www.firebirdsql.org and click the Resources item
on the main (top) menu. Try Knowledgebase and FAQ links !

Also search the knowledgebases at http://www.ibphoenix.com

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Yahoo! Groups Links

<*> To visit your group on the web, go to:
http://groups.yahoo.com/group/firebird-support/

<*> Your email settings:
Individual Email | Traditional

<*> To change settings online go to:
http://groups.yahoo.com/group/firebird-support/join
(Yahoo! ID required)

<*> To change settings via email:
firebird-support-digest@yahoogroups.com
firebird-support-fullfeatured@yahoogroups.com

<*> 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/

No comments: