Board index » delphi » Transaction is going and going and going and...

Transaction is going and going and going and...

Hi guys,

    I've got a weird problem. We ran a test program that insert records in 2
table, when a power failure occured. I did have some corruption primarily in
the 2 table. I correct them with gfix and has of now it seems to be working
correctly. The problem that i have is that the ibserver.exe (7.0 trial)
seems to be stuck in a sort of loop. It's always using cpu (30% with peak to
80 or 90% on a 2.4ghtz intel). I did get the problem before and i'm pretty
sure it was a transaction which was never comitted (or cancelled) and a
cancel it using the ib monitor. I tried to do the same for my present
problem but i get a connection lost every time. I read a post that seemed to
have a problem similar to mine. What i wanted to know is :

1- Is that 'normal' behavior for the interbase server?
2- Is there a way to correct this with a command line tool?

And also, after a while the service guardian and server(on win 2000 pro)
stop on his own. Tried to start it again but i get a message from windows
that says that the service could not be started but it didn't generate any
error

if you need any other info don't hesitate

Thanx in advance

Alex

 

Re:Transaction is going and going and going and...


Quote
Alexandre Genereux wrote:
>     I've got a weird problem. We ran a test program that insert
> records in 2 table, when a power failure occured. I did have some
> corruption primarily in the 2 table. I correct them with gfix and has
> of now it seems to be working correctly.

        First, if you're not 100% confident in the stability of your server,
you should turn forced writes on (see Operations Guide).  Then a power
failure should not corrupt your DB.

Quote
> The problem that i have is
> that the ibserver.exe (7.0 trial) seems to be stuck in a sort of
> loop. It's always using cpu (30% with peak to 80 or 90% on a 2.4ghtz
> intel). [...] What i wanted to know is :

> 1- Is that 'normal' behavior for the interbase server?

        No, unless the sweep is active.  IB Performance Monitor will tell you
this, on the Database tab.

Quote
> 2- Is there a way to correct this with a command line tool?

        You need to figure out what the problem is -- Look at IB Performance
Monitor.  Resort the Statements and Transactions tab by the Quantum
(CPU use) column by clicking on the grid headers.  Is there anything
with a very large number associated?

        -Craig

--
Craig Stuntz [TeamB] . Vertex Systems Corp. . Columbus, OH
  Delphi/InterBase Weblog : http://delphi.weblogs.com
How to ask questions the smart way:
  http://www.catb.org/~esr/faqs/smart-questions.html

Re:Transaction is going and going and going and...


"Craig Stuntz [TeamB]" <cstu...@vertexsoftware.com> wrote in message
<news:3ef9bdbf@newsgroups.borland.com>...

Quote
> Alexandre Genereux wrote:

> > I've got a weird problem. We ran a test program that insert
> > records in 2 table, when a power failure occured. I did have some
> > corruption primarily in the 2 table. I correct them with gfix and has
> > of now it seems to be working correctly.

> First, if you're not 100% confident in the stability of your server,
> you should turn forced writes on (see Operations Guide). Then a power
> failure should not corrupt your DB.

Thank you for the advice...it is using forced write now without any
significant impact on performance

Quote
> > The problem that i have is
> > that the ibserver.exe (7.0 trial) seems to be stuck in a sort of
> > loop. It's always using cpu (30% with peak to 80 or 90% on a 2.4ghtz
> > intel). [...] What i wanted to know is :

> > 1- Is that 'normal' behavior for the interbase server?

> No, unless the sweep is active. IB Performance Monitor will tell you
> this, on the Database tab.

No sweep active...

Quote
> > 2- Is there a way to correct this with a command line tool?

> You need to figure out what the problem is -- Look at IB Performance
> Monitor. Resort the Statements and Transactions tab by the Quantum
> (CPU use) column by clicking on the grid headers. Is there anything
> with a very large number associated?

Now it's getting interesting, the problem 'seems' to have resolved itself
(don't laugh..:P)

I let it run for a couple of minute while i was writng to you...and when i
came back i tried to cancel the 2 statement who had large quantum number
(one dealing with the tmp$pool table and the other with the tmp$attachment)
dunno if i solve the problem or not. I know that these 2 table are access in
a regular basis by interbase. Everything returned to normal and my service
didn't stop for nothing anymore. I'll try repeating this error and i'll
update this thread accordingly. The service shutting down is the one thing
that bothers me the most.

When you start interbase server, does it need some time to build reference
or index (or anything) which could explain why it reacted the way it has?

my database is a small one (about 2 million record in 14 table, 2 table make
the bulk of the db, approx. 1million each) with a couple of index and
generator...nothing IMHO which could make my interbase server go wild
except,of course, my own fault..:P

Thanx again

Alex

Re:Transaction is going and going and going and...


Quote
Alexandre Genereux wrote:
> When you start interbase server, does it need some time to build
> reference or index (or anything) which could explain why it reacted
> the way it has?

        No.  When you start IB server, the only thing it does is change the
status of active transactions (there shouldn't be any, unless the
server has previously crashed) to rolled back.  This is instantaneous.

        -Craig

--
Craig Stuntz [TeamB] . Vertex Systems Corp. . Columbus, OH
  Delphi/InterBase Weblog : http://delphi.weblogs.com
Everything You Need to Know About InterBase Character Sets:
  http://delphi.weblogs.com/stories/storyReader$306

Other Threads