TuxCommander
Mitglied
Guten Morgen,
also ich habe ein merkwürdiges Phänomen bei ein Tabelle beobachtet welches mir irgendwie Zahnschmerzen bereitet.
Ich habe es auch schon in anderen Foren gepostet und da konnte mir aber bisher keiner was sagen.
So, zum Problem :
Es ist eine MyIsam Tabelle die schlicht und ergreifend Datensätze verliert.
Zuerst war es anfangs immer nur ein bestimmter Tupel der entfernt wurde.
Mittlerweile wird aber die gesamt Tabelle geleert -.-
Es war anfangs auch so als wäre der gelöschte Tupel nie da gewesen, denn der Autoinkrement wurde auch zurückgesetzt sodass die laufende Nummer des Tupels wieder verfügbar war.
(Einzelner Datensatz zurück gesetzt ? oO)
Jetzt seitdem die Tabelle komplett geleert wird zählt der Inkrement aber normal weiter.
(Also gelöscht nicht zurück gesetzt.)
Die Überprüfungsmöglichkeiten seitens des MySQL Servers habe ich genutzt und die sagten mir das mit der Tabelle alles in Ordnung wäre.
Aber genau das kann nicht sein!
In der Tabelle waren ca. 8 Datensätze und die Tabelle hatte eine Größe von 4,1 KB.
Diese Größe hat sie auch nachdem alle Tupels "verschwunden" sind, obwohl eine leere Tabelle immer mit der Größe 1 KB angegeben wird. (Index Größe)
Also noch ein Indiz dafür das die Datensätze gelöscht werden und die Tabelle nicht zurückgesetzt wird.
ABER
Es gibt in dem gesamten Projekt KEIN Statement welches eine Löschanweisung auf dieser Tabelle ausführt
Ich muss dazu sagen, dass das Statement richtig fies ist.
Es sind mehrere in einander geschachtelter "IFs" und und "CASEs" in dem Query aber es gibt mir, unter allen Möglichkeiten die das Query hat, nie einen Fehler aus.
Nur halt das nach undefinierter Zeit nicht nachvollziehbar Datensätze fehlen.
Jemand schon mal was ähnliches erlebt? Oder ne Ahnung was es sein könnte?
Und bitte keine Fragen ob ich sicher bin, dass es wirklich kein DELETE oder TRUNCATE auf die Tabelle gibt.
also ich habe ein merkwürdiges Phänomen bei ein Tabelle beobachtet welches mir irgendwie Zahnschmerzen bereitet.
Ich habe es auch schon in anderen Foren gepostet und da konnte mir aber bisher keiner was sagen.
So, zum Problem :
Es ist eine MyIsam Tabelle die schlicht und ergreifend Datensätze verliert.
Zuerst war es anfangs immer nur ein bestimmter Tupel der entfernt wurde.
Mittlerweile wird aber die gesamt Tabelle geleert -.-
Es war anfangs auch so als wäre der gelöschte Tupel nie da gewesen, denn der Autoinkrement wurde auch zurückgesetzt sodass die laufende Nummer des Tupels wieder verfügbar war.
(Einzelner Datensatz zurück gesetzt ? oO)
Jetzt seitdem die Tabelle komplett geleert wird zählt der Inkrement aber normal weiter.
(Also gelöscht nicht zurück gesetzt.)
Die Überprüfungsmöglichkeiten seitens des MySQL Servers habe ich genutzt und die sagten mir das mit der Tabelle alles in Ordnung wäre.
Aber genau das kann nicht sein!
In der Tabelle waren ca. 8 Datensätze und die Tabelle hatte eine Größe von 4,1 KB.
Diese Größe hat sie auch nachdem alle Tupels "verschwunden" sind, obwohl eine leere Tabelle immer mit der Größe 1 KB angegeben wird. (Index Größe)
Also noch ein Indiz dafür das die Datensätze gelöscht werden und die Tabelle nicht zurückgesetzt wird.
ABER
Es gibt in dem gesamten Projekt KEIN Statement welches eine Löschanweisung auf dieser Tabelle ausführt
Ich muss dazu sagen, dass das Statement richtig fies ist.
Es sind mehrere in einander geschachtelter "IFs" und und "CASEs" in dem Query aber es gibt mir, unter allen Möglichkeiten die das Query hat, nie einen Fehler aus.
Nur halt das nach undefinierter Zeit nicht nachvollziehbar Datensätze fehlen.
Jemand schon mal was ähnliches erlebt? Oder ne Ahnung was es sein könnte?
Und bitte keine Fragen ob ich sicher bin, dass es wirklich kein DELETE oder TRUNCATE auf die Tabelle gibt.