Subject Re: [IBO] Server physical transactions and TIB_Transaction Auto-commit
Author Jason Wharton
> IB server doesn't free memory and my application turns extremely slow
until
> the ibserver is restarted.
>
> Going back to the past (i mean keeping working with IBO3.3)... I'd like to
> insist with my problem.

I don't know what you are talking about here. If you mean you want to just
stay on the version you are at then you need to do what I recommended with
the array property of transactions for the session and run a check to see
what all transactions are staying open.

Look at the transaction Pausing tutorial application to get an idea of how
this can be done.
Hopefully that version of IBO will have it. You are getting about 2 years
old in your code there. IBO has matured significantly from that time.

> I've noticed that my application opens several transactions (about 250)
for
> small amount of data (tables that contains less than 20 rows). The fact
is
> that these datasets (most of them TIBOTable) have their property
> IB_Transaction set to <default> and that causes the application to open
> automatically one transaction for each open dataset.
>
> is this amount of open transactions (which are never committed while the
> application is running) a cause for the ibserver to start working slowly
> after a couple of hours?

If they are not closing, yes it would be a detrimental factor. I suspect it
would only take one transaction hung up to cause it, not many hung up.

If you have a lot of queries in your application then you need to take
explicit control of things.
An easy way to alleviate this is to use the TIBODatabase component which
provides a single default transaction for all the queries and datasets
attached to it. You will also want to take advantage of the transaction
TimeoutProps property which allows you to take control of it even better.

Jason Wharton
CPS - Mesa AZ
http://www.ibobjects.com


----- Original Message -----
From: "Luciano Sparacino" <lsparacino@...>
To: <IBObjects@yahoogroups.com>
Sent: Wednesday, December 05, 2001 8:49 PM
Subject: Re: [IBO] Server physical transactions and TIB_Transaction
Auto-commit


>
>
> ----- Original Message -----
> From: "Jason Wharton" <jwharton@...>
> To: <IBObjects@yahoogroups.com>
> Sent: Wednesday, December 05, 2001 5:38 PM
> Subject: Re: [IBO] Server physical transactions and TIB_Transaction
> Auto-commit
>
>
> > You most likely have a transaction stuck.
> > Back in those days (of IBO 3.3) there was the potential of a few things.
> >
> > What I suggest you do is put a general check by getting the session
> > reference and then looping through all the session's Transaction[]
> > references. You can look to see if any are being left open at a time
when
> > they shouldn't be.
> >
> > One remote possibility is the transaction for the SchemaCache may be
> holding
> > things up. For a time this was a blind spot and you might be in that. My
> > memory doesn't server me well enough to recall the exact versions of IBO
> > this was a problem. In short, doing the general loop through the
sessions
> > global list of transactions will give you the "vision" you need to
> > investigate your apps transaction hang-up problem.
> >
> > Keep this topic alive as necessary. This is a very important aspect.
> >
> > Jason Wharton
> > CPS - Mesa AZ
> > http://www.ibobjects.com
> >
> >
> > ----- Original Message -----
> > From: "Luciano Sparacino" <lsparacino@...>
> > To: <IBObjects@yahoogroups.com>
> > Sent: Wednesday, December 05, 2001 1:07 PM
> > Subject: [IBO] Server physical transactions and TIB_Transaction
> Auto-commit
> >
> >
> > > HI!
> > >
> > > I'm having a problem with my client/server application and i don't
> > know
> > > where o attack it in order to find a solution. I'm actually working
> with
> > > IBO 3.3 and IB 6.0 on Winnt 4.0.
> > >
> > > The fact is that the server starts consuming more and more memmory
> > > during the day up to a point in which it becomes very slow... the only
> > thing
> > > we can do then is to restart it and everithing works ok.
> > >
> > > I don't know if there's anything i can do with my IBO components
to
> > get
> > > a better performance and release the load to the IB server (i'm
actually
> > > using TIBOQuery, TIBOTable, TIB_TransactionSingle and TIB_Connection)
> > >
> > > I read from a guy from MER systems that physical transactions do
> keep
> > > memmory allocated since you prepare a Dataset and then that's only
> > released
> > > when commiting or rolling back. What happens if i have my transaction
> set
> > > as auto-committ?
> > >
> > > thnks
> >
> >
> >
> >
> >
>
___________________________________________________________________________
> > IB Objects - direct, complete, custom connectivity to Firebird or
> InterBase
> > without the need for BDE, ODBC or any other layer.
> >
>
___________________________________________________________________________
> > http://www.ibobjects.com - your IBO community resource for Tech Info
> papers,
> > keyword-searchable FAQ, community code contributions and more !
> >
> > Your use of Yahoo! Groups is subject to
http://docs.yahoo.com/info/terms/
> >
> >
>
>
>
>
>
___________________________________________________________________________
> IB Objects - direct, complete, custom connectivity to Firebird or
InterBase
> without the need for BDE, ODBC or any other layer.
>
___________________________________________________________________________
> http://www.ibobjects.com - your IBO community resource for Tech Info
papers,
> keyword-searchable FAQ, community code contributions and more !
>
> Your use of Yahoo! Groups is subject to http://docs.yahoo.com/info/terms/
>
>
>