Ocorrência | A execução concorrente de algumas rotinas que trabalham com tabelas temporárias poderia causar falha na leitura do catálogo de tabelas do PostgreSQL, causando a mensagem de erro abaixo. [20220521 06:53:09.824][Thread 144028][BEGINLOG] Error : 1 (42P16) (RC=-1) - ERROR: multiple primary keys for table "tmpsc00" are not allowed; Error while executing the query Error : 1 () (RC=-1) - ( From tPostgresConnection::DescribeIndexes ) Thread ID [144028] User [Balcao03_] IO [643] Tables [29] MaxTables [30] Comment [] SP [ ] Traced [No] SQLReplay [No] InTran [No] DBEnv [POSTGRES/BDEAP] DBThread [(ID 400417)] Started [21/05/2022 06:53:07] IP [192.168.1.151:1570] IDLE [ ] InTransact [ ] Memory [0] Running [ROP_REFRESHFILE for 0 s.] RCV [139124] SND [246563] TCBuild [20210202-20220202] TCVersion [21.1.1.1] ARCH [64] OS [LINUX] BUILD [RELEASE] ALTER TABLE TMPSC00 ADD PRIMARY KEY (R_E_C_N_O_) [ENDLOG] |
---|---|
Correção | Realizamos um ajuste no TOTVS | DBAccess, alterando a nomenclatura das tabelas temporárias, que agora passam a ter o ThreadID em sua composição. Uma vez que o catálogo de tabelas temporárias do PostgreSQL é compartilhado, com o ajuste citado acima, conseguimos mitigar a possibilidade de fazer a leitura da tabela "errada". |
Informações adicionais |
|
Visão Geral
Import HTML Content
Conteúdo das Ferramentas
Tarefas