September2024-Update-Challenge

Aus DebianforumWiki
Zur Navigation springen Zur Suche springen

Seit dem Update am 22. September 2024 fehlen die neuesten Beitraege, also Beiträge nach dem Update-Datum in der Ergebnisliste von Suchanfragen. Folgendes wurde bereits getestet und festgestellt:

  1. Suchindex neu aufbauen behebt das Problem nicht. Im Supportforum phpbb.com werden keine Meldungen über derart Fehler entdeckt.
  2. Die standardmässig nicht vorhandene Begrenzung auf einen Zeitraum bei der fortgeschrittenen Suche erzeugt das Problem.
Experiment3 Anfang

3) Experimente mit dem User XY: 3.1) Suche nach Beitraegen des Users (= Klick auf Beitragszahl unter Username neben einem Post): https://debianforum.de/forum/search.php?author_id=51394&sr=posts 3.2) Fortgeschrittene Suche, es wird nur den Username eingegeben und dann gesucht: https://debianforum.de/forum/search.php?keywords=&terms=all&author=debra&sc=1&sf=all&sr=posts&sk=t&sd=d&st=0&ch=300&t=0&submit=Search 3.3) Wenn bei der fortgeschrittenen Suche nun die Zeitbeschraenkung auf z.B. 1 Jahr begrenzt wird, dann werden alle Posts aufgelistet also tritt der Fehler nicht auf:

3.x) Basierend auf Test 3.1) bis 3.3) wird vermutet, dass irgendwas mit der Zeitkonfiguration nicht passt.

So ein Workaround mit der Abfrage https://debianforum.de/forum/search.php?author=dein_username&sr=topics&st=365 wobei "dein_username" durch den Namen des Users im Forum ersetzt wird, erlaubt die neuesten Beiträge zu finden.

Experiment3 Ende
Experiment4 Anfang

4) Experimente mit dem User YX: Meine Beobachtung dazu ist Folgende: Alle Beiträge von _vor_ dem 17.09.24, egal ob von mir selbst verfaßt oder als Antwort in Beiträgen von anderen Threaderstellern, werden wie gewünscht angezeigt. Auch wenn andere Antworten später erfolgt sind, sehe ich die Beiträge. Das Kriterium ist also der 17.09. Alle Beiträge von mir selbst oder mit einer Antwort von mir _nach_ dem 18.09. tauchen nicht mehr auf. Vielleicht hilft das bei der Suche.

Experiment4 Ende

Nach dem Update im 26 November 2024 fehlen die neuesten Beitraege nach dem 26 November 2024. Ein erfahrener phpBB Nutzer hat diese #Feststellung gemacht:

Was auch immer das Problem ist, wenn man die Suche auf eine Anzahl Tage kleiner als 365 oder auf bestimmte Unterforen einschraenkt, kommt das korrekte Ergebnis.

Experiment5 Anfang

Als normaler User komme ich bis 26.11.2024 21:53:18 https://debianforum.de/forum/viewtopic.php?p=1376324#p1376324

ERGÄNZUNG: Selbes Ergebnis ausgeloggt, und ebenso uneingeloggt nach Browser-Neustart (Löschen des Cache). In allen Fällen Anzahl der Treffer: 4072

Experiment5 Ende
Experiment6 Anfang

Ich habe gerade den Suchzeitraum für meine eigenen Beiträge mittels manueller Änderung in der Browserzeile auf ungebührliche 20 Jahre (7300 Tage) gesetzt: https://debianforum.de/forum/search.php?keywords=&terms=all&author=Livingston&sc=1&sf=all&sr=posts&sk=t&sd=d&st=7300&ch=300&t=0&submit=Suche

Anzahl der Ergebnisse ist nach wie vor 1772, die aktuellsten Beiträge tauchen nicht auf. Schaue ich nun nach meinen ältesten Beiträgen, sehe ich, dass meine allerersten Posts nicht auftauchen. Nächster Versuch: Limit auf 365 Tage liefert z.Z. 667 Treffer inkl. der aktuellen. Weiterer Anlauf: 366 Tage -> Hier erfolgt der Wrap auf "unbegrenzt": Wieder 1772 Beiträge. Wieder sind die allerältesten und die neuesten Beiträge nicht erreichbar.

Experiment6 Ende
Experiment7 Anfang

Ich habe nicht den Überblick, ob folgendes schon bemerkt wurde: Nicht nur mit einer Beschränkung des Suchzeitraums, sondern auch mit einer Einschränkung der zu durchsuchenden Foren werden mir die aktuellsten Posts im Suchergebnis angezeigt. Hier als Beispiel eine auf "Neuigkeiten rund um debianforum.de" begrenzte Suche: https://debianforum.de/forum/search.php?keywords=&terms=any&author=Meillo&fid%5B%5D=5&sc=1&sf=all&sr=posts&sk=t&sd=d&st=0&ch=300&t=0&submit=Suche Dies gilt auch, wenn ich mehrere Foren markiere – allerdings nicht, wenn ich ALLE Foren auswähle (d.h. in der Suchmaske markiere).

Experiment7 Ende
Experiment8 Anfang

Ok, für den User "Meillo" erhalte ich mit 365 Tagen 176 Treffer, mit 366 Tagen 3550 Treffer, das ist ne Differenz von 3474 Postings an einem Tag, ca. 2,5 Postings pro Minute, 24 Stunden lang. Respekt Meillo, da hattest du einen sehr produktiven Tag vor einem Jahr.

Experiment8 Ende

Hier ein von einem User vorgeschlagener Lösungsansatz für die Klärung der Ursache des Fehlers:

Loesungsansatz1 Anfang

Aus meiner Sicht waeren hier nun folgende Wege sinnvoll zu verfolgen:

- Im Code schauen, was mit diesem Parameter passiert, wie die Suchanfrage aufgebaut wird und inwiefern sich 365 und 366 Tage unterscheiden.

- In einer Testinstallation vielleicht mal den SQL-Server tracen (falls das moeglich ist), um zu schauen, was genau fuer SQL-Abfragen genau abgesetzt werden.

Loesungsansatz1 Ende
Feststellung1 Anfang

Ja, die entscheidende Frage ist: Woher stammt die Differenz? Darum genau geht es. ;-) Das ist das Problem, dem wir hier nachgehen: die neuesten Beitraege fehlen in der Suchanfrage.

Immerhin scheinen alle User jeweils die gleichen Ergebnisse zu bekommen, wenn sie die gleichen Suchen aufrufen (abgesehen davon, dass Mods auch Treffer im Archiv-Forum angezeigt bekommen).

Allerdings fehlen bei der Suche nach allen Posts von unterschiedlichen Usern unterschiedliche Posts: Bei mir alle seit Vorgestern. Bei XX1 die seit Gestern. Bei XX2 und XX3 gar keine. Um ein paar Beispiele zu nennen.

Was auch immer das Problem ist, wenn man die Suche auf eine Anzahl Tage <365 oder auf bestimmte Unterforen einschraenkt, kommt das korrekte Ergebnis (wie es scheint).

Feststellung1 Ende
Feststellung2 Anfang

Ich denke, mein oben geschilderter Fall mit 366 Tagen bedeutet gar nix Besonderes. Ich bin wahrscheinlich nur dem maximalen Wertebereich entfleucht, woraufhin eine Korrektur auf Default-Werte stattfand. Und das ist die eigentliche Gemeinsamkeit: Default-Einstellungen führen zu diesen seltsamen Abweichungen. Oder habe ich einen Ausreißer übersehen?

Feststellung2 Ende
HypotheseXY Anfang

Wenn in den phpBB-Abfragen die strtotime()-Funktion verwendet wird "strtotime - wandelt eine textuelle englische Datums- und Zeitbeschreibung in einen Unix-Zeitstempel um" https://www.php.net/manual/de/function.strtotime.php

könnte dies bei fehlerhaften Programmierung vlt. zu dem jetzigen Verhalten der phpBB-Suchabfragen führen? Ich habe hier die Parameter der Klasse user, wie diese in phpBB API Documentation [1] https://area51.phpbb.com/docs/code/3.3.x/phpbb/user.html definiert ist, skizziert:

Zitat [1] Anfang

user

class user extends session

|-- Properties
|-- Methods
|-- Details
     datetime create_datetime(string $time = 'now', DateTimeZone $timezone = null)
        Parameters
          String $time in a format accepted by strtotime()
Zitat [1] Ende

Wenn die phpBB-Entwickler in der Definition für $time dokumentiert haben, dann ist es nicht auszuschließen, dass strtotime() bei der Verarbeitung der $time-Werte eine Rolle spielt, spielen kann, oder?

HypotheseXY Ende

Anmerkung Dies ist eine von mir, dem phpBBUser XXYY erstellte Zusammenfassung der Unterhaltung im Thema "Update auf phpBB 3.3.13" im Forum https://debianforum.de/forum/viewtopic.php?t=190559 .

Frage in die Runde:

Tritt dieses Verhalten auch auf anderen phpBB-Instanzen auf?