Hola!
Estoy teniendo problemas con el dbexport: se corta y el archivo de salida .out tira hasta un sp que termina bien y no dice nada.
Hice:
oncheck -ec - todo ok
oncheck -cdD -tira el siguiente error:
TBLspace data check for siu_guarani:informix.sysprocplan
Modifying TBLspace statistics(pn_nrows): OLD 44035 NEW 44076
Partition data is bad. Ok to repair it?
(No lo reparé)
oncheck -ciI
tira el siguiente error:
Validating indexes for siu_guarani:informix.sysprocplan…
Index procplan
ERROR: No btree item exists for data row.
Rowid 0x28f01 contains key value:
Key: 1856:180:“Q”:60:
por lo que entiendo esta tabla guarda el plan de ejecución de los querys y con UPDATE STATISTICS FOR PROCEDURE actualizaría los datos y por lo tanto el índice.
Voy hacer unas pruebas.
Igual no entiendo porqué esto me está influyendo en el dbexport.
Hola Ana
Lo primero que te recomendaría es hacer un backup de nivel 0 de la instancia y guárdalo para poder recuperar en caso que surja algún problema.
Luego trata de reparar ls db.
Si eso no corrige el dbexport entonces vas a tener que detectar cual es el sp que te esta dando problemas para ello hace lo siguiente:
1.- detecta el id del ultimo procedimiento que logro exportar con la siguiente consulta
Select procid from sysprocedures where procname = ‘<nombre_del_ultimo_sp_exportado>’;
2.- Luego detecta cual es el id del siguiente procedure que deberia exprtar (probablemente el sp con problemas) con el comando
Select min(procid) from sysprocedures where procid > 176;
3.- mira el nombre del sp que esta generando conflicto con
select procname from sysprocedures where procid = <id_obtenido_en_el_paso_anterior>
4.- dropea el sp en conflicto
5.- trata de hacer un db export.
6.- si vuelve a dar error es posible que exista más de un sp con problemas repetí los pasos anteriores.
7.- un ves realizado el dbexport proba volver a cargar los sp borrados y fijate bien que no aya conflictos con caracteres raros.
Si se puede.
Antes de reparar voy a intentar hacer un dbexport sin el parámetro -ss.
Después hago un nuevo backup de nivel 0, reparo y vuelvo a probar. Porque el sp que creo es el problema ya lo eliminé.
el oncheck -ceC no tira error
el oncheck -ciI me muestra el error pero no lo reparar, qué debería hacer para que lo repare.
el oncheck -cdD daba el error en la sysprocplan y es el que reparé y ya no lo tira.
Estoy buscando alternativas…
Igual no me queda claro si esto del sysprocplan tiene que ver con el problema del dbexport
voy a correr el update staticts for procedure.
El sistema está funcionando y no tira ningún error, al menos por ahora.
Hay alguna tabla del catálogo que guarde la fecha en que fue creado el procedure?