Category Archives: ceph

Installing ceph with ceph-deploy

A ceph-deploy package is created for Ubuntu raring and installed with dpkg -i ceph-deploy_0.0.1-1_all.deb A ssh key is generated without a password and copied over to the root .ssh/authorized_keys file of each host on which ceph-deploy will act: # ssh-keygen … Continue reading

Posted in Raring, Ubuntu, ceph | 2 Comments

ceph internals : buffer lists

The ceph buffers are used to process data in memory. For instance, when a FileStore handles an OP_WRITE transaction it writes a list of buffers to disk. +———+ | +—–+ | list ptr | | | | +———-+ +—–+ | … Continue reading

Posted in ceph | Leave a comment

Chaining extended attributes in ceph

Ceph uses extended file attributes to store file meta data. It is a list of key / value pairs. Some file systems implementations do not allow to store more than 2048 characters in the value associated with a key. To … Continue reading

Posted in ceph | Leave a comment

unit testing ceph : the Throttle.cc example

The throttle implementation for ceph can be unit tested using threads when it needs to block. The gtest framework produces coverage information to lcov showing that 100% of the lines of code are covered.

Posted in ceph | Leave a comment

ceph code coverage (part 2/2)

WARNING: UPDATE IN PROGRESS When running ceph integration tests with teuthology, code coverage reports shows which lines of code were involved. Adding coverage: true to the integration task and using code compiled for code coverage instrumentation with flavor: gcov collects … Continue reading

Posted in Essex, Folsom, ceph, openstack | Leave a comment

ceph code coverage (part 1/2)

The ceph sources are compiled with code coverage enabled root@ceph:/srv/ceph# ./configure –with-debug CFLAGS=’-g’ CXXFLAGS=’-g’ \ –enable-coverage \ –disable-silent-rules and the tests are run cd src ; make check-coverage to create the HTML report which shows where tests could improve code … Continue reading

Posted in ceph | Leave a comment