Correção de queda do serviço do DBAccess por invasão de memória em situação específica
Situação | Utilização da função TCRefresh com string superior a 250 caracteres. |
---|---|
Ocorrência | Caso a função TCRefresh seja chamada utilizando uma string com mais de 250 caracteres, ocorre uma invasão de memória, que causa instabilidade e queda no serviço do DBAccess. Neste caso em particular, a invasão de memória não é percebida no momento da chamada da função, mas a partir deste momento, o serviço do DBAccess pode cair em questão de minutos. |
Correção | A manipulação de memória utilizada na operação envolvida foi protegida, para não exceder o limite de memória do buffer, e gerar uma ocorrência de erro interna "tAutochar overflow on strcat" no DBAccess, que finaliza apenas o processo atual, sem causar instabilidade ou queda do serviço. A função TCRefresh foi concebida para receber como parâmetro o nome de uma tabela do SGDB, para atualizar as estruturas de cache e contador de numeração de registros do DBaccess. Dentro dos padrões de nomenclatura de tabelas da aplicação, este valor deveria ser inferior a 32 caracteres. |
Informações adicionais |
|
Visão Geral
Import HTML Content
Conteúdo das Ferramentas
Tarefas