If it's a test cluster, you could try:
root@ceph01:/# radosgw-admin bucket check -h |grep -A1 check-objects
--check-objects bucket check: rebuilds bucket index according to
actual objects state
On Wed, Feb 22, 2023, at 02:22, Robert Sander wrote:
> On 21.02.23 22:52, Richard Bade wrote:
>
>> A colleague and I ran into this a few weeks ago. The way we managed to
>> get access back to delete the bucket properly (using radosgw-admin
>> bucket rm) was to reshard the bucket.
>
>> This created a new bucket index and therefore it was then possible to delete it.
>> If you are looking to get access back to the objects, then as Eric
>> said there's no way to get those indexes back but the objects will
>> still be there in the pool.
>
> Thanks for the answers so far.
>
> The issue we faced was a corrupt bucket index object.
>
> We thought about strategies to repair that but found none.
>
> I tried different things on a test cluster in a test bucket, one of them
> was "bi purge". And then I thought: Why is there such an operation when
> there is no way to get the index back and a working bucket?
>
> Resharding after a "bi prune" seems to work but as a result the bucket
> is empty when listing via S3. A bucket remove is successful but leaves
> all the RADOS objects in the index and data pools.
>
> Why is there no operation to rebuild the index for a bucket based on the
> existing RADOS objects in the data pool?
>
> Regards
> --
> Robert Sander
> Heinlein Consulting GmbH
> Schwedter Str. 8/9b, 10119 Berlin
>
>
https://www.heinlein-support.de
>
> Tel: 030 / 405051-43
> Fax: 030 / 405051-19
>
> Amtsgericht Berlin-Charlottenburg - HRB 220009 B
> Geschäftsführer: Peer Heinlein - Sitz: Berlin
> _______________________________________________
> ceph-users mailing list -- ceph-users(a)ceph.io
> To unsubscribe send an email to ceph-users-leave(a)ceph.io