Histórico da Página
Numero Maximo de registros a distribuir pelas Threads.
01. DADOS GERAIS
Linha de Produto: | Microsiga Protheus® |
---|---|
Segmento: |
Microsiga Protheus
Versões:
A partir da versão 12.1.17
Serviços | |
Módulo: | Financeiro |
Tipo: | Lógico |
Formato: | .T. ou .F. |
02. VISÃO GERAL
Tratamento para erro decorrente de grandes volumes de processamentos (estouro do #TempDB) utilizando
...
múltiplas threads nos registros de movimentação bancária.
Utilizado na rotina de Contabilização off-line CTBAFIN.
...
03. DESCRIÇÃO
Define o número máximo de registros a distribuir pelas threads.
Valor padrão: 0 (zero) - Isto significa que o sistema distribuirá o processamento pelas threads sem limitação.
...
Exemplo de utilização:
- Suponha que um determinado período possua 45.000 registros de movimentação (Baixas a pagar e a receber) para serem contabilizados;
- Suponha também que o parâmetro MV_CFINTHR esteja configurado para utilização de 3 threads.
Desta forma o sistema ativaria 3 threads processando cada uma 1/3 dos 45.000 registros:
- Thread 1 : 15.000 registros;
- Thread 2 : 15.000 registros;
- Thread 3 : 15.000 registros.
Imagine que ocorra um erro devido ao volume de registros por Thread. Para isso podemos utilizar o novo parâmetro para limitar esta quantidade pelas threads.
Vamos configurar MV_CTBNMRB com o valor de 21.000 registros. Nesta configuração o processamento será enviado para as threads em blocos limitados pelo valor configurado no parâmetro, conforme segue:
Primeiro Processo - 21.000 registros divididos entre as 3 threads. O sistema mantém o Saldo de 24.000 registros para um novo processamento automaticamente.
- Thread 1 : 7.000 registros;
- Thread 2 : 7.000 registros;
- Thread 3 : 7.000 registros.
Segundo Processo - 21.000 registros divididos entre as 3 threads. O sistema mantém o Saldo de 3.000 registros para um novo processamento automaticamente.
- Thread 1 : 7.000 registros;
- Thread 2 : 7.000 registros;
- Thread 3 : 7.000 registros.
Terceiro e último Processo - 3.000 registros divididos entre as threads. Neste caso a contabilização será encerrada pois não haverá saldo pendente.
- Thread 1 : 1.000 registros;
- Thread 2 : 1.000 registros;
- Thread 3 : 1.000 registros.