[monitor] leveldb compact problem

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

 



Hi ,cephers,

Recently I have found that my monitor store is getting larger and
larger to be 60GB size.

After I send command "compactrange(NULL, NULL)", the size of the store
db is only 100MB.

I  reviewed the ceph code ,and find that ceph monitor write keys
increasing one at a time. After increasing 750 keys, it reclaims 250
older keys and send a compactrange(from, to) command asynchronously.

In my opinion, the compact sometimes do not take effects when at the
same getting a key with iterator in flight.

 In ceph monitor code ,when it get one key, it use db->NewIterator ,
iter->seek(key) method, not db->get(key) function. I can not
understand why not using db->get(key), it is simple and easy to
understand.

I tried to replace db->NewIterator with db->get(key) but sometimes I
got a deleted  value. It's just surprising!

Can anyone explain the different between db->NewIterator and
db->get(key) when getting a key value?
--
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