Topic filter does not return all posts matching the users filter

I tried to find a topic today but failed to find it with the topic filter. I love that I can search for topics based on participants. I often remember these better than keywords for searching.

Today I searched for topics where David and I had participated. The topic I was looking for is Do not show topics and PMs to admins unless they are participants.
When it didn’t show up in the filtered topic list https://meta.discourse.org/filter?q=users%3Adavid%2Bmoin I thought maybe I was wrong about David being the one I talked to. But after I found the topic in search I saw that I was right.
So I thought maybe there was a reason why it was hidden when I used the filter. So I added the category to the topic filter https://meta.discourse.org/filter?q=users%3Adavid%2Bmoin%20category%3Afeature%20 and there it is:


But once I remove the category filter, the topic does not appear in the filtered list:

The topic with the last activity in February 2025 should be between the topics from September 2025 and January 2025. The gap is where “load more” happened. So it feels like something doesn’t work correctly when there are more than 30 topics matching the filter.

While I was writing this bug report, I found out that changing the order of the usernames in the filter seems to matter.
While the first 30 results seem to be the same no matter which order I enter the names, the topics loaded on “load-more” differ. I highlighted the first line that is different. While you can notice a gap between September and January on the left, the result on the right is even more surprising." Load more" returns topics with an activity date which is more recent than the one above.

david+Moin[1] Title Bumped_at Moin+david[2] Title Bumped_at
Locations Plugin :earth_africa: January 4, 2026 Locations Plugin :earth_africa: January 4, 2026
Daily Summary Feedback January 4, 2026 Daily Summary Feedback January 4, 2026
Topic List Previews (TLP) January 3, 2026 Topic List Previews (TLP) January 3, 2026
Topic List Thumbnails January 2, 2026 Topic List Thumbnails January 2, 2026
User Card Directory December 30, 2025 User Card Directory December 30, 2025
/about listing of Admins vs Moderators is confusing December 29, 2025 /about listing of Admins vs Moderators is confusing December 29, 2025
Winter snow theme component :snowflake: December 23, 2025 Winter snow theme component :snowflake: December 23, 2025
Clickable Topic December 19, 2025 Clickable Topic December 19, 2025
Topic Cards December 18, 2025 Topic Cards December 18, 2025
Discourse Who’s Online December 16, 2025 Discourse Who’s Online December 16, 2025
Toggling the \AI search discoveries\ preference doesn’t work December 12, 2025 Toggling the \AI search discoveries\ preference doesn’t work December 12, 2025
ActivityPub Plugin December 10, 2025 ActivityPub Plugin December 10, 2025
Discourse Advertising Plugin (Ads) December 6, 2025 Discourse Advertising Plugin (Ads) December 6, 2025
Discourse AI December 4, 2025 Discourse AI December 4, 2025
Link for old browsers doesn’t work on old browsers December 1, 2025 Link for old browsers doesn’t work on old browsers December 1, 2025
Sticky header gone November 28, 2025 Sticky header gone November 28, 2025
Unformatted Code Detector November 21, 2025 Unformatted Code Detector November 21, 2025
How to reliably & programmatically get the latest version number of Discourse? November 14, 2025 How to reliably & programmatically get the latest version number of Discourse? November 14, 2025
Discourse User Notes November 14, 2025 Discourse User Notes November 14, 2025
Discourse Topic Voting November 13, 2025 Discourse Topic Voting November 13, 2025
Discourse Solved November 8, 2025 Discourse Solved November 8, 2025
Bundling more popular plugins with Discourse core November 4, 2025 Bundling more popular plugins with Discourse core November 4, 2025
Discourse Category Headers theme component November 1, 2025 Discourse Category Headers theme component November 1, 2025
Missing PluginOutlet for second-factor.gjs component and for second-factor-add-totp.gjs October 24, 2025 Missing PluginOutlet for second-factor.gjs component and for second-factor-add-totp.gjs October 24, 2025
Latest topics missing from category view October 15, 2025 Latest topics missing from category view October 15, 2025
Discourse Category Lockdown October 15, 2025 Discourse Category Lockdown October 15, 2025
Multilingual Plugin :globe_with_meridians: October 7, 2025 Multilingual Plugin :globe_with_meridians: October 7, 2025
Post Badges September 19, 2025 Post Badges September 19, 2025
Discourse Affiliate September 18, 2025 Discourse Affiliate September 18, 2025
Developing Discourse on GitHub Codespaces September 9, 2025 Developing Discourse on GitHub Codespaces September 9, 2025
Login and Logout Errors from Cache Settings Conflict with Cloudflare January 7, 2025 Discourse Category Headers theme component November 1, 2025
Selectable avatars upload broken (Missing required UppyUpload config: id) October 28, 2024 Missing PluginOutlet for second-factor.gjs component and for second-factor-add-totp.gjs October 24, 2025
Can the Unformatted Code Detector be disabled per user? July 31, 2024 Discourse Data Explorer October 22, 2025
Inconsistency in plural definition July 29, 2024 Latest topics missing from category view October 15, 2025
New topic map causing infinite-loading loop July 26, 2024 Discourse Category Lockdown October 15, 2025
Issue with pluralized (count) translation override July 22, 2024 Multilingual Plugin :globe_with_meridians: October 7, 2025
Bad MF translation string in hebrew client locale causes fatal site error July 22, 2024 Creating a component to show last-chance warning when replying to old topics October 6, 2025
TOC missing after using browsers back button January 25, 2024 Post Badges September 19, 2025
Title of /tag/xxx December 4, 2023 Discourse Affiliate September 18, 2025
Browser Back -function occasionally broken on Android November 27, 2023 Discourse Docs September 16, 2025
Tag information issue November 20, 2023 Developing Discourse on GitHub Codespaces September 9, 2025
Topic preview of pinned topic disappears November 7, 2023 Install Discourse for development using Docker September 8, 2025
Please don’t double link urls if one pastes over a URL in markdown December 3, 2021 Add tags with capital letters September 7, 2025
Discourse Templates September 2, 2025
Advanced Header Search August 27, 2025
Third-party plugin repository hijacked August 19, 2025
New header dropdown / notification menu styles August 13, 2025
Text color field for categories missing after update August 8, 2025
Custom Homepage for Groups August 6, 2025
Option to hide IP addresses from moderators August 6, 2025
Inconsistent behavior with chat max direct message users setting August 5, 2025
Custom Header Links (icons) August 4, 2025
What are good plugins or theme components for a forum emphasizing pictures? August 4, 2025
Downloading local copies of images should not change text in code blocks August 2, 2025
EmojiPicker missing in mobile chat August 1, 2025
最新版更新出错 July 28, 2025
\Thanks for Contributing\ Popup in Posts Appearing Even After Limit Passed? July 17, 2025
New Discourse Lightbox Enabled on Meta - now disabled July 12, 2025
Announcing: AI Web Artifacts June 27, 2025
Discourse-tag-sidebars and deprecated inline script tags June 20, 2025

  1. https://meta.discourse.org/filter?q=users%3Adavid%2BMoin ↩︎

  2. https://meta.discourse.org/filter?q=users%3AMoin%2Bdavid%20 ↩︎

4 Likes

Thanks for the report!

This is because there is currently a bug where we unencoded query parameters when we construct the load more URL. This caused problems downstream where only the first username in the users: filter was being used to filter for topics when loading more.

This has been fixed in

2 Likes

Wouldn’t that always result in more results compared to searching for topics in which both users participated? So when I searched for topics where “david+moin” participated and load more would load topics where david participated, shouldn’t the topic I was searching for still be in the list of returned topics because david had posted in it?

1 Like

OK I see what is happening. The users:moin+david query parameter becomes users:moin david when loading more. It is searching for posts containing the david term scoped to topics that moin posted in.

My current fix will address this problem.

4 Likes

Works great. Thank you

2 Likes