Vorschau der Themenliste (legacy)

Hallo, danke für das großartige Plugin!

Leider werden mit dem letzten Update Bilder, die nicht direkt auf Discourse gehostet sind, im Raster- oder Kachel-Modus nicht mehr angezeigt. Könntest du das bitte überprüfen?

Wenn beispielsweise ein Beitrag ein Bild von einem anderen Server (Blogger, Picasa, …) enthält, wird es nicht mehr angezeigt. Bisher hat das problemlos funktioniert.

1 „Gefällt mir“

Vorschaubilder werden nun von Discourse-Core generiert, und ich habe kaum noch Einfluss darauf.

Ein Großteil der Logik zur Generierung von Vorschaubildern wurde entfernt und Discourse überlassen.

Vielleicht möchten Sie dies hier ansprechen: Theme modifiers: A brief introduction

2 „Gefällt mir“

Danke! Ich habe dort gerade eine Antwort verfasst. Ich bin etwas skeptisch wegen all der Updates, da meine Bilder nicht auf einem lokalen Server gehostet sind.

2 „Gefällt mir“

Ich glaube, es sollte immer noch funktionieren, wenn deine ‘Uploads’ über die Einstellungen auf einem Remote-Server gehostet werden, aber es wird keine Hotlinks mehr zu Remote-Sites und nicht verbundenen Dritten enthalten.

Es ergibt keinen Sinn mehr, diesen Teil der Codebasis im Plugin zu verwalten, da er nun vom Core übernommen wurde. Es ist absolut richtig, dass du dich bei ihnen meldest :+1:

4 „Gefällt mir“

Danke. Ich verstehe die Situation. Es ist keine einfache Lösung für meine Website, da wir einen anderen Server zur Speicherung der Bilder verwenden. Es ist jetzt zu schwierig, auf den zugehörigen Server zu wechseln, da es viele Beiträge gibt, und zu groß für die Speicherung auf einem lokalen Server.

1 „Gefällt mir“

Das Problem, das ich habe, ist, dass die Vorschaubilder nicht mehr auf dem Mobilgerät angezeigt werden, wenn das Ereignis-Plugin aktiviert ist, wie zuvor besprochen. Ich dachte, darauf hast du dich bezogen.

Vorschaubilder werden bei mir einwandfrei angezeigt. Bist du sicher, dass du Events gemäß @fzngagan aktualisiert hast?

2 „Gefällt mir“

Er muss das direkt nach meinem Test zusammengeführt haben, danke zusammen, jetzt funktioniert alles!

3 „Gefällt mir“

Ich habe gestern aktualisiert und seitdem eine eher schlechte Leistung. Eine genauere Analyse des Profilings zeigt diese Abfrage von TLP, die wohl die Ursache ist – vielleicht fehlt hier ein Index?

Interessanterweise taucht diese Abfrage auch auf, wenn ich die Seite im abgesicherten Modus ausführe :thinking:

1 „Gefällt mir“

Funktionen Bilder. Diese Abfrage hat sich seit Ewigkeiten (jahrelang!) nicht geändert. Sind Sie sicher, dass dies ein neues Problem ist?

Sortieren Sie nach dem Erstellungsdatum des Tags? Das führt fast zwangsläufig zu einer verschachtelten Abfrage. Die Sortierung nach „Neueste“ ist schonender.

Sie können diese Funktion vorübergehend deaktivieren.

Die Theme-Komponente verwendet die Core-API. Falls dies Sie belastet, können Sie vorübergehend darauf umsteigen und diese nutzen.

1 „Gefällt mir“

Das ist wohl neu, seit ich auf PG12 aktualisiert habe. Und wir brauchen eine Sortierung nach dem Erstellungsdatum von Tags – das ist ein Kernmerkmal unserer Community. Was würde ich verpassen, wenn ich zu TC wechseln würde?

P.S.: Ich erinnere mich vage daran, dass wir vor Jahren über dasselbe Problem mit der hervorgehobenen Zeile diskutiert haben. Ich werde mich mal umsehen.

2 „Gefällt mir“

Bist du sicher, dass das PG 12-Upgrade die Neulistung abgeschlossen hat? Viele Benutzer haben über eine Phase verminderter Leistung während dieses Vorgangs berichtet (und diese Berichte hatten nichts mit TLP zu tun).

Übrigens, wenn ich darüber nachdenke, könnte sich etwas anderes geändert haben, da jetzt eine Verknüpfung mit topic_thumbnails erforderlich ist. Das war jedoch auch schon vor einiger Zeit der Fall, und es gab keine weiteren Berichte. Ich vermute, zuvor wurde einfach die Bild-URL als Hotlink im Topic-Objekt verwendet, was schneller gewesen wäre (eine weniger Verknüpfung). Das ist uns aufgrund einer Änderung im Kern jedoch nicht mehr möglich. Das könnte einen Beitrag leisten.

1 „Gefällt mir“

Ja, die Neuprüfung ist abgeschlossen. Die Sortierung nach dem Erstellungsdatum des Themas hat das gleiche Problem. Hier ist die EXPLAIN-Ausgabe für beide Abfragen:

Sortiert nach dem Tagging-Datum:

discourse=# explain SELECT "topics"."id", "topics"."title", "topics"."last_posted_at", "topics"."created_at", "topics"."updated_at", "topics"."views", "topics"."posts_count", "topics"."user_id", "topics"."last_post_user_id", "topics"."reply_count", "topics"."featured_user1_id", "topics"."featured_user2_id", "topics"."featured_user3_id", "topics"."deleted_at", "topics"."highest_post_number", "topics"."like_count", "topics"."incoming_link_count", "topics"."category_id", "topics"."visible", "topics"."moderator_posts_count", "topics"."closed", "topics"."archived", "topics"."bumped_at", "topics"."has_summary", "topics"."archetype", "topics"."featured_user4_id", "topics"."notify_moderators_count", "topics"."spam_count", "topics"."pinned_at", "topics"."score", "topics"."percent_rank", "topics"."subtype", "topics"."slug", "topics"."deleted_by_id", "topics"."participant_count", "topics"."word_count", "topics"."excerpt", "topics"."pinned_globally", "topics"."pinned_until", "topics"."fancy_title", "topics"."highest_staff_post_number", "topics"."featured_link", "topics"."reviewable_score", "topics"."image_upload_id" 
discourse-# FROM "topics" 
discourse-# INNER JOIN "topic_tags" 
discourse-# ON "topic_tags"."topic_id" = "topics"."id" 
discourse-# INNER JOIN "tags" ON "tags"."id" = "topic_tags"."tag_id" 
discourse-# WHERE ("topics"."deleted_at" IS NULL) 
discourse-# AND "topics"."visible" = TRUE 
discourse-# AND (NOT topics.closed AND NOT topics.archived AND topics.deleted_at IS NULL) 
discourse-# AND (topics.image_upload_id in (
discourse(#         SELECT image_upload_id FROM topic_thumbnails
discourse(#       ))
discourse-# AND (tags.id IN (1)) 
discourse-# 
discourse-# ORDER BY (
discourse(#  SELECT created_at FROM topic_tags
discourse(#         WHERE topic_id = topics.id
discourse(#         AND tag_id IN (1)
discourse(#         LIMIT 1
discourse(# )
discourse-# 
discourse-# DESC LIMIT 6; 
                                                                    QUERY PLAN                                                         
            
---------------------------------------------------------------------------------------------------------------------------------------
------------
 Limit  (cost=2631719.94..2631719.95 rows=6 width=569)
   ->  Sort  (cost=2631719.94..2631721.73 rows=717 width=569)
         Sort Key: ((SubPlan 1)) DESC
         ->  Nested Loop  (cost=0.43..2631707.09 rows=717 width=569)
               ->  Seq Scan on tags  (cost=0.00..4.51 rows=1 width=4)
                     Filter: (id = 1)
               ->  Nested Loop  (cost=0.43..2625737.13 rows=717 width=565)
                     ->  Seq Scan on topic_tags  (cost=0.00..860.33 rows=1539 width=8)
                           Filter: (tag_id = 1)
                     ->  Index Scan using topics_pkey on topics  (cost=0.43..1705.57 rows=1 width=561)
                           Index Cond: (id = topic_tags.topic_id)
                           Filter: ((deleted_at IS NULL) AND visible AND (NOT closed) AND (NOT archived) AND (deleted_at IS NULL) AND (
SubPlan 2))
                           SubPlan 2
                             ->  Seq Scan on topic_thumbnails  (cost=0.00..2966.64 rows=171664 width=8)
               SubPlan 1
                 ->  Limit  (cost=0.29..8.31 rows=1 width=8)
                       ->  Index Scan using index_topic_tags_on_topic_id_and_tag_id on topic_tags topic_tags_1  (cost=0.29..8.31 rows=1
 width=8)
                             Index Cond: ((topic_id = topics.id) AND (tag_id = 1))
 JIT:
   Functions: 25
   Options: Inlining true, Optimization true, Expressions true, Deforming true
(21 rows)

Sortiert nach dem Datum des Themas:

discourse=# explain SELECT "topics"."id", "topics"."title", "topics"."last_posted_at", "topics"."created_at", "topics"."updated_at", "topics"."views", "topics"."posts_count", "topics"."user_id", "topics"."last_post_user_id", "topics"."reply_count", "topics"."featured_user1_id", "topics"."featured_user2_id", "topics"."featured_user3_id", "topics"."deleted_at", "topics"."highest_post_number", "topics"."like_count", "topics"."incoming_link_count", "topics"."category_id", "topics"."visible", "topics"."moderator_posts_count", "topics"."closed", "topics"."archived", "topics"."bumped_at", "topics"."has_summary", "topics"."archetype", "topics"."featured_user4_id", "topics"."notify_moderators_count", "topics"."spam_count", "topics"."pinned_at", "topics"."score", "topics"."percent_rank", "topics"."subtype", "topics"."slug", "topics"."deleted_by_id", "topics"."participant_count", "topics"."word_count", "topics"."excerpt", "topics"."pinned_globally", "topics"."pinned_until", "topics"."fancy_title", "topics"."highest_staff_post_number", "topics"."featured_link", "topics"."reviewable_score", "topics"."image_upload_id" FROM "topics" INNER JOIN "topic_tags" ON "topic_tags"."topic_id" = "topics"."id" INNER JOIN "tags" ON "tags"."id" = "topic_tags"."tag_id" WHERE ("topics"."deleted_at" IS NULL) AND "topics"."visible" = TRUE AND (NOT topics.closed AND NOT topics.archived AND topics.deleted_at IS NULL) AND (topics.image_upload_id in (
        SELECT image_upload_id FROM topic_thumbnails
      )) AND (tags.id IN (1)) ORDER BY (SELECT created_at FROM topic_tags
        WHERE topic_id = topics.id
        AND tag_id IN (1)
        LIMIT 1)
        DESC LIMIT 6; 
                                                                    QUERY PLAN                                                         
            
---------------------------------------------------------------------------------------------------------------------------------------
------------
 Limit  (cost=2631719.94..2631719.95 rows=6 width=569)
   ->  Sort  (cost=2631719.94..2631721.73 rows=717 width=569)
         Sort Key: ((SubPlan 1)) DESC
         ->  Nested Loop  (cost=0.43..2631707.09 rows=717 width=569)
               ->  Seq Scan on tags  (cost=0.00..4.51 rows=1 width=4)
                     Filter: (id = 1)
               ->  Nested Loop  (cost=0.43..2625737.13 rows=717 width=565)
                     ->  Seq Scan on topic_tags  (cost=0.00..860.33 rows=1539 width=8)
                           Filter: (tag_id = 1)
                     ->  Index Scan using topics_pkey on topics  (cost=0.43..1705.57 rows=1 width=561)
                           Index Cond: (id = topic_tags.topic_id)
                           Filter: ((deleted_at IS NULL) AND visible AND (NOT closed) AND (NOT archived) AND (deleted_at IS NULL) AND (
SubPlan 2))
                           SubPlan 2
                             ->  Seq Scan on topic_thumbnails  (cost=0.00..2966.64 rows=171664 width=8)
               SubPlan 1
                 ->  Limit  (cost=0.29..8.31 rows=1 width=8)
                       ->  Index Scan using index_topic_tags_on_topic_id_and_tag_id on topic_tags topic_tags_1  (cost=0.29..8.31 rows=1
 width=8)
                             Index Cond: ((topic_id = topics.id) AND (tag_id = 1))
 JIT:
   Functions: 25
   Options: Inlining true, Optimization true, Expressions true, Deforming true
(21 rows)
2 „Gefällt mir“

Nützlich. Danke.

Entschuldigung, ich bin mir nicht sicher, wann ich dazu komme.

Auch sei darauf hingewiesen, dass der neue Join verbessert werden könnte aber ich kann ihn nicht entfernen. (oh ja, das könnte ich!).

1 „Gefällt mir“

OK, ich habe offline mit @bartv zusammengearbeitet, um dies zu verbessern.

Dies betrifft nur das Plugin, nicht den TC:

Ich empfehle ein Upgrade, um davon zu profitieren, da dies eine große Verbesserung für Seiten ist, die hervorgehobene Bilder verwenden.

5 „Gefällt mir“

Du bist ein Rockstar! :guitar:

3 „Gefällt mir“

Deine detaillierte Detektivarbeit war ebenfalls entscheidend, Bart, danke.

3 „Gefällt mir“

Hallo, ich habe die Git-Clone-URL in die app.yml der Container eingefügt, aber beim Neuaufbau der App erhalte ich einen Fehler:

(<unknown>): Beim Scannen eines einfachen Skalars in Zeile 91, Spalte 13 wurde ein Tabulatorzeichen gefunden, das die Einrückung verletzt -e LANG=en_US.UTF-8

Die Website funktioniert nicht mehr.

Ich habe die Git-Clone-URL für das Plugin entfernt, und es funktioniert wieder.

1 „Gefällt mir“

Ich denke nicht, dass dein Problem spezifisch für dieses Plugin ist. Du kannst in deiner app.yml keine Tabs verwenden. Verwende Leerzeichen.

2 „Gefällt mir“

Alles klar, entschuldige. Ich habe die neueste Zeile des Plugins kopiert und eingefügt und die git clone-URL geändert. Jetzt funktioniert es, danke :slight_smile:

2 „Gefällt mir“