Dúvida

É possível a utilização de RPOs distintos em um mesmo ambiente Protheus?

Ambiente

Protheus - Lib - A partir da versão 12.1.2510

Solução

Apesar da TOTVS não homologar e não recomendar a utilização de RPOs distintos em um mesmo ambiente, ela removeu o bloqueio imposto recentemente.

É importante lembrar que essa prática pode gerar comportamentos imprevisíveis no sistema, tais como inconsistências de dados e falhas complexas de diagnosticar.

Para monitorar esse cenário, o sistema dispõe de recursos de avaliação e identificação. Caso seja detectado o uso de RPOs divergentes, um log interno será gerado para registrar o evento.

O emprego da chave Specialkey interfere no controle de travamento (lock) executado no ambiente, tornando indispensável que cada ambiente conte com sua própria configuração de SpecialKey.
Com a adoção do controle de lock gerenciado pelo DBAccess, o travamento torna-se exclusivo por banco de dados, tornando a chave SpecialKey dispensável e prevenindo ocorrências ligadas a essa validação.

Regras de validação de RPOs

  • A mensagem gerada no console analisa tanto o RPO padrão quanto o RPO customizado.
  • O processo de desfragmentação do RPO também pode introduzir divergências entre os arquivos; portanto, um mesmo RPO desfragmentado em ocasiões distintas poderá acionar a validação.

Importante: O registro em log possui finalidade estritamente informativa. Ele não bloqueia o acesso nem impede falhas decorrentes dessa configuração, servindo apenas para evidenciar que o ambiente funciona fora das diretrizes homologadas pela TOTVS.

Saiba mais

Mais informações
Utilizando o controle de lock pelo DBAccess o lock já é exclusivo por db, com isso a chave SpecialKey não é mais utilizada, o que evita problemas com essa validação.
Mais informações sobre o lock pelo DBAccess