this post was submitted on 02 Dec 2025
4 points (100.0% liked)

Blind Main

586 readers
4 users here now

The main community at rblind.com, for discussion of all things blindness.

You can find the rules for this community, and all other communities we run, here: https://ourblind.com/comunity-guidelines/ Lemmy specifics: By participating on the rblind.com Lemmy server, you are able to participate on other communities not run, controlled, or hosted by us. When doing so, you are expected to abide by all of the rules of those communities, in edition to also following the rules linked above. Should the rules of another community conflict with our rules, so long as you are participating from the rblind.com website, our rules take priority. Should we receive complaints from other instances or communities that you are repeatedly, knowingly, and maliciously breaking there rules, we may take moderator action against you, even if your posts comply with all of the rblind.com rules linked above.

founded 2 years ago
MODERATORS
 

Good morning, everyone:

After months of troubleshooting various performance issues, we're pleased to announce that all of the outstanding back-end issues we are aware of are fixed. You should no longer receive errors on browsing user profiles, and posts should load much faster.

If you're not technical or interested in the gritty details, you can stop reading, now, in the knowledge that everything should now work as expected. For those of you who are technical, the problems were caused by two things. First, a lack of indexes on the users and posts tables. Analysing logs revealed some database queries were taking upwards of 8 seconds, especially when loading user profiles. If you've landed here from Google, because lemmy-ui is giving the unhelpful message "an error has occurred on the server" without actually showing you the error, and you're seeing enormous queries referencing dullbananas's or i_love_jesus in your logs, get into your postgresql database and add some indexes:

CREATE INDEX idx_post_aggregates_creator ON post_aggregates (creator_id);

CREATE INDEX idx_post_aggregates_scaled_rank ON post_aggregates (scaled_rank);

CREATE INDEX CONCURRENTLY IF NOT EXISTS idx_post_saved_person_post ON post_saved (person_id, post_id);

CREATE INDEX CONCURRENTLY IF NOT EXISTS idx_community_moderator_community_person ON community_moderator (community_id, person_id);

CREATE INDEX CONCURRENTLY IF NOT EXISTS idx_local_user_admin ON local_user (admin);

Second, be careful when increasing your shared memory size in docker. If you have shm_size specified as "48 gb" or "48gb" in your docker compose, your shared memory will not increase, and you won't get an error message of any kind. Shm_size must be "48g", no space, and no b. For some bonus fun, shm_size only updates if you recreate the entire docker image. Restarting is not enough! You should always use df on the docker you're working with, to insure /dev/shm is actually the size you think it is. Because it probably isn't!

Happy holidays, everyone. Here's to a 2026 of stability and new features.

top 1 comments
sorted by: hot top controversial new old
[–] fastfinge@rblind.com 2 points 2 weeks ago

Bonus third fix: If you notice that your pict-rs is using a lot of CPU or doing an unreasonable amount of IO, convert from using SLED (the default image repo) to using postgresql. The documentation for doing this is provided in the pict-rs crate.