Autore Topic: sqlite record sparito  (Letto 864 volte)

Offline dex

  • Gran Maestro dei Gamberi
  • *****
  • Post: 872
    • Mostra profilo
sqlite record sparito
« il: 20 Marzo 2010, 20:35:31 »
ciao raga
ennesimo problema sul database sqlite3, ogni tanto su 2 pc mi spariscono gli ultimi record inseriti.

la situazione è questa: ho 4 pc con ubuntu 9.10 a 64 b. e come hardware sono molto simili 2 cpu 2 gb ram ecc..

1) il mio dove programmo mai avuto problemi
2) un pc che non aggiorno da qualche mese mai dato problemi.
3 e 4) appena aggiornati e su entrambi si presenta questo problema.

in pratica che succede: io apro la connessione all'avvio del programma e la chiudo alla sua chiusura, mentre il programma è aperto inserisco i record che vengono scritti nel database e tutto sembra funzionare, ogni tanto non sempre e senza che riesco a capirne la causa quando chiudo il programma alla sua riapertura manca l'ultimo o gli ultimi record scritti.

Offline Picavbg

  • Senatore Gambero
  • ******
  • Post: 1.620
    • Mostra profilo
Re: sqlite record sparito
« Risposta #1 il: 20 Marzo 2010, 22:54:09 »
Se non ho capito male i tuoi 4 pc sono connessi in rete. Io non ho esperienza di connessione di codesto tipo, perchè posseggo un solo pc, però ho letto più volte nella mia passata ricerca di strutture DB  che sqlite è l'unico in grado di girare in un ambiente monopc, mentre per ambienti client-server, sono disponibili in maniera praticanmente nativa  Mysql, Postgresql, Oracle. Se è così come ho capito, potrebbe anche essere un problema di connettività contemporanea al serve di due o più pc, perchè magari SQLite3 non riesce a gestire una tale realtà.
Spero di non essermi espresso in maniera spropositata. Infatti, il mio scopo, vista la mia scarsa conoscenza, è quello di accendere una lampadina per aiutarti nella ricerca dell'errore. :)
Ciao.
:ciao:

Offline Ceskho

  • Amministratore
  • Senatore Gambero
  • *****
  • Post: 3.778
  • Vi Veri Veniversum Vivus Vici
    • Mostra profilo
    • Pagina Personale
Re: sqlite record sparito
« Risposta #2 il: 21 Marzo 2010, 11:12:27 »
Hai fatto dei test accurati per vedere che i record ci siano veramente?

Dovresti fare in modo che il programma si chiusa SE E SOLO SE la scrittura su database sia andata a buon fine. Forse il codice va "troppo veloce" e il programma si chiude prima che la reale scrittura sia avvenuta...

Offline dex

  • Gran Maestro dei Gamberi
  • *****
  • Post: 872
    • Mostra profilo
Re: sqlite record sparito
« Risposta #3 il: 21 Marzo 2010, 22:38:42 »
Se non ho capito male i tuoi 4 pc sono connessi in rete. Io non ho esperienza di connessione di codesto tipo, perchè posseggo un solo pc, però ho letto più volte nella mia passata ricerca di strutture DB  che sqlite è l'unico in grado di girare in un ambiente monopc, mentre per ambienti client-server, sono disponibili in maniera praticanmente nativa  Mysql, Postgresql, Oracle. Se è così come ho capito, potrebbe anche essere un problema di connettività contemporanea al serve di due o più pc, perchè magari SQLite3 non riesce a gestire una tale realtà.
Spero di non essermi espresso in maniera spropositata. Infatti, il mio scopo, vista la mia scarsa conoscenza, è quello di accendere una lampadina per aiutarti nella ricerca dell'errore. :)
Ciao.

no i pc non sono connessi ne fra di loro ne ad internet, si trovano in quattro posti diversi.



Offline dex

  • Gran Maestro dei Gamberi
  • *****
  • Post: 872
    • Mostra profilo
Re: sqlite record sparito
« Risposta #4 il: 21 Marzo 2010, 22:42:06 »
Hai fatto dei test accurati per vedere che i record ci siano veramente?

Dovresti fare in modo che il programma si chiusa SE E SOLO SE la scrittura su database sia andata a buon fine. Forse il codice va "troppo veloce" e il programma si chiude prima che la reale scrittura sia avvenuta...

normalmente il programma viene aperto la mattina e chiuso all'ora di pranzo, non credo che sia la velocità in quanto anche dopo l'inserimento del record il programma viene lasciato aperto per molto tempo.

dopo l'inserimento spesso per controllare apro altri form quali griglie che fanno delle nuove query sul datase e i record ci sono

Offline Picavbg

  • Senatore Gambero
  • ******
  • Post: 1.620
    • Mostra profilo
Re: sqlite record sparito
« Risposta #5 il: 21 Marzo 2010, 23:46:08 »
1) il mio dove programmo mai avuto problemi
2) un pc che non aggiorno da qualche mese mai dato problemi.
3 e 4) appena aggiornati e su entrambi si presenta questo problema.
Il pc dove programmi -1)- e quelli appena aggiornati -3) e 4)- sono tutti allineati alla stessa versione di Gambas? Se no, per procedere coi test faresti bene, anche se su SO. di versione diversa, avere la stessa versione di Gambas con le stesse priorità-componenti attivate e riprovare.
Io farei: a scelta allinerei la versione di Gambas, per es. del 3) a quella dell'1) (che non ti ha dato mai problemi) e riproverei. Se va bene, allora porterei la versione di Gambas dell'1) a quella del 4). A questo punto dovrebbe essere più facile risalire alla causa.
Ciao.
:ciao:

Offline dex

  • Gran Maestro dei Gamberi
  • *****
  • Post: 872
    • Mostra profilo
Re: sqlite record sparito
« Risposta #6 il: 22 Marzo 2010, 14:06:35 »
1) il mio dove programmo mai avuto problemi
2) un pc che non aggiorno da qualche mese mai dato problemi.
3 e 4) appena aggiornati e su entrambi si presenta questo problema.
Il pc dove programmi -1)- e quelli appena aggiornati -3) e 4)- sono tutti allineati alla stessa versione di Gambas? Se no, per procedere coi test faresti bene, anche se su SO. di versione diversa, avere la stessa versione di Gambas con le stesse priorità-componenti attivate e riprovare.
Io farei: a scelta allinerei la versione di Gambas, per es. del 3) a quella dell'1) (che non ti ha dato mai problemi) e riproverei. Se va bene, allora porterei la versione di Gambas dell'1) a quella del 4). A questo punto dovrebbe essere più facile risalire alla causa.
Ciao.


devo provare, in effetti i 4 pc avevano tutti la 2.19 poi sul mio dove programmo ho messo la 2.20.
e in effetti i problemi si sono verificati dopo che ho compilato una nuova versione del programma con la 2.20.
ora provo ad installare la 2.20 anche sugli altri tre.

Offline leo72

  • Amministratore
  • Senatore Gambero
  • *****
  • Post: 2.163
    • Mostra profilo
    • http://www.leonardomiliani.com
Re: sqlite record sparito
« Risposta #7 il: 24 Marzo 2010, 14:37:16 »
Cmq ricordati una cosa:
è sempre buona norma aprire le connessioni ai DB solo nel momento in cui servono e chiuderle non appena tale necessità è venuta meno.
In parole povere: è inutile aprire la connessione all'avvio del programma e chiuderla alla sua chiusura. Aprila nel momento in cui devi fare un'operazione e richiudila subito dopo.
Visita il mio sito personale: http://www.leonardomiliani.com

Offline dex

  • Gran Maestro dei Gamberi
  • *****
  • Post: 872
    • Mostra profilo
Re: sqlite record sparito
« Risposta #8 il: 25 Marzo 2010, 00:15:58 »
Cmq ricordati una cosa:
è sempre buona norma aprire le connessioni ai DB solo nel momento in cui servono e chiuderle non appena tale necessità è venuta meno.
In parole povere: è inutile aprire la connessione all'avvio del programma e chiuderla alla sua chiusura. Aprila nel momento in cui devi fare un'operazione e richiudila subito dopo.


ciao leo

in effetti mi era venuto un dubbio simile e avevo già cominciato a modificare il codice per l'apertura del database.
appena completo effettuo delle prove.