Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   PostgreSQL (https://www.clubdelphi.com/foros/forumdisplay.php?f=42)
-   -   Postgresql pierde registros (https://www.clubdelphi.com/foros/showthread.php?t=70399)

Al González 20-10-2010 19:59:36

Cita:

Empezado por Casimiro Notevi (Mensaje 379908)
Vamos a tener que montar una empresa entre algunos compañeros de aquí :)
Eso sí, tendríamos que buscar también expertos en marketing...

Montémosla y busquémoslos, hagamos a un lado los tener que y los tendríamos. ;)

Casi y yo ya lo intentamos solos, cada quien por su cuenta y en un momento determinado. ¿Algún compañero bueno para la mercadotecnia que se nos una en esta nueva empresa? También necesitamos otros especialistas. :)

Casimiro Notevi 20-10-2010 22:54:48

Hace falta como mínimo un experto en marketing y alguien para hacer nuestra web, y una buena idea ¿existe el puesto de "ideólogo"?, estaría bien :)

yapt 23-10-2010 14:24:39

Cita:

Empezado por quali (Mensaje 379865)
Lo pensé como una posibilidad, pero no hay gente con la capacidad para hacerlo en el lugar. Además, si borran datos, lo hacen con una coherencia impresionante. La emisión de un comprobante actualiza 5 tablas. Y los datos desaparecen consistentemente de las cinco !!

Hola Quali,

que versión de PostgreSQL tienes instalada ?

Yo, una vez conocida la versión y comprobado que no hay ningún bug existente sobre ella, haría lo siguiente.

Escoge una de esas tablas "misteriosas" y pon unos cuantos triggers (en cada fila), más o menos tal que así:
1.- Antes de grabar.
2.- Despues de grabar.
3.- Antes de borrar.
4.- Despues de borrar.

Y, en cada uno de ellos (puede ser el mismo para todos los 'estados'), guarda en una nueva tabla de log, toda la información de fecha, hora, comentario tuyo adicional, que se borra, desde donde, PK de la fila (para su posterior localización), etc....

Eso no lo va a arreglar, pero te va a dar una buena pista de qué sucede, si alguna vez se grabó y cuando se borró.

Saludos.

Casimiro Notevi 23-10-2010 14:40:33

Como comenté antes, a veces nos podemos llevar sorpresas. El año pasado tuvimos unas quejas muy graves de un cliente que sufría pérdidas de datos aleatorios en documentos de un tipo determinado (pedidos para producción en una fábrica), las pruebas que hicimos fueron muy rigurosas, dedicándole muchas horas, días y semanas de trabajo para encontrar el problema, pero seguían perdiéndose esos datos, además era la única empresa donde tenían ese problema.
Finalmente me decidí por crear un trigger cuando se borraba un registro de la tabla y lo que hacía simplemente era almacenar en otra tabla los datos de ese registro borrado, además del usuario, puesto de trabajo, etc.
No dijimos nada a nadie de ese cambio, el resultado fue que encontramos a un usuario descontento que los borraba. La empresa le acusó y él respondió que sería un fallo del programa. El gerente de la empresa volvió a la carga contra nosotros, así que hicimos un "select * from tbRegistrosBorradosLog order by fecha, hora", y le entregamos el listado al gerente. Puso cara de incredulidad, nos pidió disculpas, pagó lo que nos debía, y no sé lo que haría con el trabajador, pero seguro que nos odiará.

quali 23-10-2010 16:23:18

Me encantaría que el problema fuera algún empleado!!!
Pero el sistema no permite borrar registros, solo anularlos.
Habría que borrar desde la base de datos. Si hubiera una persona con conocimientos suficientes para acceder a la Bd y borrar registros, debería además conocer muy bien la estructura de la bd y la funcionalidad de la aplicación, ya que los registros se eliminan consistemente.

De todas formas, me sirve un montón todo lo que están posteando, ya que me va permitir analizar que está pasando.

Les comento que voy a averiguando

Muchas gracias

Alejandro


La franja horaria es GMT +2. Ahora son las 09:11:54.

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