Hallo Bernd und Bernhard,
auch wenn ich sicher gleich gesteinigt werde - die Geschichte mit den Deletionstubs ist in dem verlinkten Posting nicht ganz korrekt dargestellt. Ich mußte mich selbst vor kurzem extrem widerwillig belehren lassen, schließlich bin ich seit etlichen Jahren Trainer und schäme mich fast, meinen Teilnehmern immer nur die halbe Wahrheit erzählt zu haben ^^
Um es nicht doppelt zu schreiben werde ich es hier beschreiben, da dieser Thread hier sich direkt mit dem Thema beschäftigt während der andere Topic ja eigentlich ein konkreter Problemfall ist, der bereits als gelöst zu betrachten ist.
Korrekt ist (ich zitiere mal Bernhard indirekt aus dem anderen Post und korrigiere gleich währenddessen mit Streichungen und Kursivschrift):
Wenn man in den Eigenschaften einer Datenbank, unter Datenbank -> Replizierung -> Parameter -> Platzsparer die Einstellung "Dokumente entfernen, die seit x Tagen nicht geändert wurden" auf einen beliebigen Wert setzt (und hierfür NICHT den Haken davor setzt) dann ist die soeben eingegebene Anzahl der Tage durch 3 zu teilen um die Löschfrist das Bereinigungsintervall (Purge Interval) für Deletion Stubs zu erhalten: 90 Tage bedeutet also: Nach 30 Tagen werden die Stubs gelöscht, die älter als 90 Tage sind.
Also in Kurzfassung: der Wert durch 3 ist nur das Bereinigungsntervall. Also der Zeitpunkt, nach dem überhaupt geschaut wird, ob wieder Deletion Stubs zu löschen sind. Tatsächlich gelöscht werden aber trotzdem nur die Deletion Stubs, die älter als der komplette Wert sind, also ohne die Drittelung.
Noch besser wirds jetzt, weil (um nochmal auf das Standardbeispiel mit den 90 Tagen zu kommen) jetzt nicht auch nach 90 Tagen auch zwangsläufig alle Deletion Stubs rausgeflogen sind, die 90 Tage alt sind.
Alle 30 Tage wird jetzt geschaut, ob Deletionstubs zu löschen sind, die älter als 90 Tage sind. Also jeweils 30, 60, 90, 120 .... Tage nach Beginn unserer fiktiven Rechnung. Dazwischen wird NICHTS gelöscht (es sei denn jemand greift natürlich manuell ein, das schließe ich mal vorsichtshalber hier aus).
Da jeweils nur genau 1x geschaut und dann wieder 30 Tage gewartet wird kann es durchaus sein, daß zum Zeitpunkt 90 Tage die Stubs, die nur 89,999 Tage alt waren, nicht gelöscht wurden (weil der Tag aber nicht die Uhrzeit schon ran war für das 90-Tage-Alter).
Das nächste Mal schaut die Datenbank jetzt nach 120 tagen wieder nach - diesmal werden auch die verbliebenen der vorherigen Runde gefunden und bereinigt. Es hat also knapp 120 Tage bis zur Bereinigung gedauert (statt wie ganz ursprünglich angenommen nur 30!).
Die korrekte Formel für die Lebensdauer eines Deletion Stubs in einer aktiven Datenbank müßte also lauten (wenn x = eingestellter Wert): (x) < (Deletion Stub) <= (x + x/3)
Also minimal x und maximal ein Drittel mehr als x.
Grüße in eine grübelnde Gemeinschaft (wird sicher ein interessantes EntwicklerCamp diesmal ^^).
PS: Links suche ich gern noch raus, dauert nur einen kleinen Moment.