Árvore de páginas

Versões comparadas

Chave

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

...

Exibir filhos

Correções

Expandir
titleInterface PO-UI via chave app_environment com ocorrência de erro: [SQLITE] Open Query Error: no such table: dbTemp.tmp_Falha na inicialização do Rest após processo de compilação e desfragmentação de RPO.

Incidente:  o realizar a compilação de um fonte e logo em seguida realizar o procedimento de desfragmentação, o serviço de REST não sobe mais e apresenta o erro "FUNCTION TLPP.REST.HANDLEREST NOT FOUND". Além disso, vários outros recursos do ERP passam a apresentar "500 - Erro interno do servidor".

Solução: foi protegido o acesso ao Rpo TLpp

Incidente: ao utilizar a interface PO-UI em um ambiente com SQLite como database principal (RPODB=SQLITE), a emissão de uma query para abertura da tabela temporária falhava apresentando a mensagem de erro:
"[SQLITE] Open Query Error: no such table: dbTemp.tmp_29892_SC00 on MPSYSOPENQUERY(MPSYSOPENTABLES.PRW) 05/09/2022 10:01:39 line : 712"

Solução: para evitar essa falha, alteramos o tratamento de tabelas temporárias no database DB_TMP e passamos a criar a tabela temporária no próprio DB_SYS.

Referente ao chamado: DTAPPSRV-69437468

Expandir
title[HTTPPost] Lentidão no consumo de API específica no AdvPLDeclaração de JSON no TLpp não suporta Array

Incidente:  a implementação de JSON direto no fonte TLpp não suporta o uso de array. Também não suportava tipos de dados primários JSON (true, false, null). 

Solução: implementado o tratamento de objetos JSON conforme a RFC.

Documentação: Json

Incidente: ao consumir determinadas APIs via AdvPL, a resposta de retorno estava demorando muito, entre 4 e 5 minutos.

Solução: foram realizados ajustes no separador de linhas de recebimento do header HTTP para suportar o delimitador '\n'.

Referente ao chamado: DTAPPSRV-72802765

Expandir
titleOcorrência de queda no Linux com erro "[THROW] tAutoChar::CheckBuffer() ERROR - *** BUFFER OVERRUN ***"MPFD (Multipart/Form-data) não está funcionando no Rest

Incidente:  MPFD (Multipart/Form-data) parou de funcionar no Rest, não fazendo mais download de arquivos.

Solução: correção para retornar o comportamento anterior e com isto permitir a gravação do arquivo em disco e retornar para o usuário o Json contendo as informações

Incidente: no Application Server Linux, à medida que o número de handles de arquivos e sockets aumentava, havia o risco de queda do Application Server por deficiência no tratamento de eventos de rede.

Solução: melhorado o tratamento de eventos de rede pelo Application Server no ambiente Linux, evitando as quedas relatadas.

Referente ao chamado: DTAPPSRV-70417391

Expandir
titleQueda Função SFTPUpld2 retorna Login Denied no Application Server quando a chave tlpp_rest_log configurada com valor igual a 1 e o path da pasta do AppServer contém espaços.

Incidente: queda no Application Server em Serviço Rest quando a chave tlpp_rest_log configurada com valor igual a 1 e o path da pasta do AppServer contém espaços.  falha no uso de certificados de login ssh2-rsa na função SFTPUpld2.

Solução: correções realizadas no componente para utilização de certificadosSolução: correção realizada dentro do componente Vader para o tratamento correto do path de arquivos.

Referente ao chamado: DTAPPSRV-73067083

Expandir
titleProblema na criação de tela usando ADVPL e Code Block, ocasionando queda do Application ServerFunção SFTPdwl2 com problemas na utilização de certificado para login.

Incidente:problema  problemas na criação de tela usando ADVPL e Code Block, ocasionando queda do Application Serverutilização de certificado para login.

Solução: proteção e checagem na lista de code blockcorreções na utilização de certificado.

Referente ao chamado: DTAPPSRV-72747252

Expandir
titleFalha no funcionamento do Broker Agent identificado na versão 20.3.1.9

Incidente: não estava sendo possível utilizar o Broker Agent na versão 20.3.1.9. As instâncias de Application Server não estavam sendo criadas.

Solução: corrigido o tratamento do arquivo de configuração do Broker Agent que estava causando este comportamento.

Referente ao chamado: DTAPPSRV-7317

Interface PO-UI via chave app_environment com ocorrência de erro: [SQLITE] Open Query Error: no such table: dbTemp.tmp_

Incidente: ao utilizar a interface PO-UI em um ambiente com SQLite como database principal (RPODB=SQLITE), a emissão de uma query para abertura da tabela temporária falhava apresentando a mensagem de erro:
"[SQLITE] Open Query Error: no such table: dbTemp.tmp_29892_SC00 on MPSYSOPENQUERY(MPSYSOPENTABLES.PRW) 05/09/2022 10:01:39 line : 712"

Solução: para evitar essa falha, alteramos o tratamento de tabelas temporárias no database DB_TMP e passamos a criar a tabela temporária no próprio DB_SYS

Expandir
titleAccess Violation - HTTP_Cookies_s::parse

Incidente: Access Violation dentro do Vader envolvendo o tratamento de Cookies HTTP

Solução: revisado e corrigido o componente interno.

Referente ao chamado: DTAPPSRV-73486943

Expandir
titleApplication Server apresenta falha na execução da função HttpSGet utilizando certificado com path absoluto.[HTTPPost] Lentidão no consumo de API específica no AdvPL

Incidente: ao consumir determinadas APIs via AdvPL, a resposta de retorno estava demorando muito, entre 4 e 5 minutos.

Solução: foram realizados ajustes no separador de linhas de recebimento do header HTTP para suportar o delimitador '\n' o mecanismo de reinicialização da camada do App Monitor evidenciou uma falha na HttpSGet quando utilizamos certificado e chave privada armazenados em path absoluto.Solução: fizemos um ajuste para viabilizar a utilização de certificado e chave privada armazenados em uma pasta diferente do RootPath, evitando a falha em questão.

Referente ao chamado: DTAPPSRV-73837280

Expandir
titleQueda de performance em rotinas de integração ExcelOcorrência de queda no Linux com erro "[THROW] tAutoChar::CheckBuffer() ERROR - *** BUFFER OVERRUN ***"

Incidente: no Application Server Linux, à medida que o número de handles de arquivos e sockets aumentava, havia o risco de queda do Application Server por deficiência no tratamento de eventos de rede.

Solução: melhorado o tratamento de eventos de rede pelo Application Server no ambiente Linux, evitando as quedas relatadas

Incidente: após atualização do AppServer foi identificado um problema de serialização na conexões RPC que impactaram na performance das rotinas de Integração Excel.

Solução: foi aplicada uma correção na camada de conexões RPC para evitar este comportamento, devolvendo a performance esperada para a integração.

Referente ao chamado: DTAPPSRV-74287041

Expandir
titleUpload em lote de arquivos utilizando rotinas Rest

Incidente: erro no upload de arquivos utilizando rotinas REST.

Solução: correção no tratamento de upload de arquivos.

Referente ao chamado: DTAPPSRV-7438

Expandir
title"Insufficient Buffer on tString::sprintf()" ao processar um Json inválido, observado em alguns casos específicos com arquivos Json muito grandes.

Incidente: "Insufficient Buffer on tString::sprintf()" ao processar um Json inválido, observado em alguns casos específicos com arquivos Json muito grandes.

Solução: correção no tratamento de arquivos Json.

Referente ao chamado: DTAPPSRV-7334

Queda no Application Server quando a chave tlpp_rest_log configurada com valor igual a 1 e o path da pasta do AppServer contém espaços.

Incidente: queda no Application Server em Serviço Rest quando a chave tlpp_rest_log configurada com valor igual a 1 e o path da pasta do AppServer contém espaços.

Solução: correção realizada dentro do componente Vader para o tratamento correto do path de arquivos.

Referente ao chamado: DTAPPSRV-7306

Expandir
titleProblema na criação de tela usando ADVPL e Code Block, ocasionando queda do Application Server.

Incidente: problema na criação de tela usando ADVPL e Code Block, ocasionando queda do Application Server.

Solução: proteção e checagem na lista de code block

Expandir
titleEnvio de PDF por API REST para URL formatada

Incidente: Application Server estava apresentando lentidão ao realizar uma requisição PUT via Rest. A aplicação estava pegando o content-length da requisição de forma incorreta, por isso ficava esperando por um body como resposta, o que dava a impressão de baixo desempenho.

Solução: foram realizados ajustes para que o content-length seja consumido da forma correta.

Referente ao chamado: DTAPPSRV-72947274

Expandir
titleTWsdlManager - erro 401 UnauthorizedFalha no funcionamento do Broker Agent identificado na versão 20.3.1.9

Incidente: não estava sendo possível utilizar o Broker Agent na versão 20.3.1.9. As instâncias de Application Server não estavam sendo criadas.

Solução: corrigido o tratamento do arquivo de configuração do Broker Agent que estava causando este comportamento.

Referente ao chamado: DTAPPSRV-7317

Expandir
titleAccess Violation - HTTP_Cookies_s::parse

Incidente: Access Violation dentro do Vader envolvendo o tratamento de Cookies HTTP

Solução: revisado e corrigido o componente interno.

Incidente: utilizando a classe TWSDLManager, ao fazer o parse de um WSDL que necessita de autenticação HTTP e que existe um redirect para outra URL, necessitando dos mesmos dados de autenticação, o parse falhava.

Solução: criada a propriedade lHTTPTransferAuth na classe TWSDLManager, que permite transferir os dados de autenticação HTTP em caso de redirect da URL. O valor padrão dessa propriedade é true (.T.).

Referente ao chamado: DTAPPSRV-74647348

Expandir
titleErro na recepção de arquivos do Rest 2.0Application Server apresenta falha na execução da função HttpSGet utilizando certificado com path absoluto.

Incidente: o mecanismo de reinicialização da camada do App Monitor evidenciou uma falha na HttpSGet quando utilizamos certificado e chave privada armazenados em path absoluto.

Solução: fizemos um ajuste para viabilizar a utilização de certificado e chave privada armazenados em uma pasta diferente do RootPath, evitando a falha em questão

Incidente: erro na execução de download de arquivos através das rotinas REST.

Solução: correção no tratamento do MFPD (Multi forma part data).

Referente ao chamado: DTAPPSRV-74557383

Expandir
titleFunções AdvPL relacionadas ao RPO Seguro tratando incorretamente o tipo de RPOQueda de performance em rotinas de integração Excel

Incidente: após atualização do AppServer foi identificado um problema de serialização na conexões RPC que impactaram na performance das rotinas de Integração Excel.

Solução: foi aplicada uma correção na camada de conexões RPC para evitar este comportamento, devolvendo a performance esperada para a integração

Incidente: funções AdvPL relacionadas ao RPO seguro não estavam respeitando corretamente as definições de tipo de RPO e com isso, falhando nas consultas e acessos.

Solução: ajustes e correções para correto acesso aos RPOS TLPP, Custom e Default.

Referente ao chamado: DTAPPSRV-74457428

Expandir
titleUso do logprofiler no License Server derruba o Application Server após ocorrência de erro "Insufficient buffer on tString:sprintf()"Upload em lote de arquivos utilizando rotinas Rest

Incidente: erro no upload de arquivos utilizando rotinas REST.

Solução: correção no tratamento de upload de arquivos

Incidente: insufficient Buffer on tString::sprintf() durante a geração de um logprofiler.

Solução: impor um limite de 256 bytes para definir uma string de "observação" para a Thread / Processo atual.

Referente ao chamado: DTAPPSRV-74447438

Expandir
titleLog do Broker Agent crescendo muito rapidamente

Incidente: possibilidade de crescimento indiscriminado do log do Broker Agent quando executado em modo desktop.

Solução: melhorado o tratamento de eventos de teclado (Ctrl-C etc) que estava causando o crescimento indiscriminado do log do Broker Agent.

Referente ao chamado: DTAPPSRV-7420

"Insufficient Buffer on tString::sprintf()" ao processar um Json inválido, observado em alguns casos específicos com arquivos Json muito grandes.

Incidente: "Insufficient Buffer on tString::sprintf()" ao processar um Json inválido, observado em alguns casos específicos com arquivos Json muito grandes.

Solução: correção no tratamento de arquivos Json.

Referente ao chamado: DTAPPSRV-7334

Expandir
titleEnvio de PDF por API REST para URL formatada

Incidente: Application Server estava apresentando lentidão ao realizar uma requisição PUT via Rest. A aplicação estava pegando o content-length da requisição de forma incorreta, por isso ficava esperando por um body como resposta, o que dava a impressão de baixo desempenho.

Solução: foram realizados ajustes para que o content-length seja consumido da forma correta

Expandir
titleOcorrência de queda no Application Server com a chave ADVSQLREPLAY habilitada

Incidente: finalização inesperada do TOTVS Application Server ao utilizar o rastreio de conexões com o DBACCESS ADVSQLREPLAY em uma situação em que a aplicação AdvPL tem duas ou mais conexões ativas e fecha a primeira conexão aberta com TCUNLINK().

Solução: corrigida a busca na lista de conexões ativas.

Referente ao chamado: DTAPPSRV-74097294

Expandir
titleArquivo sso\\etc\\services.conf vazio utilizado pelo SAML causando queda do Application ServerTWsdlManager - erro 401 Unauthorized

Incidente: utilizando a classe TWSDLManager, ao fazer o parse de um WSDL que necessita de autenticação HTTP e que existe um redirect para outra URL, necessitando dos mesmos dados de autenticação, o parse falhava.

Solução: criada a propriedade lHTTPTransferAuth na classe TWSDLManager, que permite transferir os dados de autenticação HTTP em caso de redirect da URL. O valor padrão dessa propriedade é true (.T.) o arquivo sso\etc\services.conf em branco utilizado pelo SAML estava causando a queda do Application Server.Solução: checagem do arquivo services.conf e mensagem de erro no console durante a execução, caso o arquivo esteja em branco.

Referente ao chamado: DTAPPSRV-74027464

Expandir
titleQuery com estrutura inválida de campos no SQLITE.Erro na recepção de arquivos do Rest 2.0

Incidente: select * de tabela SQLITE após apagar e recriar a tabela com nova estrutura diferente da anterior, retornava a primeira estrutura da tabela, pois ao apagar a tabela, um cache de resolução de queries não era apagado. erro na execução de download de arquivos através das rotinas REST.

Solução: correção no tratamento do MFPD (Multi forma part data)Solução: limpar o cache de estrutura de retorno de Queries relacionado a uma tabela, quando ela for eliminada.

Referente ao chamado: DTAPPSRV-73957455

Expandir
titleSymtab em uso após compilação.Funções AdvPL relacionadas ao RPO Seguro tratando incorretamente o tipo de RPO

Incidente: funções AdvPL relacionadas ao RPO seguro não estavam respeitando corretamente as definições de tipo de RPO e com isso, falhando nas consultas e acessos.

Solução: ajustes e correções para correto acesso aos RPOS TLPP, Custom e Default

Incidente: ao forçar uma compilação com a chave BUILDKILLUSERS e Servidor Rest ativos, o serviço Rest era corretamente interrompido. Porém, ao tentar conectar novamente ao serviço Rest (exemplo: Webmonitor e TLPP Monitor) ocorria o erro "SYMTAB in use for addSourceInfo...".

Solução: foram realizadas correções pontuais no Servidor de Aplicação (Application Server).

Referente ao chamado: DTAPPSRV-73757445

Expandir
titleErro de CORS usando fetch.Uso do logprofiler no License Server derruba o Application Server após ocorrência de erro "Insufficient buffer on tString:sprintf()"

Incidente: insufficient Buffer on tString::sprintf() durante a geração de um logprofiler.

Solução: impor um limite de 256 bytes para definir uma string de "observação" para a Thread / Processo atual

Ocorrência: requisições em REST com "origin: null" estavam falhando por causa do tratamento de CORS.

Solução: corrigido o tratamento de CORS para aceitar requisições com "origin: null".

Referente ao chamado: DTAPPSRV-73607444

Expandir
titleOcorrência de access violation no AppServer em execução de Job.Log do Broker Agent crescendo muito rapidamente

Incidente: possibilidade de crescimento indiscriminado do log do Broker Agent quando executado em modo desktop.

Solução: melhorado o tratamento de eventos de teclado (Ctrl-C etc) que estava causando o crescimento indiscriminado do log do Broker Agent

Ocorrência: access Violation no Application Server causado pela soma entre variáveis definida como Char (tipagem forte) e string.

Correção: proteção para não permitir operação de soma, apresentando mensagem de erro durante a execução.

Referente ao chamado: DTAPPSRV-73557420

Expandir
titleWebApp - Problema na montagem de mensagens maiores que 100k no websocket.Ocorrência de queda no Application Server com a chave ADVSQLREPLAY habilitada

Incidente: finalização inesperada do TOTVS Application Server ao utilizar o rastreio de conexões com o DBACCESS ADVSQLREPLAY em uma situação em que a aplicação AdvPL tem duas ou mais conexões ativas e fecha a primeira conexão aberta com TCUNLINK().

Solução: corrigida a busca na lista de conexões ativas

Ocorrência: problemas no funcionamento do WebApp causados pelo tratamento de Websockets em um componente do Appserver.

Correção: corrigido o tratamento de Websockets para permitir o funcionamento correto do WebApp com protocolo Websocket.

Referente ao chamado: DTAPPSRV-72057409

Expandir
titleOcorrência de access violation durante assinatura de fontes via AppServer Command Line.Arquivo sso\\etc\\services.conf vazio utilizado pelo SAML causando queda do Application Server

Incidente: o arquivo sso\etc\services.conf em branco utilizado pelo SAML estava causando a queda do Application Server.

Solução: checagem do arquivo services.conf e mensagem de erro no console durante a execução, caso o arquivo esteja em branco

Ocorrência: access Violation durante assinatura de fonte via AppServer Command Line.

Correção: inicialização e configuração dos parâmetros SSL.

Referente ao chamado: DTAPPSRV-74317402

Expandir
titleOcorrência de queda ao chamar função HSMObjListQuery com estrutura inválida de campos no SQLITE.

Incidente: select * de tabela SQLITE após apagar e recriar a tabela com nova estrutura diferente da anterior, retornava a primeira estrutura da tabela, pois ao apagar a tabela, um cache de resolução de queries não era apagado.

Solução: limpar o cache de estrutura de retorno de Queries relacionado a uma tabela, quando ela for eliminada

Ocorrência: ao chamar a função HSMObjList com o parâmetro cPass (segundo parâmetro) igual a string vazia e com o dispositivo HSM inicializado, ocorria queda no Application Server.

Correção: foi feito um tratamento para evitar a queda quando o parâmetro cPass estiver vazio.

Referente ao chamado: DTAPPSRV-75107395

Ocorrência : Perdas significativas de desempenho em ambientes que utilizam GRID de processamento AdvPL, Jobs de WebServices, e integrações via RPC, como por exemplo Front Loja e Retaguarda, ao atualizar o Application Server para builds superiores a 20.3.1.5. 

Correção : Corrigida a rotina de verificação de carga de RPO, que causava uma retenção e serialização entre processos. 

Referente aos chamados: DTAPPSRV-7413 e DTAPPSRV-7392. 

Expandir
titleTela branca no WebApp

Ocorrência: Erro na apresentação de tela PO-UI quando da utilização do Broker.

Correção : Inclusão do parâmetro de path no cookie utilizado pelo broker.

Referente ao chamado: DTAPPSRV-7533

Expandir
titleLentidão em RPC, WebSErvices e GRID AdvPL
Symtab em uso após compilação.

Incidente: ao forçar uma compilação com a chave BUILDKILLUSERS e Servidor Rest ativos, o serviço Rest era corretamente interrompido. Porém, ao tentar conectar novamente ao serviço Rest (exemplo: Webmonitor e TLPP Monitor) ocorria o erro "SYMTAB in use for addSourceInfo...".

Solução: foram realizadas correções pontuais no Servidor de Aplicação (Application Server).

Referente ao chamado: DTAPPSRV-7375

Expandir
titleErro de CORS usando fetch.

Ocorrência: requisições em REST com "origin: null" estavam falhando por causa do tratamento de CORS.

Solução: corrigido o tratamento de CORS para aceitar requisições com "origin: null".

Referente ao chamado: DTAPPSRV-7360

Expandir
titleOcorrência de access violation no AppServer em execução de Job.

Ocorrência: access Violation no Application Server causado pela soma entre variáveis definida como Char (tipagem forte) e string.

Correção: proteção para não permitir operação de soma, apresentando mensagem de erro durante a execução

Expandir
titleTratamento da criação de índices com campos maior que 10 caracteres

Incidente: Falha de criação de índices em tabelas de uso interno do Framework AdvPL, usando RDD TOPCONN com DBAccess e/ou SQLITE, quando o campo possui nome com mais de 10 caracteres.

Solução:  Criação de índice suportada adequadamente após ajuste na lista de campos do índice no AppServer.

Referente ao chamado: DTAPPSRV-72457355

Expandir
titleError in encode FindBase64Val returning -1: Serviço fica indisponívelWebApp - Problema na montagem de mensagens maiores que 100k no websocket.

Ocorrência: problemas no funcionamento do WebApp causados pelo tratamento de Websockets em um componente do Appserver.

Correção: corrigido o tratamento de Websockets para permitir o funcionamento correto do WebApp com protocolo Websocket

Incidente: Ao apresentar Error in encode FindBase64Val returning -1, em algumas ocasiões o serviço ficava indisponível.

Solução:  Correção no tratamento da mensagem.

Referente ao chamado: DTAPPSRV-72537205

Expandir
titleTratamento de objetos json "inline"Ocorrência de access violation durante assinatura de fontes via AppServer Command Line.

Ocorrência: access Violation durante assinatura de fonte via AppServer Command Line.

Correção: inicialização e configuração dos parâmetros SSL.

Referente ao chamado: DTAPPSRV-7431

Expandir
titleOcorrência de queda ao chamar função HSMObjList

Ocorrência: ao chamar a função HSMObjList com o parâmetro cPass (segundo parâmetro) igual a string vazia e com o dispositivo HSM inicializado, ocorria queda no Application Server.

Correção: foi feito um tratamento para evitar a queda quando o parâmetro cPass estiver

Incidente: O tratamento de objetos Json "inline" não está respeitando o padrão correto de objetos Json, não sendo possível criar objetos Json vazios (ex: { }), arrays de Json [ ] não são criados corretamente e também não permitem que os tipos True, False e Null sejam tratados como tipos Json. 

Solução: O tratamento dos objetos Json foi corrigido para que ele passasse a ser tratado conforme a formatação Json. A principal alteração ocorre com array AdvPL que é representado por "{ }", todavia no padrão Json, isto representa um objeto Json vazio, ou seja, em um código que tenha por exemplo "local jJson := { "chave" : {} }", terá como valor um objeto Json vazio.

Referente ao chamado: DTAPPSRV-72107510

Incidente: Falha ao conectar via classe tRPC em um appserver de balanceamento desktop broker com SSL ativo
Solução: O quarto parâmetro do método Connect não estava sendo levado em consideração para ativar o SSL, a partir da próxma versão esse parâmetro passa a ser considerado

Referente ao chamado: DTAPPSRV-7311

Expandir
titleProblemas com conexão RPC quando Broker está com SSL ativo

Melhorias

Expandir
titleSegurança e vulnerabilidades

Atualização de bibliotecas de terceiros e melhorias relacionadas a segurança.

Expandir
titleConsumo de memória - Controle de cache de memória no Linux

Incidente: Comportamento do Sistema Operacional Linux afetava liberação de memória do mecanismo de alocação e controle do Appserver

Solução: Implementado recurso que possibilita o controle do cache de memória realizado pelo sistema operacional Linux, permitindo assim, a liberação de memória quando não utilizada.

Tela branca no WebApp

Ocorrência: Erro na apresentação de tela PO-UI quando da utilização do Broker.

Correção : Inclusão do parâmetro de path no cookie utilizado pelo broker.

Referente ao chamado: DTAPPSRV-7533

Expandir
titleLentidão em RPC, WebSErvices e GRID AdvPL

Ocorrência : Perdas significativas de desempenho em ambientes que utilizam GRID de processamento AdvPL, Jobs de WebServices, e integrações via RPC, como por exemplo Front Loja e Retaguarda, ao atualizar o Application Server para builds superiores a 20.3.1.5. 

Correção : Corrigida a rotina de verificação de carga de RPO, que causava uma retenção e serialização entre processos. 

Referente aos chamados: DTAPPSRV-7413 e DTAPPSRV-7392. 


Expandir
titleTratamento da criação de índices com campos maior que 10 caracteres

Incidente: Falha de criação de índices em tabelas de uso interno do Framework AdvPL, usando RDD TOPCONN com DBAccess e/ou SQLITE, quando o campo possui nome com mais de 10 caracteres.

Solução:  Criação de índice suportada adequadamente após ajuste na lista de campos do índice no AppServer.

Referente ao chamado: DTAPPSRV-7245

Expandir
titleError in encode FindBase64Val returning -1: Serviço fica indisponível

Incidente: Ao apresentar Error in encode FindBase64Val returning -1, em algumas ocasiões o serviço ficava indisponível.

Solução:  Correção no tratamento da mensagem.

Referente ao chamado: DTAPPSRV-7253

Expandir
titleTratamento de objetos json "inline"

Incidente: O tratamento de objetos Json "inline" não está respeitando o padrão correto de objetos Json, não sendo possível criar objetos Json vazios (ex: { }), arrays de Json [ ] não são criados corretamente e também não permitem que os tipos True, False e Null sejam tratados como tipos Json. 

Solução: O tratamento dos objetos Json foi corrigido para que ele passasse a ser tratado conforme a formatação Json. A principal alteração ocorre com array AdvPL que é representado por "{ }", todavia no padrão Json, isto representa um objeto Json vazio, ou seja, em um código que tenha por exemplo "local jJson := { "chave" : {} }", terá como valor um objeto Json vazio.

Referente ao chamado: DTAPPSRV-7210

Expandir
titleProblemas com conexão RPC quando Broker está com SSL ativo

Incidente: Falha ao conectar via classe tRPC em um appserver de balanceamento desktop broker com SSL ativo

Solução: O quarto parâmetro do método Connect não estava sendo levado em consideração para ativar o SSL, a partir da próxma versão esse parâmetro passa a ser considerado

Referente ao chamado: DTAPPSRV-7311

Melhorias

Expandir
titleSegurança e vulnerabilidades

Atualização de bibliotecas de terceiros e melhorias relacionadas a segurança.

Expandir
titleConsumo de memória - Controle de cache de memória no Linux

Incidente: Comportamento do Sistema Operacional Linux afetava liberação de memória do mecanismo de alocação e controle do Appserver

Solução: Implementado recurso que possibilita o controle do cache de memória realizado pelo sistema operacional Linux, permitindo assim, a liberação de memória quando não utilizada.

Expandir
titleImplementar no Monitor Embedded remoção de serviço desativado pelo Broker Agent

Incidente: Em um cenário com Broker Agent e Monitor Embedded no Broker Smartclient, quando o Broker Agent finalizava um serviço este não estava sendo retirado das tabelas de monitoração do Monitor Embedded.

Solução: Implementação de remoção nas tabelas de monitoramento do Monitor Embedded dos serviços que forem finalizados pelo Broker Agent.

Expandir
titleImplementar planos de desligamento no Broker Agent.

Incidente: Cliente necessita desativar o sistema associado a um Broker Agent, e para isso o Broker não deve direcionar novas conexões a esse sistema.

Solução: Implementado scheduling de funcionamento para o Broker Agent. O Broker só direciona novas conexões para os sistemas instanciados pelo Broker Agent nos intervalos de tempos especificados na configuração (ini) do broker Agent.

Expandir
titleServiço WebMonitor subir automaticamente no start do Application Server

Solicitação: serviço WebMonitor subir automaticamente no start do Application Server e também a opção para desligar se necessário com a seção [WEMONITOR] e chave Enable=0 no appserver.ini

Solução: implementado o start automático e a opção para desligar, caso seja necessário.

Referente ao chamado: DTAPPSRV-7376

Expandir
titleDescontinuação da antiga chave de compilação Linux

Solicitação: descontinuar a chave de compilação de compilação Linux baseada no algoritmo AES que foi criada para manter compatibilidade com a antiga chave de compilação.

Solução: remoção do suporte a antiga chave de compilação Linux e a partir de agora, deverá ser utilizado o TOKEN de compilação.

Documentação: AppServer Command Line - Compilação por linha de comando

Referente ao chamado: DTAPPSRV-7264

Expandir
titleMaior detalhamento sobre erros em caso de falha de criação de tabela usando TCAlter com RPODB=SQLITE e rdd TOPCONN.

Solicitação: em caso de falha de criação de tabela de destino usando TCAlter com RPODB=SQLITE e rdd TOPCONN, a mensagem informativa no log de console não trazia nenhum detalhe adicional da causa da falha, apenas o texto "Error - TC_Alter - (-19) TCAlter Error - Failed to create target table".

Solução: a partir do Application Server versão 20.3.2.0, as informações adicionais indicando a causa da falha serão mostradas após essa informação no log de console.

Referente ao chamado: DTAPPSRV-7497

Incidente: Em um cenário com Broker Agent e Monitor Embedded no Broker Smartclient, quando o Broker Agent finalizava um serviço este não estava sendo retirado das tabelas de monitoração do Monitor Embedded.
Solução: Implementação de remoção nas tabelas de monitoramento do Monitor Embedded dos serviços que forem finalizados pelo Broker Agent.Incidente: Cliente necessita desativar o sistema associado a um Broker Agent, e para isso o Broker não deve direcionar novas conexões a esse sistema.
Solução: Implementado scheduling de funcionamento para o Broker Agent. O Broker só direciona novas conexões para os sistemas instanciados pelo Broker Agent nos intervalos de tempos especificados na configuração (ini) do broker Agent.Solicitação: serviço WebMonitor subir automaticamente no start do Application Server e também a opção para desligar se necessário com a seção [WEMONITOR] e chave Enable=0 no appserver.ini
Solução: implementado o start automático e a opção para desligar, caso seja necessário.

Referente ao chamado: DTAPPSRV-7376

Expandir
titleQueda de desempenho da função STRTRAN gerando lentidão na busca de retorno entre TAF-WS e TSS.

Solicitação: lentidão progressiva no uso da função Strtran() em strings com conteúdos maiores de 1 MB.

Solução: A função STRTRAN foi otimizada, para não haver queda de desempenho com o aumento da string a ser pesquisada e alterada.

Informações Adicionais: A lentidão é observada quando maior a string informada, quanto mais ocorrências forem substituídas, e quando o tamanho do conteúdo a ser alterado é maior ou menor do que o conteúdo a pesquisar.

Referente ao chamado: DTAPPSRV-7314

Expandir
titleImplementar no Monitor Embedded remoção de serviço desativado pelo Broker Agent
Expandir
titleImplementar planos de desligamento no Broker Agent.
Expandir
titleServiço WebMonitor subir automaticamente no start do Application Server
Expandir
titleDescontinuação da antiga chave de compilação Linux
Solicitação: descontinuar a chave de compilação de compilação Linux baseada no algoritmo AES que foi criada para manter compatibilidade com a antiga chave de compilação.
Solução: remoção do suporte a antiga chave de compilação Linux e a partir de agora, deverá ser utilizado o TOKEN de compilação.

Documentação: AppServer Command Line - Compilação por linha de comando

Referente ao chamado: DTAPPSRV-7264

Novas Implementações

Expandir
titleConversões de imagens 24BPP

Solicitação: conversões de imagens 24BPP

Solução: suporte a imagens BMP de até 24BPP na função bmptoJPEG.

Referente ao chamado: DTAPPSRV-7136

...