Re: RADOSGW internals ?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, Aug 2, 2012 at 8:22 AM, Sylvain Munaut
<s.munaut@xxxxxxxxxxxxxxxxxxxx> wrote:
> Hi,
>
>
>> Will need logs in order to say what happened exactly, if that's of any
>> interest. You removed some crucial data for the full operation of that
>> bucket. It may also be that some of the data was still cached so that
>> you were able to complete some operations but not the others.
>
> In this particular case, some rados object were lost, in particular
> the  .dir.NNNN.N file that described the bucket.
> I tried recreating an empty file in its place but that doesn't seem to
> be enough.

No, the bucket index needs to be initialized.

>
> As I said, they're test scenarios on test data. I expect this case to
> happen only on bucket that we mapped on low replication pools (size=1
> or 2) and I don't really care if even the entire bucket is lost
> (they're used for temporary data transfer between services), but I
> need to be able to return to a consistent state.
> Because in this case I'm stuck ( can't call create bucket again, it
> thinks it's done already. can't call delete on the bucket because it
> thinks it doesn't exist ... ).
>
> That's why I needed to know where every trace of a bucket can be so I
> can go and wipe it manually to recreate the bucket from scratch.
>
> The loss of rados objects related to S3 objects seems easier to fix:
> just rm all rados object for it (seems there can be several with
> special prefixes) and then remove it from the entries in the
> .dir.NNNN.N object. So it should be fairly easy to write a "fix"
> utility that just rescans all objects in a bucket and deletes the
> inconsistent ones.
>
>
>> the users bucket index itself is in .users.uid, where it is kept under
>> an object named <uid>.buckets.
>
> Ah yes, I see. Clearing it from there works.

One final bit of info that references the bucket is on the user
buckets index. You can try running radosgw-admin bucket unlink
--bucket=<bucket> --uid=<uid> if you need to remove that ref.

Yehuda
--
To unsubscribe from this list: send the line "unsubscribe ceph-devel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [CEPH Users]     [Ceph Large]     [Information on CEPH]     [Linux BTRFS]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]
  Powered by Linux