Boa noite Chiappa,
O que estamos tentando rastrear é algo como você descreveu mesmo, pois como utilizamos uma framework desenvolvida por terceiros e conhecemos o funcionamento conceitual dela, mas como você mesmo citou pode ser algo mal implementado e que não esteja tratando um retorno de erro gerado na transação. Através do DEBUG e TRACE na aplicação não foi possível detectar nenhuma anormalidade e por isto acho que valeria a pena ter uma LOG gerada do lado do BD. Vou conversar com o pessoal para que façamos o que você citou utilizando esta opção de TRACE+TKPROF. Desculpe se esta pergunta for óbvia, mas como citei não sou especialista em BD, o TRACE+TKPROF é por instância ou geral? Para ativar precisaremos reiniciar o servidor? Obrigado pelos esclarecimentos. Att, Marcos Antônio de Araújo Analista de Sistema - SOF/PBH PRODABEL (31) 3277-4177 / 4425 Em 8 de junho de 2014 21:19, jlchia...@yahoo.com.br [oracle_br] < oracle_br@yahoogrupos.com.br> escreveu: > > > Marcos, mesmo sendo (como é, mesmo) tão antiga, bugada e problemática essa > versão 10.2.0.1, eu reporto como *** MINÚSCULA ***, praticamente NULA, > desprezível mesmo, a chance do banco de dados ter uma falha tão grosseira > que faça ele "apagar" ou não registrar, DMLs que foram executados com > sucesso e comitados, okdoc ?? Isso é básico demais pra acontecer.... > Pra mim o que está havendo aí é : > > a) há algum erro acontecendo em algum ponto da transação (seja já na hora > do INSERT ou do UPDATE, seja na hora de encerrar com commit) e o Aplicativo > está **** MASCARANDO *** o erro, engolindo-o sem aviso : digamos, há um > EXCEPTION WHEN OTHERS null; se a programação for em PL/SQL, ou simplesmente > o próprio aplicativo (via programação na linguagem/tool que estiver usando) > ignora o erro ... > Por mais estranho que pareça, isso é LONGE de ser impossível, > infelizmente já vi muito código porquinho do tipo, e nada impede que a > situação de erro passou a acontecer há pouco (digamos, espaço em disco > diminuiu o que antes não acontecia tanto), por isso a situação de engolir o > erro não foi notada antes > > OU > > b) é um erro de lógica , seja um IF, uma trigger, ou algo programado do > tipo, que em alguns casos faz o aplicativo , digamos, não passar pelo > trecho que faz o COMMIT, ou então cair numa linha que faz o ROLLBACK : essa > condição , por causa dos dados, não era verdadeira antes e só recentemente > os dados que entraram fizeram a condição ser verdadeira e o bug aparecer... > > ===> SE vc tiver o código-fonte Atualizado e 100% confiável dessa > aplicação, seria realmente um trabalho de DEBUG , provavelmente > introduzindo-se ou ativando a Instrumentação que puder.... > Caso não possa haver debug, aí Qualquer um dos dos dois casos, vc pega > OU fazendo um TRACE+TKPROF (o ideal, já que assim vc não perde nada), OU se > não for possível isso vc pode habilitar ao menos as opções completas de > Auditoria, para que fique registrado os comandos que foram enviados.... > > []s > > Chiappa > >