Oracle FAQ Your Portal to the Oracle Knowledge Grid

Home -> Community -> Usenet -> c.d.o.server -> Re: Poor RAC inter-instance performance

Re: Poor RAC inter-instance performance

From: Ivan Vasquez <>
Date: Tue, 30 Mar 2004 09:30:28 -0500
Message-ID: <c4c0a4$hlq$>

If I run the query in B first, it will perform well. Then if I go to A and run it, A will now be the slow instance. Bad performance can happen at either instance.

Furthermore, when the query result is reasonably small (probably completely cached in memory), any subsequent runs at the badly performing instance will now run well.

Under these conditions, even an unrestricted select * from table can be submitted and hang just as if it was processing a complex where condition.

I tested the interconnect by scp'ing a 300+MB patch file: It transfers in matter of a few seconds (and I do see the link busy!)

The machines have dual PIII 700Mhz. The queries are run while logged in directly into the node to discard network slowdowns. I patched them to to discard any known bugs.

We need to find a solution for this before we decide to implement RAC in production, as even if it is with better hardware, they would be i386 machines as well.

Thanks again.

"Howard J. Rogers" <> wrote in message news:4068b3fe$0$20345$
> As a first test to eliminate possibilities, what happens if you run the
> query on instance B first? Does it still perform badly? And then if you
> it second on Instance A, does instance A now perform badly or well?
> Regards
> "Ivan Vasquez" <> wrote in message
> news:c4aafk$897$
> > I'm testing a 2-node Linux RAC installation that's performing poorly
> > certain circumstances. The cluster is using 1G NICs as interconnect. I
> > already know I'm not supposed to ask for great performance out of it,
> > however the interconnect's capacity is far from reached whenever I
> > bad performance.
> >
> > Here is the behavior:
> >
> > With only one instance up, any query runs quickly, as expected.
> >
> > With both instances up, I connect to instance A, run a long query (say,
> > 30-seconds) and it runs normally. At this point I assume instance A has
> > cached some or all the blocks used for the query.
> >
> > Then I connect to instance B and issue the same query as above. Rows are
> > returned intermittently, up to 4-second delays in between. I assume in
> this
> > case RAC is trying to ship whichever buffers are found in instance A
> instead
> > of reading from disk. No DML activity is going on, it's just me and the
> > database.
> >
> > What confuses me is that I don't see much traffic thru the interconnect,
> and
> > CPU and disk utilization are far from high. Using vmstat I see increased
> > context switches, but they are just as high as those in the instance
> > runs fine! I have read note 181489.1 but haven't found much help from it
> and
> > wonder if it's something else inherent to my architechture (i386).
> >
> > Thanks in advance for any clues.
> > Ivan.
> >
> >
Received on Tue Mar 30 2004 - 08:30:28 CST

Original text of this message