Re: How to avoid gc current block busy

From: Sayan Malakshinov <xt.and.r_at_gmail.com>
Date: Wed, 25 Sep 2019 11:19:47 +0300
Message-ID: <CAOVevU6QMMaj0aAhM1iadjYS5PtPayhNGOVh4rGY2EY7xf2-tg_at_mail.gmail.com>



Hi Greg,

If you have a problem with one table only, it would be easier to partition your table by clusterid, so each node read/write own partition only

ср, 25 сент. 2019 г., 11:14 GG <grzegorzof_at_interia.pl>:

> Hello,
>
> I've got this 2 node RAC 11.2.0.4 and an app (actually 3 app servers)
> which is realy rac unfriendly.
>
> There is a table 'clusternode' with 3 rows (64kb = 8 blocks) and ever
> 1-3 sec there is an update run on one of the rac node:
>
> update clusternode set lastheartbeat = sysdate where clusterid =
> 'oneOftheStringwitClusterId' .
>
> Normaly this query takes 8 li/o and takes below 1sec it is doing full
> table scan (there is no index on clusteridand Full table scan is the
> only possible plan).
>
> But out of nothing it can take ~30 sec (but still 8 logical i/o) and the
> app is hanging, during that time I can see 'gc current block busy' .
>
> It is 11.2.0.4 and the odd thing is I can not see any interconnect
> activity on AWR during the time of the issue (seems like a bug to me).
>
> Is there any way to mitigate such behaviour, my current thoughts:
>
> - node affinity via singleton service
>
> - shutdown 1 rac node and run on 1 node only
>
> - make this table pctfeee 99 ?
>
> Any other ideas ?
>
> Regards.
>
> Greg
>
>
>
>
>
> --
> http://www.freelists.org/webpage/oracle-l
>
>
>

--
http://www.freelists.org/webpage/oracle-l
Received on Wed Sep 25 2019 - 10:19:47 CEST

Original text of this message