Arquivos da Categoria: Uncategorized

Load-Oriented Waits

Saudações pessoal, segue breves explicações sobre waits no Oracle RAC:

gc current block congested
gc cr block congested
gc current grant congested
gc cr grant congested

Indica que ocorreu um delay de processamento no GCS, geralmente causado por uma saturação de CPU.
Possíveis soluções:
– Aumentar a quantidade/poder de processamento de CPU’s no DB Server
– Implementar balanceamento do cluster no nível de serviço
– Adição de mais nós no cluster

O tempo de espera desse evento engloba, desde o momento que a sessão inicia a wait, até o recebimento do bloco.Sempre que a requisição por um block/message transfer, demorar mais que 1ms na internal queue, o Oracle irá considerar um overload.
Isso pode acontecer quando o processo background LMS não consegue realizar todo processamento da sua fila de solicitações. Um possível workaround é aumentar o número de processos background LMS. Para isso, é necessário aumentar o parâmetro GCS_SERVER_PROCESSES.O calculo da quantidade de processos LMS é baseado na quantidade de core dividido por dois. Se um servidor possui oito cores, então o parâmetro GCS_SERVER_PROCESSES será 4 (8 cores/2).Então, teremos quatro processos background LMS.
A view X$KJMSDP mantém informações preciosas quanto a carga de trabalho dos processos LMS.
Em um ambiente RAC bem balanceado, raramente veremos esses tipos de espera.

Referência: Gopalakrishnan, K . Oracle Database 11g. Oracle Real Application Clusters Handbook Second Edition. Oracle Press, 2011.