Re: How can I get tail information a parted rados object

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

 



Hi Rob.

I think I wasn't clear enough with the first mail.
I'm having issues with the RGW. radosgw-admin or s3 can not access
some objects in the bucket. These objects are exist in the "RADOS" and
I can export with "rados get -p $pooll $object".
But the problem ise 4M chunk and multiparts. I have to find all the
parts with the part number order and after export I need to bring all
the parts together.
I've write a code with golang and I took all the partition info from
rados attr "user.rgw.manifest" and some objects only have
"user.rgw.olh.info".
I can now decode these attrs with "ceph-dencoder  RGWOLHInfo  and
RGWObjManifest decode dump_json" and I can find the parts and order.

Now I can export anything in the rados.

I was looking a tool to do that for me but I think its not exist.
Because I couldn't find.
RGW has toooooooo many problems and Sharding issues with Multisite
setup! And the worst part is somehow RGW losing object records... It
could be Sharding, Multisite, Versioning or Lifecycle. I don't know
exactly why! But TO rescue these objects in the rados and write them
again with S3 I had to write special program for it.
I know ceph-dencoder for Developers but the documentation is poor for
RGW and I had to read code, understand, and write a new program
because I need a BRIDGE between RGW and the RADOS.

I think I should publish the program for the community. It can
"Directly rados download and upload to RGW or local" It can upload
1.5M object in 30 minute. (small files)
But  the program is designed for one job. It needs edit for public use.
If there is a option or program please let me know.
If there is no option and if it is a good idea to make one for the
community. I'm ready to publish and work on it.


Now I have Multisite sync error and I don't use these buckets anymore.
I changed the master zone and remove the secondary zone from
zonegroup. I dont have multisite anymore.
After that I migrate buckets to new one and I want to trim the sync
errors but "radosgw-admin error trim" not working.
What Should I do? I Really Really help on this! I'm using 14.2.16 nautilus.


Do you know anything about deleting old periods? What will the effect
on a cluster?



Rob Haverkamp <r.haverkamp@xxxxxxxx>, 3 May 2021 Pzt, 15:15 tarihinde
şunu yazdı:
>
> Hi Morphin,
>
> There are multiple ways you can do this.
>
> run a radosgw-admin bucket radoslist --bucket <name of the bucket> write that output to a file, grep all entries containing the object name ' im034113.jpg', sort that list and download them.
> run a radosgw-admin object stat --bucket <bucket name> --object <object name> this will output a json document. With the information in the manifest key you can find out what rados objects belong to the RGW object.
>
>
>
> Kind regards,
>
> Rob
> https://www.42on.com/
>
>
> ________________________________
> From: by morphin <morphinwithyou@xxxxxxxxx>
> Sent: Saturday, May 1, 2021 11:09 PM
> To: Ceph Users <ceph-users@xxxxxxx>
> Subject:  How can I get tail information a parted rados object
>
> Hello.
>
> I'm trying to export objects from rados with rados get. Some objects
> bigger than 4M and they have tails. Is there any easy way to get tail
> information an object?
>
> For example this is an object:
> - c106b26b.3_Img/2017/12/im034113.jpg
> These are the objet parts:
> - c106b26b.3__multipart_Img/2017/12/im034113.jpg.2~fjrC5r_KCWMBat_4bFVtmBv9pxcVL-9.1
> - c106b26b.3__shadow_Img/2017/12/im034113.jpg.2~fjrC5r_KCWMBat_4bFVtmBv9pxcVL-9.1_1
> - c106b26b.3__shadow_Img/2017/12/im034113.jpg.2~fjrC5r_KCWMBat_4bFVtmBv9pxcVL-9.1_2
> - c106b26b.3__multipart_Img/2017/12/im034113.jpg.2~fjrC5r_KCWMBat_4bFVtmBv9pxcVL-9.2
>
> As you can see the object has 2 multipart and 2 shadow object.
> This jpg only works when I get all the parts and make it one with the order.
> order: "cat 9.1 9.1_1 9.1_2 9.2 > im034113.jpg"
>
> I'm trying to write a code and the code gonna read objects from a list
> and find all the parts, bring it together with the order...  But I
> couldn't find a good way to get part information.
>
> I followed the link https://www.programmersought.com/article/31497869978/
> and I get the object manifest with getxattr and decode it with
> "ceph-dencoder type RGWBucketEnt  decode dump_json"
> But in the manifest I can not find a path to code it. It's not useful.
> Is there any different place that I can take the part information an
> object?
>
> Or better! Is there any tool to export an object with its tails?
>
> btw: these objects created by RGW using s3. RGW can not access these
> files. Because of that I'm trying to export it from rados and send it
> to different RGW.
_______________________________________________
ceph-users mailing list -- ceph-users@xxxxxxx
To unsubscribe send an email to ceph-users-leave@xxxxxxx




[Index of Archives]     [Information on CEPH]     [Linux Filesystem Development]     [Ceph Development]     [Ceph Large]     [Ceph Dev]     [Linux USB Development]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [xfs]


  Powered by Linux