Firefly 0.80 rados bench cleanup / object removal broken?

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

 



Hi Matt,
The problem you came across was due to a change made in the rados bench along with the Firefly release, it aimed to solve the problem that if there were multiple rados instance (for writing), we want to do a rados read for each run as well.

Unfortunately, that change broke your user case, here is my suggestion to solve your problem:
1. Remove the pre-defined metadata file by
    $ rados -p {pool_name} rm benchmark_last_metadata
2. Cleanup by prefix
    $ sudo rados -p {pool_name} cleanup --prefix bench

Moving forward, you can use the new parameter ?--run-name? to name each turn of run and cleanup on that basis, if you still want to do a slow liner search to cleanup, be sure removing the benchmark_last_metadata object before you kick off running the cleanup.

Let me know if that helps.

Thanks,
Guang

On May 20, 2014, at 6:45 AM, Matt.Latter at hgst.com wrote:

> 
> I was experimenting previously with 0.72 , and could easily cleanup pool
> objects from several previous rados bench (write) jobs with :
> 
> rados -p <poolname> cleanup bench      (would remove all objects starting
> with "bench")
> 
> I quickly realised when I moved to 0.80 that my script was broken and
> theoretically I now need:
> 
> rados -p <poolname> cleanup --prefix benchmark_data
> 
> But this only works sometimes, and sometimes partially. Issuing the command
> line twice seems to help a bit !  Also if I do "rados -p <poolname> ls"
> before hand, it seems to increase my chances of success, but often I am
> still left with benchmark objects undeleted. I also tried using the
> --run-name option to no avail.
> 
> The story gets more bizarre now I have set up a "hot SSD" cachepool in
> front of the backing OSD (SATA) pool. Objects won't delete from either pool
> with rados cleanup  I tried
> 
> "rados -p <cachepoolname> cache-flush-evict-all"
> 
> which worked (rados df shows all objects now on the backing pool). Then
> bizarrely trying cleanup from the backing OSD pool just appears to copy
> them back into the cachepool, and they remain on the backing pool.
> 
> I can list individual object names with
> 
> rados -p <poolname> ls
> 
> but rados rm <objectname> will not remove individual objects stating "file
> or directory not found".
> 
> Are others seeing these things and any ways to work around or am I doing
> something wrong?  Are these commands now deprecated in which case what
> should I use?
> 
> Ubuntu 12.04, Kernel 3.14.0
> 
> Matt Latter
> 
> _______________________________________________
> ceph-users mailing list
> ceph-users at lists.ceph.com
> http://lists.ceph.com/listinfo.cgi/ceph-users-ceph.com



[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