PostAction: REPLACE INTO wcfN_tracked_visit benötigt > 2 s

Bitte in den Beiträgen keine externe Bilder einbinden, sondern nur die Dateianhänge verwenden.
Vielen dank.
  • Themen Ignorieren 2.1.1

    wbbN_thread_ignore enthält ca. 38k Einträge

    wcfN_tracked_visit ca. 450k


    Beim Absenden, Bearbeiten, Löschen, Wiederherstellen etc. von Beiträgen und beim Speichern von Zitaten stellten wir deutliche Verzögerungen fest. (Das dürfte wohl für weitere PostActions ebenso sein.) Leider können wir nicht mehr nachvollziehen, seit wann das Problem existiert.

    Dank Alexander Eberts Hinweis konnte ich immerhin als eine Ursache folgende query ausmachen:

    Code
    1. REPLACE INTO wcf1_tracked_visit (objectTypeID, objectID, userID, visitTime) (SELECT ?, threadID, userID, ? FROM wbb1_thread_ignore)

    4 s ist eher extrem, bei den meisten Aktionen bewegte es sich im Bereich knapp über 2 s.



    Beim einfachen gelesen markieren per Doppelklick im Dashboard/Forum taucht das Problem nicht auf:


    Beim Löschen und Wiederherstellen von Beiträgen gibt es eine weitere query, die für eine Verzögerung von einigen Sekunden sorgt. Einen Zusammenhang zu threadIgnore sehe ich allerdings nicht:

    SQL
    1. UPDATE wbb1_thread thread SET firstPostID = COALESCE(( SELECT postID FROM wbb1_post WHERE threadID = thread.threadID AND isDisabled = thread.isDisabled AND isDeleted = thread.isDeleted ORDER BY time ASC, postID ASC LIMIT 1 ), firstPostID), replies = IF(thread.isDeleted = 0 AND thread.isDisabled = 0, ( SELECT COUNT(*) FROM wbb1_post WHERE threadID = thread.threadID AND isDisabled = 0 AND isDeleted = 0 ) - 1, 0), lastPostID = COALESCE(( SELECT postID FROM wbb1_post WHERE threadID = thread.threadID AND isDisabled = thread.isDisabled AND isDeleted = thread.isDeleted ORDER BY time DESC, postID DESC LIMIT 1 ), lastPostID) WHERE threadID IN (?)

    (vgl. Beitrag bei WoltLab)

  • Cyperghost

    Hat das Label behoben hinzugefügt