Ciao a tutti...
dopo due mesi che 'smanetto' con Drupal eccomi qui a chiedervi delle info...
Ho iniziato ad usare Drupal principalmente per creare un Multisito...
Il mio problema è questo:
ieri mentre sistemavo le ultime cosette prima di pubblicare il sito, ho notato che alcuni contenuti...cm per magia...sono spariti...
I contenuti sono stati eliminati completamente anche dal database...ma...in contenuti recenti il titolo viene ancora visualizzato...solo il titolo, non il contenuto vero e proprio...
E' già successo a qualcuno??Se si, come avete risolto...
Grazie mille in anticipo...
Corruzione del DB? è la prima cosa che mi viene in mente..
Ciao
Marco
--
My blog
Working at @agavee
Ciao mavimo, grazie per la risposta...
Si...sicuramente corruzione del db...quello che sto cercando di capire è il perchè...non vorrei che ciò capitasse anche quando il sito è on-line...non sarebbe proprio una cosa carina...:D...
Ho notato però una cosa...sono scomparsi SOLO i contenuti della Home, gli altri contenuti no...
Uff...non riesco a capire...
Ciauuuuu :D
La corruzione del database NON dipende da drupal. Anche perchè, non vedo come possa un software che usa un server SQL, rovinare le chiavi gestite dal server SQL stesso (e non dal software che lo utilizza).
Solitamente ci sono cause legate al computer in cui risiede il server..... chessò, spengimento anomalo, cluster diffettosi, virus ecc.... ecc...
Quindi vai tranquillo :-)
Ciao
Gianni
Ciao Gianni al max vado TranquillA :D...
Comunque...i contenuti spariscono successivamente sono stati li x quasi 2 mesi...e poi come per magia son scomparsi...e al loro posto in home visualizzo un bel n.d.
Come ho già detto nel primo msg, viene cancellato solo il body del contenuto (titolo, tipo ecc...c sono sia nel db che in contenuti recenti in drupal),quindi non so fino a che punto può essere un problema di chiavi....non vorrei fosse un problema dovuto a qulche modulo...
Grazie ancora!!
hops.... scusa :-)
Fai una cosa.... accertati che "ciò che vedi è realmente quel che avviene". Mi spiego meglio, tu dici che non vedi più il body, ma non è detto che il body non ci sia più: se le chiavi sono rovinate, potrebbe succedere che il titolo del nodo lo vedi, ma il bodi non è visibile perchè si trova nella tabella revisioni (non più agganciata). Allora, fai così:
1) segnati l'id di un nodo che non presenta il body
2) vai su phpmyadmin e seleziona il tuo database
3) vai sulla linguetta SQL e fai click
4) nel textarea (riquadro bianco) scrivi:
select * from node_revisions where nid=X;
dove al posto di X scrivi l'id recuperato al punto 1
5) guarda il risultato.... nella colonna body è presente qualcosa? se sì, è solo un problema di chiavi o visualizzazione.... se non c'è nulla... son dolori
Se lo vedi procedi in questo modo:
1) da phpmyadmin, clicca sulla sinistra sulla tabella "node_revisions"
2) premi sulla linguetta "Operazioni", poi su "ripara tabella"
Ripeti la solita operazione con le altre tabelle che iniziano con node
Prova se adesso funziona....
Se non funziona ancora, devi verificare di non aver cancellato qualche variabile nel tema. La verifica più veloce che puoi fare è scaricarti un tema e abilitarlo. Verifica se adesso vedi il body
Ciao
Gianni
Già fatto... è per questo che ti dico che non esiste più solo il body...la tabella node_revisions è ahimè vuota!!!!
Quindi ciò vuol dire che son dolori,vero??
Direi proprio di sì :-(
La tabella delle revisioni, tra le altre cose, contiene i body dei nodi...... se quella è vuota son "volatili per diabetici"..... scusa una cosa, già che hai fatto 30, facciamo anche 31: controlla la tabella node. Quanti record contiene?
Ciao
Gianni
Contiene tutti i record dei contenuti inseriti...anche di quelli scomparsi... :(...
Quindi come t dicevo titolo, tipo, ecc...
Allora hai perso tutto. Ripristina le copie e sei a posto (se le hai fatte).
La causa di tutto ciò? IMO, un problema sul database. Mysql crea file distinti per le tabelle. Può essersi rovinato il file che contiene le la tabella delle revisioni.....
.........puoi fare un ultimo tentativo, se non hai le copie, ma è un tentativo disperato:
vai a vedere i file "node_revisions.*"..... se le dimensioni sono a zero o estremamente basse, hai perso tutto. Se invece non sono a zero ed hanno una dimensione "rilevante", può essere che il file è rovinato. In tal caso puoi provare a trasferirlo da un'altra parte e cercare di recuperarlo.
Ciao ed in bocca al lupo per i tuoi dati
Ciao
Gianni
Il ripristino l'ho già fatto,ovviamente avevo mille backup...:D
Comunque...ho ripristinato anche il sito che avevo in locale...e indovinate un po cos'è successo dopo che ho smanettato per qualche ora?????
Possibile che si rovini solo la tabella node_revisions???
Grazie per la tua gentilezza...
mmm.. da quello che ho letto temi che qualche modulo faccia stupidate sul tuo DB, puoi iniziare a controllare se hai tutte le ultime versioni aggiornate, poi controlla tra i problemi riscontrati da altri utenti per i moduli che hai installato (lascia stare quelli del core e quelli dell'installazione base, qelli è altamente improbabile che contengano un bug del tipo che indichi tu), se ancora hai questa perdita di dati io inizierei a eliminare tutti i moduli che hai aggiunto e a fare un pò di test di stress, andando ad inserirne uno per volta, a quel punto se c'è un modulo che fa cose "illecite" lo trovi (anche se ritengo che il problema non sia li).
Hai provato a far fare un check del disco su cui si trova il DB (ovviamente con disco non montato)?
Hai provato a fare un qualche test sulla RAM del tuo server (o PC che usi come server)? (memtest docet :) )
Ciao
Marco
--
My blog
Working at @agavee
No, infatti...io pensavo più a uno dei moduli che ho usato per realizzare il network...faccio un po di prove e vi faccio sapere...
Ancora tante grazie!!!
Allora...i moduli sono tutti aggiornati...però ho scoperto una cosetta...:D
Come vi ho già detto sto realizzando un multisito...il modulo ke mi fa perdere i dati è OG...
Succede praticamente questo...se io elimino un Sito slave...negli altri mi vengono eliminati i contenuti...
Come mai questo??
Nessuna idea su come posso risolvere??
Grazie tante
Tizy
Ci sarebbe da analizzare il modulo, in ogni caso non dovrebbe succedere visto che i DB sono distinti.. l'unica cosa che mi viene in mente è di controllare se in tutti i DB OG ha creato le tabelle in fase di installazione, o se da qualche parte se le è "dimenticate".
Ciao
Marco
--
My blog
Working at @agavee
Ciao mavimo....
No,il db è unico con prefissi diversi per ogni sito...e le tabelle ci sono tutte...
Ciao
Tizy
mm... vuoi dire ceh hai tutte le tabelle di OG per ogni sito, ovvero la stessa tabella creata da OG con i diversi prefissi? Controlla se c'è qualceh tabella che non è replicata per tutti i siti..
Ciao
Marco
--
My blog
Working at @agavee
Esattamente...c'è solo una tabella in più nel sito master (giustamente) che è quella del og_sites_hub....
Sto provando a fare un po' di prove...speriamo si riesca ad arrivare a qalche conclusione...
e comunque grazie tante :D
Eccomi nuovamente qui...dunque penso di aver trovato la parte di codice incriminata :D...
$sql = "DELETE FROM {og} WHERE nid = %d";
db_query($sql, $node->nid);
nel file og.module....
ho fatto questa prova...ho aggiunto un nuovo sito...il suo nid è uguale a 7...l'ho eliminato...e dalla tabella node_revisions è stata eliminato il contenuto con nid 7... ho fatto varie prove e in effetti in realtà non va ad eliminare dalla tabella og ma dalla tabella node_revisions.... :o
A me sembra strano che la query sopra sia quella incriminata.... comunque....
Se i dati son stati cancellati da una delete, allora forse puoi recuperarli (a meno che tu non abbia fatto il compattamento degli archivi). I record "cancellati" non sono cancellati fisicamente, ma marcati come "cancellati". Con un buon client per mysql, dovresti essere in grado di recuperali.
Ciao
Gianni
Grazie Gianni...il problema non è tanto recuperarli...anche perchè faccio spesso il backup del db...il mio problema è non farli cancellare....
secondo voi com'è possibile che vada ad intervenire su node_revisions e non su og?!?
Grazie tante raga...mi siete di grande aiuto...
Eccomi qui...ritorno a rompere.. :D
Gianni...ho installato molto velocemente un drupal di test...
Network --> drupalnetwork.kiwilabs.it
SitoSlave1 --> drupalsite.kiwilabs.it
SitoSlave2 --> drupalsite2.kiwilabs.it
User admin
Psw admin
Potete provarci voi a cancellare un gruppo??
grazie
Ah dimenticavo...
se ciò che dicevo che va a cancellare la tabella node_revisions al posto di og....cancellando il 1 sito slave sul secondo dovreste vedere un bel n/d al posto del contenuto "TERZO contenuto", cancellando invece il secondo sito slave, sul primo avrete l'n/d al posto del "SESTO contenuto"....
Fatemi sapere se può essere quello oppure no il pezzo di codice incriminato...
Grazie e scusate ancora :D
Tizy
Non conosco la tabella in questione e quindi non mi sbilancio, ma hai controllato che non ci sia qualche riferimento ad altre tabelle (non credo, ma tentar non nuoce :D).
Altra prova che farei è di controllare se esistono effettivamente le tabelle og e non si chiamano in altro modo (anche qui siamo ai limiti della fantascienza :D).
Proseguendo per tentativi, non hai possibilità di fare un test con DB differenti anziché con lo stesso DB e prefix differenti? Prova e dicci se almeno così funziona..
Ciao
Marco
--
My blog
Working at @agavee
No niente riferimento ad altre tabelle e tanto meno alla node_revisions.
Le tabelle og c sono tutte... e in tutti i siti... :(
Ora provo...ma penso ke dovrebbe essere la stessa cosa....cmq per ora grazisssssssime!!!
nada nada nada... :( ... uff...
Intendi che fa l stessa cosa anche se usi DB differenti? Mulble, mumle, mumble.. hai controllato se qualcuno ha già avuto lo stesso problema? Dai un occhiata su http://drupal.org/project/issues/og?categories=bug e vedi.. per caso stai usando una versione "vecchia" di OG? L'ultima è la 5.x-3.1.
Usi altri modulo che sono in qualche modo collegati ad OG (per esempio OG Actions, OG Minutes, ..)? So che è paccosissimo, ma l'unica cosa che mi viene in mente è di commentare una funzione per volta dentro il modulo in modo da andare a circoscrivere dove è il problema, mi sembra strano sia quella query che hai indicato tu.. anche perché da quello che ho capito non accade una volta una tantum, ma è un evento ben ripetibile.. :|
Ciao
Marco
--
My blog
Working at @agavee
si...si comporta esattamente allo stesso modo...e a quanto sembra nessuno ha avuto problemi del genere...
la versione è una vecchia...ma ho provato anke con la nuova...ed il risultato non cambia...
mi sono studiata tutto l'og.module e penso d'aver trovato la funzione in questione che usa la funzione node_delete del modulo node...ma anche sitemando quello si comporta lo stesso come prima...e sta cosa mi sta facendo impazzire...booo...non riesco a venirne a capo...
Tizy
Mi collego veloce veloce dopo il crash di 2 hard disk in una giornata!!!ho appena finito di reinstallare il tutto....
Torniamo a palla.... premetto che non conosco i moduli in questione, li ho guardati ora al volo..... da perfetto ignorante di quei moduli, ti faccio una domanda: è giusto che ogni gruppo debba avere il db prefix uguale?
Ciao
Gianni
no...ogni gruppo (ovvero ogni sito) ha un prefix diverso....
[OT]
Dimmi che non erano quelli di un raid 1 che si sono saltati in contemporanea, altrimenti potresti vincere il premio nobel per la sfiga :|
[/OT]
Ciao
Marco
--
My blog
Working at @agavee
-------- OT ---------
Il primo l'ho appoggiato a macchina aperta, sul lettore DVD.... ha lavorato due giorni poi oggi è saltato. Il secondo l'ho appoggiato al solito posto (ovviamente appoggiato su un pezzo di gomma che lo scherma dal lettore DVD sottostante). Dopo qualche ora.... pof..... saltato. A questo punto mi son reso conto del calore sprigionato. Quei due HD erano sotto pressione per un servizio smsgateway che stavo testando e su cui stò sviluppando dei moduli drupal. Colpa mia.... avrei dovuto metterli nei suoi alloggiamenti, vicino alla ventola.... visto le temperature di oggi.
------- FINE OT ---------
Tornando IN, secondo una mia personalissima opinione, se sul sito di drupal non è riscontrato il bug in questione e, visto che non hai moduli particolari installati, la causa del problema va ricercata in un errore di installazione/configurazione del modulo stesso. L'errore che segnali è troppo macroscopico e mi sembra strano che nessuno lo ha segnalato. La query che hai postato ("DELETE FROM {og} WHERE nid = %d") è ovviamente una query parametrizzata nel classico stile Drupal. Ovviamente "og" è posta tra le graffe per diversi motivi tra i quali c'è la sostituzione con l'eventuale vero nome provvisto di prefisso, in %d ci va ovviamente un numerico. Questa sostituzione viene fatta automaticamente dalle api di drupal stesso. ......ecco perchè è assai assai assai :-) improbabile, come ti spiegava anche mavimo, che il problema risieda in quelle due righe. Cercalo altrove (se di bug si tratta)
Ciao
Gianni