Problemas con Oracle y asp.net.
Publicado por Eduardo (1 intervención) el 12/11/2009 17:51:04
Espero que alguien me ayude...
Estoy invocando desde un webservice (ASP.net) un procedimiento almacenado que solo consulta una tabla y me trae unos registros.
Esa invocación debe permanecer ejecutandose ininterrumpidamente durante todo el día, por que la idea es mostrarle en linea las actualizaciones a los usuarios. Sin embargo esta invocación concurrente me esta generando gran cantidad de "archives logs" en la base de datos ORACLE y no se porque, debido a que son solo consulta.
Aplique un LOGMINER a un archive log y las transacciones que esta almacenando de este proceso son
set transaction read write y commit; y como les indique anteriormente estas no hacen commit.
El metodo invocado en el webservice es similar al siguiente:
<WebMethod()> _
Public Function XXX(ByVal numero As Integer) As DataSet
Dim ConnStr As String = System.Configuration.ConfigurationManager.AppSettings("ORAConnStr")
Dim conn As OracleConnection = New OracleConnection(ConnStr)
Dim cmd As OracleCommand = New OracleCommand("PK.PC_DEV")
Try
cmd.CommandType = CommandType.StoredProcedure
cmd.Parameters.Add("p_num", OracleDbType.Int32).Value = numero
cmd.Parameters.Add("RC1", OracleDbType.RefCursor, ParameterDirection.Output).Value = DBNull.Value
cmd.Connection = conn
Dim ds As DataSet = New DataSet
Dim da As OracleDataAdapter = New OracleDataAdapter(cmd)
da.Fill(ds)
Return ds
Catch ex As Exception
Throw New Exception(ex.Message)
End Try
End Function
Estoy invocando desde un webservice (ASP.net) un procedimiento almacenado que solo consulta una tabla y me trae unos registros.
Esa invocación debe permanecer ejecutandose ininterrumpidamente durante todo el día, por que la idea es mostrarle en linea las actualizaciones a los usuarios. Sin embargo esta invocación concurrente me esta generando gran cantidad de "archives logs" en la base de datos ORACLE y no se porque, debido a que son solo consulta.
Aplique un LOGMINER a un archive log y las transacciones que esta almacenando de este proceso son
set transaction read write y commit; y como les indique anteriormente estas no hacen commit.
El metodo invocado en el webservice es similar al siguiente:
<WebMethod()> _
Public Function XXX(ByVal numero As Integer) As DataSet
Dim ConnStr As String = System.Configuration.ConfigurationManager.AppSettings("ORAConnStr")
Dim conn As OracleConnection = New OracleConnection(ConnStr)
Dim cmd As OracleCommand = New OracleCommand("PK.PC_DEV")
Try
cmd.CommandType = CommandType.StoredProcedure
cmd.Parameters.Add("p_num", OracleDbType.Int32).Value = numero
cmd.Parameters.Add("RC1", OracleDbType.RefCursor, ParameterDirection.Output).Value = DBNull.Value
cmd.Connection = conn
Dim ds As DataSet = New DataSet
Dim da As OracleDataAdapter = New OracleDataAdapter(cmd)
da.Fill(ds)
Return ds
Catch ex As Exception
Throw New Exception(ex.Message)
End Try
End Function
Valora esta pregunta
0