mirror of https://github.com/pixelfed/pixelfed
renovate/pestphp-pest-5.x-lockfile
shleeable-patch-1
l10n_crowdin_translations
renovate/phpstan-packages
renovate/lock-file-maintenance
renovate/guzzlehttp-guzzle-8.x-lockfile
renovate/github-actions
staging
dev
fix/timeline-feed-state-header
fix/username-case-insensitive
configcache-v2.1-api
fix/dm-remote-delete-media-leak
fix/hashtags-outside-bmp
copilot/review-old-issues
groups
vue3
v0.1.9
v0.10.0
v0.10.1
v0.10.10
v0.10.2
v0.10.3
v0.10.4
v0.10.5
v0.10.6
v0.10.7
v0.10.8
v0.10.9
v0.11.0
v0.11.1
v0.11.10
v0.11.11
v0.11.12
v0.11.13
v0.11.2
v0.11.3
v0.11.4
v0.11.5
v0.11.6
v0.11.7
v0.11.8
v0.11.9
v0.12.0
v0.12.1
v0.12.10
v0.12.11
v0.12.12
v0.12.2
v0.12.3
v0.12.4
v0.12.5
v0.12.6
v0.12.7
v0.12.8
v0.12.9
v0.13.0
v0.14.0
v0.14.1
v0.14.2
v0.14.3
v0.14.4
v0.14.5-rc
v0.14.5-rc1
v0.15.0
v0.15.0-rc1
v0.15.1
v0.15.2
v0.5.9
v0.6.0
v0.6.1
v0.7.6
v0.8.0
v0.8.5
v0.8.6
v0.9.0
v0.9.4
v0.9.5
v0.9.6
${ noResults }
1 Commits (dev)
| Author | SHA1 | Message | Date |
|---|---|---|---|
|
|
e5e21833fc |
Rebuild timeline caches atomically
warmCache deleted the live sorted set and then re-added members one by one, so a concurrent reader during a forced rebuild saw an empty or partial feed, and an empty read could trip the home cold-boot path. Build into a temporary key and rename it over the live key so readers always see either the previous set or the fully rebuilt one. When no eligible posts remain the live key is cleared. |
2 weeks ago |