FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
Postgresql pierde registros
Hola.
Tengo una aplicación en delphi7 que conecta a una bd postgres utilizando Zeos. La aplicación funciona perfectamente desde hace varios años. Excepto por que cada tanto pierde registros. El sistema se utiliza para la emisión de comprobantes de acceso a un parque. Cada comprobante emitido actualiza varias tablas. Pasan meses en los que el sistema funciona sin problemas. Pero cada tanto, al arrancar una jornada, se perdieron cientos de registros (de todas las tablas) emitidos en una jornada anterior. Como si almacenara los registros en un chaché. Y cada tanto pierde el caché. Alguien tuvo alguna experiencia similar alguna vez? Desde ya muchas gracias por cualquier comentario Alejandro
__________________
Alejandro |
#2
|
||||
|
||||
No puedo darte una solución porque desconozco por completo tu programa y el entorno donde está instalado, pero lo que sí es seguro al 100% es que postgresql no pierde registros.
|
#3
|
|||
|
|||
No puse código de la aplicación por que el problema no está limitado a una parte.
Lo que puede servir como dato es que la base de datos tiene un servidor dedicado corriendo windows XP, todas las estaciones de trabajo también corren en winxp. Todas las inserciones de registros se hacen con transacciones explícitas. Se abre una transacción, se inserta, se cierra la transacción. Y todo parece funcionar bien, de hecho, cada vez que se emite un ticket, se obtiene su número a partir del número de ticket anterior. Y la correlatividad va perfecta. Solo que cada tanto (a veces pasan meses), es como que el sistema 'retrocede' a un estado anterior. No hay un patrón de tiempor ('vuelve al día anterior'), tampoco de cantidad de registros ('pierde 100 registros'). Están descativados los cachés de disco de windows. Pero la sensación que dá es esa. Como que los datos se fueran almacenando en un caché, y por algun problema (electrico?) cada tanto se borrara ese caché antes de grabar los registros en forma definitiva en el disco. Si alquien opina que esto es muy raro, estoy totalmente de acuerdo !!!!! Saludos Alejandro
__________________
Alejandro |
#4
|
||||
|
||||
Creo que en windows existe algo de recuperar sistema a un estado anterior cuando ha ocurrido algún problema, puede que, como dices, pueda ocurrir algún corte de electricidad y al reiniciarse el windows decida recuperar el sistema a un estado anterior. No sé, es por dar alguna idea.
|
#5
|
|||
|
|||
No creo que sea eso, entiendo que tenés que eso restaura las instalaciones de programas y configuraciones que hayas hecho al sistema operativo, no restaura datos.
De todas formas voy a verificarlo. Muchas gracias !!! Alejandro
__________________
Alejandro |
#6
|
||||
|
||||
y pq un WinXP como servidor?
no haz pensado en un linux? además que el rendimiento de PostgreSQL e linux es muchisimo mejor. por lo de la perdida de registros... si que es raro. nunca me ha pasado y creo que eso está mas ligada a alguna caracteristica o procedimiento que el usuario del XP está haciendo que a algún bug del mismo PostgreSQL.
__________________
Buena caza y buen remar... http://mivaler.blogspot.com |
#7
|
|||
|
|||
Tiene como servidor un Xp por que inicialmente eran dos pc, una actuando como servidor no dedicado. Más adelante se agregaron puestos y un equipo quedó como servidor dedicado.
Y es cierto, el Postgres anda muy bien, tengo varias aplicaciones funcionando perfectamente, aún en entornos similares (servidor en xp). Pero trato de usar la lógica para determinar que puede estar pasando. No se me ocurre nada del lado de la aplicación, lo único que se me ocurre es que haya algún caché (del sistema operativo o la base de datos) que se pierde por algún motivo. Saludos Alejandro
__________________
Alejandro |
#8
|
||||
|
||||
Cita:
Una vez me encontré con un caso parecido, cada mes o cada varios meses se perdían datos inexplicablemente, después de mucho buscar, por fin, encontramos el culpable, era un usuario el que los borraba por ciertas discrepancias con la empresa. |
#9
|
|||
|
|||
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 !!
__________________
Alejandro |
#10
|
||||
|
||||
¿Y no haces backup todos los días?
|
#11
|
|||
|
|||
Si, al final del día se hacen backups. Pero a veces pierde los datos desde la mitad del día, o sea, no resuelvo restaurando un backup. Y para peor, esto está instalado en otra ciudad, no tienen gente capacitada para restaurar un backup, no están conectados a internet. En fin..
De alguna manera siempre se resuelve, pero la idea es evitar el problema, no resolverlo. Como les decía antes, no creo que haya nadie que borre datos, ya que no saben sacar un backup (se hacen automáticos), menos aún restaurarlos. Es como decía un profesor mío en la facultad: 'Si no existieran los usuarios, el desarrollo de software sería perfecto !!!'
__________________
Alejandro |
#12
|
||||
|
||||
ya miraste en los logs de postgres y de windows a ver que sucede en el momento en que se pierden los registros? o estos también están perdidos?
__________________
Buena caza y buen remar... http://mivaler.blogspot.com |
#13
|
|||
|
|||
Eso es un buen dato.
El único problema es que no se donde están ambos logs. Alguna pista? Muchas gracias Alejandro
__________________
Alejandro |
#14
|
||||
|
||||
En windows, no sé, la verdad, puedes mirar las instrucciones o hacer una búsqueda.
Por cierto, a modo de 'casi' broma, justo acaba de salir una noticia en meneame.net que enlaza a este sitio y se titula "10 Consejos para la resolución de problemas técnicos inexplicables" |
#15
|
||||
|
||||
En windows: en el icono de "mi pc" en xp o el de Equipo en Vista o 7 con el derecho del mouse presionas administrar. Esto abbrirá la consola de administración de Microsoft
en el listado de la columna izquierda verás una opción llamada Visor de Sucesos (XP) o visor de eventos (Vista, 7). Aquí puedes ver la ayuda del sitio de microsoft. Los logs de Postgres se pueden ver en la carpeta pg_log en el directorio de datos (data) XP : C:\Archivos de Programa\Postgres\x.x\data\pg_log Vista,7: C:\Program files\Postgres\x.x\data\pg_log
__________________
Buena caza y buen remar... http://mivaler.blogspot.com |
#16
|
||||
|
||||
Cita:
__________________
Buena caza y buen remar... http://mivaler.blogspot.com |
#17
|
||||
|
||||
Aunque dices que las transacciones son explícitas, puede que algo ocurra y se quede la transacción pendiente de ser cometida, no obstante pareciendo que sí se ha confirmado. Luego, algo ocurre con el servidor y éste cancela esa transacción (desapareciendo información de la base de datos), ya sea por llegar a un tiempo límite de espera o por alguna operación que muy probablemente no se realiza a diario (respaldos, por ejemplo).
Ante esto, quizá convenga revisar cómo estás manejando las transacciones. La recomendación es nunca abrirlas y cerrarlas explícitamente desde el lado cliente, sino dejar esa tarea al servidor (de aplicaciones o de base de datos). No espero que lo anterior sea de mucha ayuda, pero en algo puede servir. Casi, el artículo que enlazas es muy interesante. Suelo hacer todo lo que ahí se sugiere, pero confieso que a veces fallo en el punto 5 (mi apetito por las causas). |
#18
|
||||
|
||||
Cita:
|
#19
|
||||
|
||||
Cita:
|
#20
|
||||
|
||||
Cita:
Tal vez, la informática necesite todavía unos cuantos años para madurar, ya que aún es una "ciencia" joven. Vamos a tener que montar una empresa entre algunos compañeros de aquí Eso sí, tendríamos que buscar también expertos en marketing... porque en caso contrario... ¡¡¡ nos morimos de hambre !!!, o como decimos por aquí: "nos comemos los mocos" |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Red Hat pierde 25% de ganancias en 4Q. | Epachsoft | Noticias | 1 | 06-04-2007 18:17:15 |
Interbases 6.6 Pierde registros? | tulio | Firebird e Interbase | 4 | 25-08-2006 22:18:25 |
pierde conexion | Luis Castillo | Conexión con bases de datos | 5 | 10-02-2006 22:00:08 |
la informacion de registros se pierde o borra? | bosamel | Conexión con bases de datos | 2 | 25-01-2005 02:07:31 |
...M$ pierde una.... | Jure | Noticias | 0 | 08-06-2004 01:15:24 |
|