INSERT via Conexão JDBC.

Discussão em 'Banco de Dados / Database' iniciado por nelsonbsjr, Maio 10, 2012.

  1. nelsonbsjr

    nelsonbsjr Sem Pontuação

    Boa noite caros amigos.
    Vai uma pergunta legal ae para vocês....

    Tenho um sistema que se conecta no progress via ServerType SQL (utilizando driver JDBC) a conexão funciona... tudo bonito e correto.
    Porem para essa aplicação em especial quando é iniciado uma tarefa de INSERT o erro abaixo é exibido:
    Código:
    [ERROR] 10-05-2012 19:00:31 [br.com.empresasystems.empresasystemsplus.database.GenericJdbc] [DataDirect][OpenEdge JDBC Driver]Socket closed
    java.sql.SQLException: [DataDirect][OpenEdge JDBC Driver]Socket closed
    	at com.ddtek.jdbc.base.BaseExceptions.createException(Unknown Source)
    	at com.ddtek.jdbc.base.BaseExceptions.getException(Unknown Source)
    	at com.ddtek.jdbc.base.BaseExceptions.getException(Unknown Source)
    	at com.ddtek.jdbc.openedge.client.OpenEdgeClientRequest.submitRequest(Unknown Source)
    	at com.ddtek.jdbc.openedge.client.OpenEdgeClientCursorRequest.closeCursor(Unknown Source)
    	at com.ddtek.jdbc.openedge.OpenEdgeImplResultSet.close(Unknown Source)
    	at com.ddtek.jdbc.base.BaseResultSet.close(Unknown Source)
    	at com.ddtek.jdbc.base.BaseStatement.closeCurrentResults(Unknown Source)
    	at com.ddtek.jdbc.base.BaseStatement.commonTransitionToState(Unknown Source)
    	at com.ddtek.jdbc.base.BaseStatement.close(Unknown Source)
    	at br.com.empresasystems.empresasystemsplus.database.GenericJdbc.clearResources(GenericJdbc.java:50)
    	at br.com.empresasystems.empresasystemsplus.components.impl.DataSaverJdbc.execute(DataSaverJdbc.java:123)
    	at br.com.empresasystems.empresasystemsplus.manager.SequentialManager.executeProject(SequentialManager.java:192)
    	at br.com.empresasystems.empresasystemsplus.manager.empresasystemsplus.executeProject(empresasystemsplus.java:178)
    	at br.com.empresasystems.empresasystemsplus.manager.empresasystemsplus.executeProject(empresasystemsplus.java:167)
    	at br.com.empresasystems.empresasystemsplus.manager.empresasystemsplus$1.run(empresasystemsplus.java:523)
    	at java.lang.Thread.run(Unknown Source)
    [ERROR] 10-05-2012 19:00:31 [br.com.empresasystems.empresasystemsplus.database.GenericJdbc] [DataDirect][OpenEdge JDBC Driver]Socket closed
    java.sql.SQLException: [DataDirect][OpenEdge JDBC Driver]Socket closed
    	at com.ddtek.jdbc.base.BaseExceptions.createException(Unknown Source)
    	at com.ddtek.jdbc.base.BaseExceptions.getException(Unknown Source)
    	at com.ddtek.jdbc.base.BaseExceptions.getException(Unknown Source)
    	at com.ddtek.jdbc.openedge.client.OpenEdgeClientRequest.submitRequest(Unknown Source)
    	at com.ddtek.jdbc.openedge.client.OpenEdgeClientCursorRequest.closeCursor(Unknown Source)
    	at com.ddtek.jdbc.openedge.OpenEdgeImplResultSet.close(Unknown Source)
    	at com.ddtek.jdbc.base.BaseResultSet.close(Unknown Source)
    	at br.com.empresasystems.empresasystemsplus.database.GenericJdbc.clearResources(GenericJdbc.java:59)
    	at br.com.empresasystems.empresasystemsplus.components.impl.DataSaverJdbc.execute(DataSaverJdbc.java:123)
    	at br.com.empresasystems.empresasystemsplus.manager.SequentialManager.executeProject(SequentialManager.java:192)
    	at br.com.empresasystems.empresasystemsplus.manager.empresasystemsplus.executeProject(empresasystemsplus.java:178)
    	at br.com.empresasystems.empresasystemsplus.manager.empresasystemsplus.executeProject(empresasystemsplus.java:167)
    	at br.com.empresasystems.empresasystemsplus.manager.empresasystemsplus$1.run(empresasystemsplus.java:523)
    	at java.lang.Thread.run(Unknown Source)
    
    A mensagem é um erro munto generico, não dando detalhes de nada. A questão é que mesmo com o erro, ocorrem alguns INSERTs nas tabelas, coisas em torno de 6 INSERTs por tentativa.
    E é aquela questão, sempre fica aquela briga de é o ambiente que esta gerando ou o erro é da aplicação.

    Então iniciei minhas pesquisas para não entrar na dança/briga. Porem não vi em nenhum local que informe que o numero de INSERTs pode ser limitado, ou se é necessario de algo a mais para realizar grande numero de INSERTs.
    Também não sei se um estouro de Buffer gera tais erros, pela documentação também não encontrei nada que faça referencia a isso.

    Então venho aqui solicitar ajuda dos senhores para tentar traçar uma linha mais detalhada, pois realmente não é nenhum bicho de sete cabeças utilizar conexões do tipo.
    Até ja utilizamos uma para solução de NF-e junto a NeoGrid.

    Abraço.

Compartilhe esta Página