fix: cascade purge attachments, comments, and votes when post/comment is deleted#1559
Closed
1795771535y-cell wants to merge 1 commit into
Closed
fix: cascade purge attachments, comments, and votes when post/comment is deleted#15591795771535y-cell wants to merge 1 commit into
1795771535y-cell wants to merge 1 commit into
Conversation
… is deleted When a post is set to PostDeleted via setPostResponse: - Soft-delete all associated comments (set deleted_at) - Delete all attachments (both post-level and comment-level) - Delete all post_votes When a comment is soft-deleted via deleteComment: - Delete comment-level attachments This prevents orphaned data from accumulating in the DB over time. Fixes getfider#1149
Author
|
Closing: no maintainer response after extended wait. Thanks for the opportunity. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Problem
When a post is deleted from the WebUI (via setPostResponse with PostDeleted status), associated data is left orphaned in the database:
This causes the database to grow over time with unlinked data. Affected tables: �ttachments, comments, post_votes, and indirectly �lobs.
Fixes #1149
Changes
post.go - setPostResponse
When status changes to PostDeleted, added cascade cleanup:
comment.go - deleteComment
When a comment is soft-deleted, also delete its associated attachments.
Testing