Project

General

Profile

Actions

Bug #54435

closed

bucket index completions may not retry after reshard

Added by Casey Bodley about 2 years ago. Updated 5 months ago.

Status:
Resolved
Priority:
Normal
Assignee:
Target version:
-
% Done:

100%

Source:
Development
Tags:
reshard backport_processed
Backport:
octopus pacific quincy
Regression:
No
Severity:
3 - minor
Reviewed:
Affected Versions:
ceph-qa-suite:
Pull request ID:
Crash signature (v1):
Crash signature (v2):

Description

the RGWIndexCompletionThread stores a list of index completion ops that failed with ERR_BUSY_RESHARDING, for synchronous retry under guard_reshard() in RGWIndexCompletionThread::process()

however, after process() finishes it's work, it goes to sleep on its condition variable without checking for more completions. so it's easy for RGWIndexCompletionThread to miss signals on this condition variable, and not wake up even though there's still work to do. once completions are stalled this way, nothing will wake up the thread again until new completions race with another reshard


Related issues 3 (0 open3 closed)

Copied to rgw - Backport #54496: quincy: bucket index completions may not retry after reshardResolvedCory SnyderActions
Copied to rgw - Backport #54497: pacific: bucket index completions may not retry after reshardResolvedCory SnyderActions
Copied to rgw - Backport #54498: octopus: bucket index completions may not retry after reshardRejectedActions
Actions

Also available in: Atom PDF