Quando modifica modelos semânticos utilizando o Modelador Semântico ou o Model Administration Tool, as alterações podem ter implicações para as entradas armazenadas na cache. Por exemplo, se alterar a definição de um objeto físico ou de uma variável de modelo semântico dinâmica, as entradas da cache que fazem referência a esse objeto ou essa variável poderão deixar de ser válidas. Estas alterações podem resultar na necessidade de eliminar a cache. Existem dois cenários a ter em conta: quando modifica o seu modelo semântico existente e quando cria (ou carrega) um novo modelo semântico.
Alterações ao Modelo Semântico
Quando modifica um modelo semântico ou carrega um ficheiro .rpd diferente, as alterações efetuadas que afetam entradas da cache resultam automaticamente numa eliminação de todas as entradas da cache que fazem referência aos objetos alterados. A eliminação ocorre ao carregar as alterações. Por exemplo, se apagar uma tabela física de um modelo semântico, todas as entradas da cache que fazem referência a essa tabela são eliminadas na altura do registo de entrada. Quaisquer alterações efetuadas num modelo semântico na camada Lógica irão eliminar todas as entradas da cache desse modelo semântico.
Alterações às Variáveis do Modelo Semântico Globais
Os valores das variáveis do modelo semântico globais são renovados pelos dados que são devolvidos das consultas. Quando define uma variável de modelo semântico global, cria um bloco de inicialização ou utiliza um preexistente que contenha uma consulta de SQL. Também configura uma agenda para executar a consulta e renovar periodicamente o valor da variável.
Se o valor de uma variável de modelo semântico global for alterado, qualquer entrada da cache que utilize esta variável numa coluna torna-se obsoleta e é gerada uma nova entrada da cache quando os dados nessa entrada são novamente necessários. A entrada da cache antiga não é retirada imediatamente, permanecendo até ser limpa através do mecanismo de colocação na cache habitual.