Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

 

 

...

Portuguese

Pagetitle
ADS Error 7022 - Operação Maximum index ...
ADS Error 7022 - Operação Maximum index ...

 

Ocorrência

ADS Error (7022) - Operação: Maximum index ...

Esta

ocorrência

indica

um

estouro

do

limite

de

balanceamento

do

índice

atualmente

utilizado

pela

em uma tabela

, através do driver ADS, ocorrido durante a operação . Esta ocorrência

, reproduzido quando utilizado o driver ADS. Esta ocorrência apresenta-se

no

log

do

console

do

Servidor

de

Aplicação,

precedendo

em geral

uma

ocorrência

fatal

do

AdvPL,

em geral

normalmente relacionada

às

funções

DBAppend(),

DBRUnlock()

e/ou

DBSkip().

ADS

Error

(7022)

-

Operacao:

<x>

-

Maximum

index

levels

exceeded.

File:

<y>

Causa

Esta ocorrência geralmente é reproduzida , quando da utilização de uma tabela indexada, onde o resultado da foi usada uma expressão de indexação cujo resultado da chave ( &(Indexkey()) ) ultrapasse 140 bytes, durante e/ou após sucessivas operações de inserção de registros.carascteres, onde houve uma sequencia grande de inserções consecutivas.

Correção

  • Verifique as chaves de índice utilizadas para a tabela, e garanta que nenhuma chave seja maior que 140 caracteres.
  • Caso não seja possível reduzir a chave do índice, verifique se é possível criá-la após os dados estarem inseridos na tabela.
  • Caso nenhuma das alternativas anteriores seja viável, o programa pode ser alterado para, preventivamente, recriar o índice a cada X mil registros inseridos. Este número X deve ser determinado com base na rotina em questão, e deve ser estabelecido um limite preventivo, para deletar e recriar o índice. Por exemplo, no programa em questão normalmente após
  • Ou, troque a RDD de acesdo a tabela. Ao invés de cria a tabela usando driver ADS ( DBFCDX com ADS Local ou DBFCDXADS ), use o driver CTREECDX, onde os índices não têm esta limitação de balanceamento com chaves maiores que 140 bytes.

 No caso da reprodução desta ocorrência, reindexar a tabela (deletar e recriar o índice) torna a aplicação operacional novamente, porém após sucessivas inserções e alterações na tabela, a ocorrência provavelmente será reproduzida novamente. Verifique as chaves de índice utilizadas para a tabela e evite que seja utilizada uma chave cujo retorno da expressão de indexação ultrapasse 140 bytes.