ceph/src
Josh Durgin 13ae13a906 librbd: add options to enable balanced or localized reads for snapshots
Since snapshots never change, it's safe to read from replicas for them.
A common use for this would be reading from a parent snapshot shared by
many clones.

Convert LibrbdWriteback and AioRead to use the ObjectOperation api
so we can set flags. Fortunately the external wrapper holds no data,
so its lifecycle doesn't need to be managed.

Include a simple workunit that sets the flags in various combinations
and looks for their presence in the logs from 'rbd export'.

Fixes: #3064
Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
2013-05-12 19:31:22 -07:00
..
auth fixed common typo in error messages 2013-05-07 11:55:46 +02:00
bash_completion
client client/SyntheticClient.cc: check return value of describe_layout() 2013-05-11 00:02:56 +02:00
cls cls/rbd/cls_rbd.cc: reduce scope of variable rc 2013-05-10 19:19:58 +02:00
common librbd: add options to enable balanced or localized reads for snapshots 2013-05-12 19:31:22 -07:00
crush crush/builder.c: reduce scope of oldsize in crush_add_bucket() 2013-05-10 19:19:58 +02:00
doc
global global/global_init.cc: reduce scope of ret in global_init_daemonize() 2013-05-10 19:19:58 +02:00
gtest
include librados: add per-ObjectOperation flags for balanced and localized reads 2013-05-12 19:31:22 -07:00
java libcephfs_jni.cc: reduce scope of ret variable 2013-05-10 19:19:59 +02:00
jobs
json_spirit
key_value_store kv_flat_btree_async.cc: fix resource leak 2013-05-11 00:02:56 +02:00
librados librados: add per-ObjectOperation flags for balanced and localized reads 2013-05-12 19:31:22 -07:00
librbd librbd: add options to enable balanced or localized reads for snapshots 2013-05-12 19:31:22 -07:00
libs3@9dc3a9c683
log
mds mds/CDir.cc: fix possible dereference after NULL check 2013-05-11 00:02:56 +02:00
messages osd: prioritize recovery for degraded pgs 2013-05-09 12:00:29 -07:00
mon mon: fix Formatter leak 2013-05-09 10:48:59 -07:00
mount
msg Messenger: add interface to get oldest queued message arrival time 2013-04-23 18:27:28 -07:00
objclass
objsync
ocf
os ObjectStore.cc: add missing break in switch 2013-05-11 00:02:54 +02:00
osd ReplicatedPG: send -EAGAIN for both balanced and localized reads 2013-05-12 19:31:22 -07:00
osdc Objecter, librados: use only ObjectOperation form of sparse_read internally 2013-05-12 19:31:22 -07:00
perfglue
pybind
rbd_fuse
rgw rgw/rgw_rest.cc: remove dead and unneeded code 2013-05-11 00:02:55 +02:00
script perf-watch.py: fix naming of a local variable 2013-04-25 15:54:34 +02:00
test test/omap_bench.cc: remove dead code 2013-05-11 00:02:54 +02:00
tools ceph-monstore-tool.cc: check if open() was successful 2013-05-11 00:02:56 +02:00
upstart
.gitignore Makefile,gitignore: ceph-monstore-tool, not ceph_monstore_tool 2013-05-01 15:43:22 -07:00
barclass.cc
btrfs_ioc_test.c
ceph_authtool.cc
ceph_common.sh init-ceph: do not stop start on first failure 2013-04-19 13:05:43 -07:00
ceph_conf.cc
ceph_fuse.cc
ceph_mds.cc
ceph_mon.cc mon: fix init sequence when not daemonizing 2013-05-03 16:20:26 -07:00
ceph_osd.cc
ceph_syn.cc
ceph_ver.c
ceph-clsinfo
ceph-coverage.in
ceph-create-keys ceph-create-keys: gracefully handle no data from admin socket 2013-05-08 14:54:33 -07:00
ceph-debugpack.in
ceph-disk ceph-disk: use separate lock files for prepare, activate 2013-05-06 12:12:04 -07:00
ceph-disk-activate
ceph-disk-prepare
ceph-disk-udev ceph-disk: OSD hotplug fixes for Centos 2013-04-22 22:30:39 -07:00
ceph-rbdnamer
ceph-run
ceph.conf.twoosds
cephfs.cc
check_version
cls_acl.cc
cls_crypto.cc
cmonctl
crushtool.cc
dupstore.cc
fetch_config
fooclass.cc
init-ceph.in init-ceph: fix osd_data location when checking df utilization 2013-05-08 14:35:54 -07:00
init-radosgw
init-radosgw.sysv init-radosgw.sysv: New radosgw init file for rpm based systems 2013-04-11 23:02:08 -07:00
libcephfs.cc
librados-config.cc
loadclass.sh
logrotate.conf
make_version
Makefile.am mon: fork early to avoid leveldb static env state 2013-05-03 11:29:24 -07:00
mkcephfs.in mkcephfs: give mon. key 'allow *' mon caps 2013-04-24 11:23:25 -07:00
mon_store_converter.cc
monmaptool.cc
mount.fuse.ceph
multi-dump.sh
osdmaptool.cc
ps-ceph.pl
psim.cc
push_to_kclient.pl
push_to_qemu.pl
rados_export.cc
rados_import.cc
rados_sync.cc rados_sync.cc: remove dead and not needed code 2013-05-11 00:02:55 +02:00
rados_sync.h
rados.cc rados.cc: fix leaking of Formatter* 2013-05-11 00:02:56 +02:00
radosacl.cc
rbd.cc rbd.cc: fix error handling 2013-05-11 00:02:55 +02:00
README
sample.ceph.conf
scratchtool.c
scratchtoolpp.cc
stop.sh
streamtest.cc
test_trans.cc
testclass.cc
testcrypto.cc
testkeys.cc
testmsgr.cc
TODO
unittest_bufferlist.sh
valgrind.supp
verify-mds-journal.sh
vstart.sh

Sage Weil <sage@newdream.net>
Ceph - scalable distributed storage system