]> git.apps.os.sepia.ceph.com Git - ceph.git/commit
conf: add observer framework
authorColin Patrick McCabe <cmccabe@alumni.cmu.edu>
Tue, 19 Apr 2011 21:24:41 +0000 (14:24 -0700)
committerColin Patrick McCabe <cmccabe@alumni.cmu.edu>
Wed, 20 Apr 2011 00:28:00 +0000 (17:28 -0700)
commit6e49c06ca90dc7aa696cbe298b4362dd4cb124ba
tree9136eba2cbf23c22df5633a05c8489c0e5d0d72d
parent433deec0c97369b0693f907c509fbf1df449360a
conf: add observer framework

Objects can now register as configuration observers interested in a
subset of the configuration keys. The observers will be told exactly
which keys have changed.

The first user is dout, which now no longer needs the infamous SIGHUP
hack to know when to reopen the config file.

librados: Remove rados_reopen_log, which was basically a means for the
library user to trigger the SIGHUP behavior.

Changes are accumulated and applied all at once by apply_changes. This
function is called as part of common_init, and after every call to
injectargs.

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
20 files changed:
src/common/DoutStreambuf.cc
src/common/DoutStreambuf.h
src/common/ceph_argparse.cc
src/common/ceph_argparse.h
src/common/common_init.cc
src/common/config.cc
src/common/config.h
src/common/signal.cc
src/include/rados/librados.h
src/include/rados/librados.hpp
src/librados.cc
src/mds/MDS.cc
src/mon/Monitor.cc
src/osd/OSD.cc
src/pybind/rados.py
src/test/TestDoutStreambuf.cc
src/testlibrbd.c
src/testlibrbdpp.cc
src/testrados.c
src/testradospp.cc