@@ -194,7 +194,7 @@ func DeleteIssue(ctx context.Context, doer *user_model.User, gitRepo *git.Reposi
194194 return err
195195 }
196196
197- attachment_service .CleanAttachments (ctx , toBeCleanedAttachments )
197+ attachment_service .AddAttachmentsToCleanQueue (ctx , toBeCleanedAttachments )
198198
199199 // delete pull request related git data
200200 if issue .IsPull && gitRepo != nil {
@@ -259,36 +259,36 @@ func GetRefEndNamesAndURLs(issues []*issues_model.Issue, repoLink string) (map[i
259259
260260// deleteIssue deletes the issue
261261func deleteIssue (ctx context.Context , issue * issues_model.Issue , deleteAttachments bool ) ([]* repo_model.Attachment , error ) {
262- toBeCleanedAttachments := make ( []* repo_model.Attachment , 0 )
263- if err := db . WithTx ( ctx , func ( ctx context. Context ) error {
262+ return db . WithTx2 ( ctx , func ( ctx context. Context ) ( []* repo_model.Attachment , error ) {
263+ toBeCleanedAttachments := make ([] * repo_model. Attachment , 0 )
264264 if _ , err := db .GetEngine (ctx ).ID (issue .ID ).NoAutoCondition ().Delete (issue ); err != nil {
265- return err
265+ return nil , err
266266 }
267267
268268 // update the total issue numbers
269269 if err := repo_model .UpdateRepoIssueNumbers (ctx , issue .RepoID , issue .IsPull , false ); err != nil {
270- return err
270+ return nil , err
271271 }
272272 // if the issue is closed, update the closed issue numbers
273273 if issue .IsClosed {
274274 if err := repo_model .UpdateRepoIssueNumbers (ctx , issue .RepoID , issue .IsPull , true ); err != nil {
275- return err
275+ return nil , err
276276 }
277277 }
278278
279279 if err := issues_model .UpdateMilestoneCounters (ctx , issue .MilestoneID ); err != nil {
280- return fmt .Errorf ("error updating counters for milestone id %d: %w" ,
280+ return nil , fmt .Errorf ("error updating counters for milestone id %d: %w" ,
281281 issue .MilestoneID , err )
282282 }
283283
284284 if err := activities_model .DeleteIssueActions (ctx , issue .RepoID , issue .ID , issue .Index ); err != nil {
285- return err
285+ return nil , err
286286 }
287287
288288 if deleteAttachments {
289289 // find attachments related to this issue and remove them
290290 if err := issue .LoadAttachments (ctx ); err != nil {
291- return err
291+ return nil , err
292292 }
293293 }
294294
@@ -311,32 +311,29 @@ func deleteIssue(ctx context.Context, issue *issues_model.Issue, deleteAttachmen
311311 & issues_model.Comment {DependentIssueID : issue .ID },
312312 & issues_model.IssuePin {IssueID : issue .ID },
313313 ); err != nil {
314- return err
314+ return nil , err
315315 }
316316
317317 for _ , comment := range issue .Comments {
318318 _ , err := deleteComment (ctx , comment , deleteAttachments )
319319 if err != nil {
320- return fmt .Errorf ("deleteComment [comment_id: %d]: %w" , comment .ID , err )
320+ return nil , fmt .Errorf ("deleteComment [comment_id: %d]: %w" , comment .ID , err )
321321 }
322322 toBeCleanedAttachments = append (toBeCleanedAttachments , comment .Attachments ... )
323323 }
324324
325325 if deleteAttachments {
326326 // delete issue attachments
327327 if err := issue .LoadAttachments (ctx ); err != nil {
328- return err
328+ return nil , err
329329 }
330330 if _ , err := repo_model .MarkAttachmentsDeleted (ctx , issue .Attachments ); err != nil {
331- return err
331+ return nil , err
332332 }
333333 toBeCleanedAttachments = append (toBeCleanedAttachments , issue .Attachments ... )
334334 }
335- return nil
336- }); err != nil {
337- return nil , err
338- }
339- return toBeCleanedAttachments , nil
335+ return toBeCleanedAttachments , nil
336+ })
340337}
341338
342339// DeleteOrphanedIssues delete issues without a repo
@@ -358,7 +355,7 @@ func DeleteOrphanedIssues(ctx context.Context) error {
358355 }); err != nil {
359356 return err
360357 }
361- attachment_service .CleanAttachments (ctx , toBeCleanedAttachments )
358+ attachment_service .AddAttachmentsToCleanQueue (ctx , toBeCleanedAttachments )
362359 return nil
363360}
364361
0 commit comments