Un saludo a todos:
Les escribo solicitando ayuda o algún consejo para solucionar un problema, es el siguiente:
Tengo un servidor SQL con una BD llamada Oasis instalada, esa BD tiene una tabla llamada BOM_History esta tabla crece a una razón de unos 200,000 registros por día.
Una aplicación de VB en el servidor es la encargada de calcular pagos de impuestos, insertar esos 200,000 registros en esa tabla y en otras más, es un proceso muy pesado que tarda unas 3 horas por las noches.
Ultimamente el programa ha enviado errores de Time Out y no termina la ejecución, al "debuguearlo" detecté que el error es al insertar los registros en esa tabla específica (BOM_History), la instrucción insert no es complicada es un insert "directo";es decir, no hay subconsultas o algo parecido.
Sí realiza inserción de los registros pero llega un momento en que no puede más el sql y regresa un Time Out, ya verifiqué si hay algo mal en las instrucciones y nada raro, incluso si ejecuto el mismo insert desde Query Analizer unos veces lo hace en menos de 1 segundo y otras tarda 15 segundos en ejecutarse.
La tabla tiene como llave primaria tres campos: Assembly (varchar 25) se almacenan números de parte,
Date_added (datetime) la fecha en que se inserta el registro, Item_number (int 4) un consecutivo de cada numero de parte.
Ya he depurado la tabla (de 70,000,000 a 10,000,000), ejecuto 4 veces al día respaldos del log, ejecuto DBCC UPDATEUSAGE y INDEXDEFRAG en la tabla y el Time Out continúa ya no con tanta frecuencia pero siempre ocurre al insertar en BOM_History.
Ustedes que piensan? que me recomiendan hacer o tienen algun link que pueda ayudarme?
Gracias