Insert, update CLOB PLSQL DEMASIADO LENTO
Publicado por Mariah (10 intervenciones) el 02/04/2009 18:00:14
Hola, antes que nada gracias por su atención.
Tengo el siguiente problema. Actualmente armo una cadena de HTML con PL SQL que contiene datos que son dinámicos, después de que armo la cadena html la guardo en un campo CLOB de la base de datos...
Esto tengo haciéndolo desde al rededor de hace un año aproximadamente, de un tiempo para acá he tenido demasiados problemas de performance.. y para lo que antes se tardaba milésimas de segundo ahora se tarda casi 6 segundos por operación.
El procedimiento es el siguiente: Por medio de PL SQL armo una cadena de html dentro de una variable CLOB, posteriormente hago el insert... tal cual... sin hacer un select for update o algo porque el select for update tengo entendido que es para apartar el registro cuando aún estás construyendo el dato que vas a insertar, en este caso, yo ya lo tengo armado y así hacia el insert.
Después de que me diagnosticaron el problema... opte priimero por hacer el insert y acto seguido (es decir después de esa instrucción) hacer un update sobre el mismo registro entrando por la misma llave primaria... .cabe destacar, que no le puse un commit después del primer insert porque se ejecuta desde un trigger y el trigger según sé ya hace el commit.
Ojala pudieran ayudarme a tener idea de qué puede estar pasando.
Gracias.
Tengo el siguiente problema. Actualmente armo una cadena de HTML con PL SQL que contiene datos que son dinámicos, después de que armo la cadena html la guardo en un campo CLOB de la base de datos...
Esto tengo haciéndolo desde al rededor de hace un año aproximadamente, de un tiempo para acá he tenido demasiados problemas de performance.. y para lo que antes se tardaba milésimas de segundo ahora se tarda casi 6 segundos por operación.
El procedimiento es el siguiente: Por medio de PL SQL armo una cadena de html dentro de una variable CLOB, posteriormente hago el insert... tal cual... sin hacer un select for update o algo porque el select for update tengo entendido que es para apartar el registro cuando aún estás construyendo el dato que vas a insertar, en este caso, yo ya lo tengo armado y así hacia el insert.
Después de que me diagnosticaron el problema... opte priimero por hacer el insert y acto seguido (es decir después de esa instrucción) hacer un update sobre el mismo registro entrando por la misma llave primaria... .cabe destacar, que no le puse un commit después del primer insert porque se ejecuta desde un trigger y el trigger según sé ya hace el commit.
Ojala pudieran ayudarme a tener idea de qué puede estar pasando.
Gracias.
Valora esta pregunta


0