Self healing of missing accounts/containers

Bug #1174864 reported by David Hadas
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
OpenStack Object Storage (swift)
Expired
Undecided
Unassigned

Bug Description

Self healing is not implemented when an account is "lost".
Same for containers.

If an account is missing from the system but we have a container indicating that the account exists - the container updater would try to update the account with PUT /missingaccount/existingcontainer which fails on 404
Same for containers.

Suggested behavior for accounts:
1. Restore the account
2. Mark the account as restored while marking its ACLs to be restrictive - no one can list/read/write containers in this account until the next PUT or POST on the account setting proper ACLs.

Suggested behavior for containers:
1. Restore the container
2. Mark the container as restored while marking its ACLs to be restrictive - no one can list/read/write objects in this container until the next PUT or POST on the container setting proper ACLs.

Changed in swift:
assignee: nobody → David Hadas (david-hadas)
description: updated
summary: - missing accounts not created
+ Self healing of missing accounts/containers
Changed in swift:
assignee: David Hadas (david-hadas) → nobody
Revision history for this message
Samuel Merritt (torgomatic) wrote :

Under what circumstances are there orphaned containers? I'd be more interested in preventing that from happening than in making up some resurrected account of dubious accuracy.

Revision history for this message
Matthew Oliver (matt-0) wrote :

I agree with Sam, what is the definition of "lost" here, to be lost _all_ replicated versions of it have to be misplaced before a replicator cycle has run... if there are good failure domains etc, then this is something swift tries really hard to avoid... its kind of the point of swift.

So in a way, replication and the replicator does in fact make swift self healing.

Unless lost can be defined, I'm thinking this bug should change to won't fix or invalid.

Revision history for this message
Matthew Oliver (matt-0) wrote :

Marking as incomplete, until "lost" is defined.

Changed in swift:
status: New → Incomplete
Revision history for this message
Launchpad Janitor (janitor) wrote :

[Expired for OpenStack Object Storage (swift) because there has been no activity for 60 days.]

Changed in swift:
status: Incomplete → Expired
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.