Árvore de páginas

Versões comparadas

Chave

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

Pagetitle
DBAccess - 22.1.1.2
DBAccess - 22.1.1.2

Estado
colourYellow
titleEM DESENVOLVIMENTO

Correções

Expandir
titleDBMonitor: Informação negativa de consumo de memória da thread

Incidente: O DBMonitor algumas vezes mostra o consumo de memória de uma conexão com o DBAcccess com valor negativo.

Solução: Para poder adequar o mecanismo para exibição do consumo de memória de uma conexão com o DBAccess de forma a não onerar o processamento, esse recurso está sendo desativado e será reavaliado posteriormente. 

Referente ao chamado: 15406280

Referente à ocorrência: TPGW-1234

Expandir
titleAccess Violation no driver para MSSQL Linux, no acesso a campo MEMO com conteúdo binário.

Incidente: Access Violation no driver para MSSQL Linux, no acesso a campo MEMO com conteúdo binário.

Solução: Alterada leitura ODBC de campos MEMO para contornar queda do driver MSSQL Linux com colunas CLOB que contenham um zero binário na primeira posição do buffer.

Referente ao chamado: TPGW-1255

Expandir
titleQueda DBAccess no encerramento do DBAccess Primário

Incidente: Utilização do DBAccess em configuração distribuída – um ou mais serviços secundários, um serviço primário. 

Ocorrência: Eventualmente, quando o serviço do DBaccess era finalizado, ele apresentava durante o término do serviço uma ocorrência de Access Violation.

Solução: Corrigido o mecanismo interno de mensagens entre DBAccess Primário e secundário(s).  

Referente ao chamado: TPGW-1272

Expandir
titleDBAccess Secundário apresentando mensagens LOCKCLIENT NOT AVAILABLE

Incidente: Utilização do DBAccess em configuração distribuída – um ou mais serviços secundários, um serviço primário. 

Ocorrência: Mesmo que o DBAccess primário esteja no ar, eventualmente um dbaccess secundário não conseguia conectar-se ou reconectar-se a um DBACcess Primário, ficando em LOOP até ser reiniciado.

Solução: Corrigido o mecanismo interno de mensagens entre DBAccess Primário e secundário(s).  

Referente ao chamado: TPGW-1272

Expandir
titleRelatório de Auditoria faltando informações

Incidente: Habilitada mediante SIGACFG, quando usado Bancos de Dados MSSQL e/ou Postgres, e o DBAccess configurado com o parâmetro ReleaseInactiveConn habilitado. Caso uma conexão fosse finalizada por inatividade, parte dos dados usados para auditoria eram perdidos, e após a reconexão, informações de auditoria geradas pela nova conexão poderiam não conter as demais informações de rastreabilidade. 

Solução: Corrigido o mecanismo de reconexão automática após desconexão por inatividade, para salvar e restaurar as informações de rastreabilidade de auditoria.

Referente ao chamado: TPGW-1275

Expandir
titleFalha no retorno de erro quando utilizada querys com campo Memo estão não sendo os último campos da query

Incidente: Submeter queries ao DBAccess, com o retorno de campos MEMO em Query habilitado, mas o(s) campo(s) MEMO não são o(s) último(s) campo(s) da Query. A mensagem "Invalid Field Order in Query -- Memo fields REMOVED -- They must be grouped at the end of the Query" era registrada no DBAccess como um ERRO -19 (COMMAND_FAILED), mas não retornava erro nenhum ao AppServer, causando a falsa impressão de erro na aplicação AdvPL.  

Solução: A mensagem passa a ser registrada como uma Advertência ( WARNING ) e somente será mostrada caso a configuração de advertências esteja ligada ( MsgWarnings=1 ) 


Referente ao chamado: TPGW-1277

Expandir
titleTCGetInfo com Parâmetros 11 e 12 não estão retornando lista de registros locados (locks) com DBAccess distribuído

Incidente: Ao chamar a função TCGetInfo 11 e 12 com um DBAccess distribuído, o retorno é vazio e aparece no dbconsole.log a mensagem ""tRecordLockClient::InspectLocks not implemented.

Solução: Implementadas as opções 11 e 12 da TCGetInfo para o uso com DBAccess distribuído.


Referente ao chamado: TPGW-1303

Expandir
titleAccess Violation em tISAMFile::GetFieldData

Incidente: Invasão de memória e finalização inesperada do DBAccess durante leitura de registros, em tabela temporaria criada com um índice numérico, onde o campo numérico possui um numero de digitos informado inválido – superior a 18.

Solução: Numero de digitos total de um campo numérico ajustado automaticamente para 18 digitos, caso inforfmado um tamanho superior a 18 na criação da tabela. 

Referente ao chamado: 15938978

Referente à ocorrência: TPGW-1306

Melhorias

Expandir
titleComportamento do DBtools quando se migra tabela compactada

Incidente: Quando o DBTools era utilizado para migrar um banco de dados SQL Server que estava compactado, a estimativa de tamanho estava errada e mostrava mais de 100% durante a migração.

Solução: Criada uma nova configuração para devolver uma melhor estimativa de tamanho. Essa configuração terá efeito apenas para SQL Server. Por padrão a configuração está desligada.

Referente ao chamado: TPGW-1268

Expandir
titleMelhoria no desempenho da função TC_CanOpen

Solução: Solução: Melhoria de desempenho no TC_CanOpen, removendo consultas ao DBAccess mirror.

Referente ao chamado: TPGW-1279

Expandir
titleTravamentos no DBAccess devido a grande quantidade de locks

Incidente: Perdas momentâneas de desempenho, quando do uso DBAccess em configuração distribuída, ao lidar com listas de bloqueios de mais de 50 mil registros por tabela.

Solução: Melhoria expressiva nos algoritmos de bloqueio e liberação de registros.  

Referente à ocorrência: TPGW-1308

Expandir
titleDBTOOLS - Novo parâmetro para utilização de lista de arquivos para copia.

Incidente: Implementar uma melhoria no DBTools para viabilizar a leitura de um arquivo TXT que contenha a lista de tabelas que serão migradas.

Solução: Foi implementado o recurso de leitura de arquivo TXT através da opção "Set Migration Parameters".

Detalhes:
- Na opção Set Migration Parameters, a 8ª opção ( Tables to copy ) passa a suportar a leitura de um arquivo.
- Pode-se informar apenas o nome do arquivo (file.txt) desde que ele esteja no mesmo path do executável do DBTools.
- Pode-se utilizar path absoluto, desde que na mesma máquina, tanto para a versão Windows quanto para Linux
Exemplo:
windows - c:\tmp\tables.txt
linux - /tmp/tables.txt

Quanto ao arquivo:
- Ele deve, obrigatoriamente, ter a extensão .txt
- Não recomendamos que ele seja formatado com quebras de linhas (sejam CRLF ou LF), embora haja um tratamento básico para retirá-los
- Caso haja quebra de linha, todo o conteúdo posterior a quebra será desconsiderado
- Para distinguir as diferentes tabelas a serem migradas, deve-se utilizar a virgula (,) como separador
- Foi mantido o suporte a sintaxe LIKE (SQL ANSI)

Referente à ocorrência: TPGW-1249

Novas Implementações