Não é possível ver informações atualizadas no painel de cache da Data Virtualization
Sintomas
Você observa que a cache hit count ou o timestamp last usados não estão sendo atualizados para todos os caches. Você também pode notar que as consultas mais recentes não estão aparecendo no histograma de capacidade de resposta ou na guia Consultas do painel do cache.
Causas
É provável que o monitoramento de eventos esteja desativado no console de monitoramento ou tenha parado de funcionar. Também é provável que as listas de uso do Db2 não estejam mais ativas. Os monitores de eventos são usados para encontrar consultas executadas recentemente e metadados relacionados, e as listas de uso do db2 são usadas para encontrar a contagem de acertos do cache.
Resolvendo o problema
- Vá para e certifique-se de que a coleta do monitor de eventos esteja ativada e, em seguida, anote o período de coleta (o padrão esperado é de 5 minutos).
- Executar uma consulta válida. Depois do período de coleta, execute o seguinte SQL para verificar se a consulta válida anterior foi registrada e coletada
Essa consulta retorna o SQL válido que foi executado na últimaSELECT UNIQUE CAST(SQL_TEXT AS VARCHAR(1000)),SESSION_AUTH_ID, TIME_COMPLETED FROM IBMCONSOLE.EVENT_ACTIVITY A, IBMCONSOLE.SQL_DIM D WHERE A.SQL_HASH_ID = D.SQL_HASH_ID AND STMT_TYPE = 2 AND ROUTINE_ID = 0 AND SQLCODE >= 0 AND PARTIAL_RECORD = 0 AND ACTIVITY_TYPE = 'READ_DML' AND TIME_COMPLETED > (EXTRACT(EPOCH FROM (CURRENT TIMESTAMP - CURRENT TIMEZONE - 1 HOUR))) AND upper(SQL_TEXT) LIKE '%BLUADMIN%' ORDER BY TIME_COMPLETED DESC FETCH FIRST 1 ROWS ONLY1hora e retorna todas as consultas válidas que contêm o texto BLUADMIN. Você pode personalizar e substituir os seguintes valores:- BLUADMIN com outra palavra-chave.
- 1 HOUR em outro momento.
- 1 ROWS ONLY com uma contagem de linhas diferente.
Observação: se a consulta retornar zero resultados após o término do período de coleta de monitoramento de eventos, a coleta de eventos não está funcionando corretamente. Entre em contato com o suporte IBM Db2 Data Management Console para obter uma solução. Não prossiga para a próxima etapa. - Execute as seguintes consultas para verificar se a extração de eventos está configurada corretamente:
SELECT 1 FROM SYSIBM.SYSROUTINES WHERE ROUTINESCHEMA='CACHESYS' AND ROUTINENAME='EXTRACT_EVENT_METASTORE';SELECT 1 FROM SYSTOOLS.ADMIN_TASK_LIST WHERE NAME = 'EXTRACT_EVENT_METASTORE'; - Com base nos resultados da etapa anterior, conclua uma das opções a seguir. Certifique-se de substituir <CACHING_POD_NAME> pelo nome do pod de cache.
- Se as consultas da etapa anterior retornarem zero ou nenhum resultado, reinicie o processo de cache no pod principal:
- Acesse o pod principal ( c-db2u-dv-db2u-0 ) na Data Virtualization instância.
- Alterne para o usuário db2inst1:
su - db2inst1 /opt/dv/current/run_time/caching/run-cache.sh stop
- Se as consultas da etapa anterior retornarem 1 no conjunto de resultados, é provável que as listas de uso do Db2 não estejam mais ativas. Execute esta consulta:
SELECT USAGELISTNAME, STATE, LAST_STATE_CHANGE, USED_ENTRIES FROM TABLE (MON_GET_USAGE_LIST_STATUS ('CACHESYS', NULL, -1))Se essa consulta retornar zero resultados mesmo quando houver vários caches
active, então as listas de uso inativas são o motivo pelo qual os metadados do cache (ou seja, contagem de ocorrências) não estão sendo atualizados. O resultado deve retornar o mesmo número de listas de uso que o número de caches ativos e com o estadoA(ativo) ouP(pendente).Reinicie o processo de cache no pod principal:- Acesse o pod principal ( c-db2u-dv-db2u-0 ) na Data Virtualization instância.
- Alterne para o usuário db2inst1:
su - db2inst1 /opt/dv/current/run_time/caching/run-cache.sh stop
Observação: Como alternativa, para resolver esse problema sem reiniciar o pod de cache, conclua estas etapas:- Obtenha o nome da lista de uso que você usará para substituir <USAGE_LIST_NAME>:
SELECT USAGELISTNAME FROM SYSCAT.USAGELISTS WHERE USAGELISTSCHEMA LIKE 'CACHESYS' AND STATUS LIKE 'V' - Execute essa consulta para cada lista de utilização:
set usage list CACHESYS.<USAGE_LIST_NAME> state active