Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Firebird e Interbase (https://www.clubdelphi.com/foros/forumdisplay.php?f=19)
-   -   Problemas tras backup/restore (https://www.clubdelphi.com/foros/showthread.php?t=11643)

Luisma 21-06-2004 10:24:26

Problemas tras backup/restore
 
Muy buenas a todos
Tengo un pequeño problema con una bd.
Estoy usando Firebird 1.5.
El problema es que tras hacer un backup y un restore una de las vistas de la bd me da el siguiente error:

SQL ERROR CODE:-802
SQL ERROR MESSAGE:
Arithmetic overflow or division by zero has occurred.


La vista en cuestion es la siguiente

Create View V_AlumnoGrupo
(Id, IdAlumno, Nombre, IdGrupo, CodigoModalidad, modalidad, promociona, titulo, baja)
as
Select
V_AlumnoGrupo0.id, IdAlumno, Alumno.Nombre, V_alumnoGrupo0.IdGrupo,
V_alumnoGrupo0.CodigoModalidad, V_alumnogrupo0.modalidad, promociona, titulo,
Alumno.baja
from V_AlumnoGrupo0 inner join Alumno
on V_Alumnogrupo0.idAlumno = Alumno.id;


La vista V_AlumnoGrupo0 y la tabla Alumno funcionan siempre correctamente.

El caso es que si la borro y la vuelvo a crear, funciona correctamente hasta que vuelvo a hacer un Backup/restore.
No se por donde tirar, y necesito que funcione correctamente tras el restore

Gracias

guillotmarc 22-06-2004 11:46:33

Hola.

A muy malas, siempre puedes lanzar el drop view, y create view correspondientes, una vez finalizado el restore.

En todo caso asegúrate de tener instalada la versión final de Firebird 1.5, y no una Release Candidate.

http://firebird.sourceforge.net

Saludos.

Luisma 22-06-2004 12:41:38

Gracias
 
Muchas gracias

He revisado la versión (aunque estaba convencido de que era la 1.5) y efectivamente, es la 1.5 final

El borrar y crear ya lo habia pensado, pero me pasa en un par de vistas mas y no me gusta mucho, la verdad con solucion momentanea esta bien pero me gustaria saber la razon por la que se corronpen o dejan de funcionar correctamente.

seguire buscando

guillotmarc 22-06-2004 13:04:28

Hola.

Como este problema se sale un poco de lo común, te recomiendo que lo pongas en la lista de correo de soporte de Firebird Firebird Main Support list (ib_support). http://www.ibphoenix.com/main.nfs?a=...age=ibp_groups

Allí te contestarán los mismos programadores de Firebird.

Saludos.

Gydba 22-06-2004 13:55:34

Buen día,

La verdad que es una buena pregunta y ese error me pasó hace poco cuando utilizaba los campos BLOB con imágenes.

Hasta donde probé de alguna manera una mala insercción o modificación de un registro particular provoca que ese registro en particular se "bloquee" (¿?). Incluso un SELECT que involucre al registro en cuestión dispara el mismo error, por lo cual no es propio de las vistas.

El problema principal de esto es que nunca pude reproducir con exactitud el error (error que no se puede reproducir es un error que no existe? :)) por lo cual poco pude averiguar sobre porque se corrompe.

Una solución simple que encontré es eliminar dicho registro y todo vuelve a funcionar con normalidad y de alguna manera no ha vuelto a ocurrir.

Esto lejos de despreocuparme me preocupa bastante, así que si encontrás algo sobre el tema te agradecería nos la comentaras.

Luisma 22-06-2004 17:25:29

seguimos investigando
 
Otro dato que he descubierto, es lo siguiente:
Las Vistas que dejan de funcionar tras el restore tienen la particularidad de que el campo DB_KEY que aparece en todas las vistas es distinto al original
a ver si me explico:

Viendo las Bds con IB_SQL

Si en la bd original antes del backup este campo es
DB_KEY DB_KEY(24)
despues del restore es
DB_KEY DB_KEY(8)

en este momento es cuando no funciona, si borro la vista y la creo de nuevo el campo vuelve a ser
DB_KEY DB_KEY(24)
y ya funciona correctamente

esto es algo comun en todas las vistas que dejan de funcionar, en las demas se mantiene igual

No se, no entiendo muy bien que es ese campo, y menos porque cambia al hacer el restore, y si puede tener alguna relaccion con el problema.

Gracias por su interes

guillotmarc 22-06-2004 18:00:30

Hola.

Comprueba también que el gbak.exe y gds32.dll / fbclient.dll que se utilizan durante el Backup/Restore corresponden a los de Firebird 1.5 (y no sean de una versión anterior).

NOTA: Como te comenté anteriormente, donde tienes muchas probabilidades de que te resuelvan este problema, es si lo planteas en las listas de correo de Firebird.

Saludos.

Luisma 22-06-2004 18:11:20

Gracias lo intentare aunque mi inglis es excesivamente basico ;)

a ver si me entienden :)

guillotmarc 22-06-2004 18:32:48

Hola.

Entonces pónlo en los dos idiomas, puesto que hay algún usuario de esa lista que habla castellano.

Saludos.

Luisma 01-07-2004 18:30:11

Creo que por fin he solucionado,... mejor, han solucionado el problema
Me explico:
enredando por la web, he visto una version de firebird 1.5.1 RC3 que parece que corrige errores de la version 1.5 y del gbak, entre otros.
El caso es que he probado esta version y el problema ha desaparecido, las vistas ya funcionan correctamente despues del restore.

La version esta aqui:
http://www.firebirdsql.org/download/prerelease/1.5.1/

Incluso copiando solamente el gbak a un equipo con la version 1.5
el problema tambien se corrige

Gracias a todos

rastafarey 06-07-2004 22:24:14

Me paso
 
1.Verifica el set de caracteres. y los caracteres de posee la data.
2.Pon el nombre completo del servidir+base de datos.
3.Verifica los parametros de restauracion debido a que unos requieren de otro.
4.Verifica que u archivo de errores este actualizado(deberia ser lo primero)

Este error me pasaba mucho pero revise tantas cosas qu eno recuerdo cual era la raiz del problema.

Espero te sea de ayuda


La franja horaria es GMT +2. Ahora son las 21:55:47.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi