Project

General

Profile

Actions

Bug #6725

closed

objecter: kick_requests() resends ops that should be paused

Added by Josh Durgin over 10 years ago. Updated over 10 years ago.

Status:
Resolved
Priority:
High
Assignee:
Category:
Objecter
Target version:
-
% Done:

0%

Source:
Development
Tags:
Backport:
dumpling, emperor
Regression:
Severity:
3 - minor
Reviewed:
Affected Versions:
ceph-qa-suite:
Pull request ID:
Crash signature (v1):
Crash signature (v2):

Description

Operations may be paused because the osd map has a flag manually set, or the cluster is too full. In either case, operations should not be sent if they are meant to be paused by the client.

The objecter handles this correctly in _op_submit() and handle_osd_map(), but always resends requests to a particular osd when the connection is reset. This may result in writes getting -ENOSPC while the full flag is set, instead of blocking as they were meant to. This will not be handled well by rbd if caching is not enabled.


Related issues 1 (0 open1 closed)

Related to Ceph - Bug #6938: client full handling races with OSDs having newer mapsResolvedJosh Durgin12/04/2013

Actions
Actions

Also available in: Atom PDF