]> git.apps.os.sepia.ceph.com Git - ceph.git/log
ceph.git
14 years agobuffer.h: push_back,push_front of an empty buffer pointer should be noop
Samuel Just [Mon, 7 Mar 2011 13:34:23 +0000 (05:34 -0800)]
buffer.h: push_back,push_front of an empty buffer pointer should be noop

Also adds an assert to copy to ensure that bufferlist iterator copy
completes.

Signed-off-by: Samuel Just <samuel.just@dreamhost.com>
14 years agolibceph: when calling common_init,set library flag
Colin Patrick McCabe [Mon, 7 Mar 2011 13:14:13 +0000 (05:14 -0800)]
libceph: when calling common_init,set library flag

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agoBump debian/changelog timestamp so it's greater than previous one.
Tommi Virtanen [Mon, 7 Mar 2011 19:34:41 +0000 (11:34 -0800)]
Bump debian/changelog timestamp so it's greater than previous one.

This shuts up lintian, and just makes sense.

Signed-off-by: Tommi Virtanen <tommi.virtanen@dreamhost.com>
14 years agoMake git ignore stamp files from debian build.
Tommi Virtanen [Mon, 7 Mar 2011 19:33:33 +0000 (11:33 -0800)]
Make git ignore stamp files from debian build.

Signed-off-by: Tommi Virtanen <tommi.virtanen@dreamhost.com>
14 years agoTypos.
Tommi Virtanen [Mon, 7 Mar 2011 19:06:30 +0000 (11:06 -0800)]
Typos.

Signed-off-by: Tommi Virtanen <tommi.virtanen@dreamhost.com>
14 years agodo_autogen: add -O2 when compiling for profiling
Colin Patrick McCabe [Mon, 7 Mar 2011 11:04:39 +0000 (03:04 -0800)]
do_autogen: add -O2 when compiling for profiling

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agoMerge branch 'mds'
Greg Farnum [Mon, 7 Mar 2011 17:19:18 +0000 (09:19 -0800)]
Merge branch 'mds'

14 years agoMerge branch 'stable'
Sage Weil [Sun, 6 Mar 2011 05:27:13 +0000 (21:27 -0800)]
Merge branch 'stable'

14 years agotests/cli/osdmaptool: default pg_num changed
Sage Weil [Sun, 6 Mar 2011 05:26:24 +0000 (21:26 -0800)]
tests/cli/osdmaptool: default pg_num changed

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
14 years agotestlibrbd: signed return types
Sage Weil [Sun, 6 Mar 2011 04:50:56 +0000 (20:50 -0800)]
testlibrbd: signed return types

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
14 years agofilestore: fix signedness so we can handle errors from safe_pread
Sage Weil [Sun, 6 Mar 2011 04:41:55 +0000 (20:41 -0800)]
filestore: fix signedness so we can handle errors from safe_pread

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
14 years agoversion: fix const warning
Sage Weil [Sun, 6 Mar 2011 04:40:55 +0000 (20:40 -0800)]
version: fix const warning

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
14 years agosafe_io: fix signed/unsigned comparisons
Sage Weil [Wed, 2 Mar 2011 13:29:01 +0000 (05:29 -0800)]
safe_io: fix signed/unsigned comparisons

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
14 years agotests/cli/osdmaptool: default pg_num changed
Sage Weil [Sun, 6 Mar 2011 04:39:24 +0000 (20:39 -0800)]
tests/cli/osdmaptool: default pg_num changed

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
14 years agocrush: remove misleading comment
Sage Weil [Sat, 5 Mar 2011 22:39:09 +0000 (14:39 -0800)]
crush: remove misleading comment

This is a stale comment from an earlier iteration of the implementation.

Reported-by: Alexander Lyakas <alex.bolshoy@gmail.com>
Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
14 years agocrush: fix memory leak
Sage Weil [Sat, 5 Mar 2011 22:38:24 +0000 (14:38 -0800)]
crush: fix memory leak

Reported-by: Alexander Lyakas <alex.bolshoy@gmail.com>
Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
14 years agoMerge branch 'next'
Sage Weil [Sat, 5 Mar 2011 23:27:25 +0000 (15:27 -0800)]
Merge branch 'next'

Conflicts:
configure.ac
debian/changelog
debian/control
src/Makefile.am
src/cmds.cc
src/cosd.cc
src/include/rados/librados.hpp
src/librados.cc
src/mds/Server.cc
src/osd/OSD.cc
src/testradospp.cc

14 years agov0.25 v0.25
Sage Weil [Fri, 4 Mar 2011 22:40:16 +0000 (14:40 -0800)]
v0.25

14 years agoBump librados soname to 2.
Sage Weil [Sat, 5 Mar 2011 21:29:20 +0000 (13:29 -0800)]
Bump librados soname to 2.

Update Debian packaging. For human-only mentions of librados,
use just "librados"

Signed-off-by: Tommi Virtanen <tommi.virtanen@dreamhost.com>
Conflicts:

debian/control
src/Makefile.am

14 years agoconfig: back to 6 pg bits for now
Sage Weil [Fri, 4 Mar 2011 23:24:46 +0000 (15:24 -0800)]
config: back to 6 pg bits for now

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
14 years agoMerge branch 'osd_recovery' into next
Sage Weil [Fri, 4 Mar 2011 22:19:40 +0000 (14:19 -0800)]
Merge branch 'osd_recovery' into next

14 years agorgw: put object request returns etag
Yehuda Sadeh [Fri, 4 Mar 2011 22:25:47 +0000 (14:25 -0800)]
rgw: put object request returns etag

14 years agotest_missing_unfound: asdf
Sage Weil [Fri, 4 Mar 2011 22:19:33 +0000 (14:19 -0800)]
test_missing_unfound: asdf

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
14 years agoosd: requeue pg for recovery if we may have found someting
Sage Weil [Fri, 4 Mar 2011 22:00:02 +0000 (14:00 -0800)]
osd: requeue pg for recovery if we may have found someting

If we get a peer log/missing and call search_for_missing, requeue the pg
for recovery so we can pull anything we may have just found.

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
14 years agoosd: include all up peers in might_have_unfound when desperate
Sage Weil [Fri, 4 Mar 2011 21:59:24 +0000 (13:59 -0800)]
osd: include all up peers in might_have_unfound when desperate

If our might_have_unfound calculation was off (it currently can be, see
#865) we could prematurely give up.  Try any up OSD at this stage just to
be sure.

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
14 years agoosd: recover_primary if recover_replicas starts no ops
Sage Weil [Fri, 4 Mar 2011 17:39:59 +0000 (09:39 -0800)]
osd: recover_primary if recover_replicas starts no ops

recover_replicas may fail to start anything if we see an unexpected error.
In that case, try recover_primary immediately instead of waiting for the
PG to (hopefully) get requeued for recovery later.

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
14 years agoosd: discover more missing if unfound and do_recovery can't start anything
Sage Weil [Fri, 4 Mar 2011 17:38:47 +0000 (09:38 -0800)]
osd: discover more missing if unfound and do_recovery can't start anything

If we couldn't start any recovery ops and things are still
unfound, see if we can discover more missing object locations.
It may be that our initial locations were bad and we errored
out while trying to pull.

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
14 years agodo_autogen.sh: add -P option
Colin Patrick McCabe [Fri, 4 Mar 2011 17:30:13 +0000 (09:30 -0800)]
do_autogen.sh: add -P option

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agoosd: debug the hell out of heartbeat thread
Sage Weil [Fri, 4 Mar 2011 23:46:08 +0000 (15:46 -0800)]
osd: debug the hell out of heartbeat thread

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
14 years agoFix test/signals.cc
Colin Patrick McCabe [Thu, 3 Mar 2011 22:54:15 +0000 (14:54 -0800)]
Fix test/signals.cc

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agolibrados: cosmetic header changes
Sage Weil [Fri, 4 Mar 2011 05:34:26 +0000 (21:34 -0800)]
librados: cosmetic header changes

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
14 years agolibrados, librbd: use separate IoCtxs for data and metadata
Josh Durgin [Thu, 3 Mar 2011 16:44:27 +0000 (08:44 -0800)]
librados, librbd: use separate IoCtxs for data and metadata

Adds deep copy method IoCtx::dup, so that the data and metadata
contexts can have different snap_seqs and snap contexts.

Also avoid calling Rados::shutdown explicitly, since the destructor
will do this, and it must run after the Image destructor.

Signed-off-by: Josh Durgin <josh.durgin@dreamhost.com>
14 years agolibrbd: fix error message and unnamed constant
Josh Durgin [Thu, 3 Mar 2011 16:42:34 +0000 (08:42 -0800)]
librbd: fix error message and unnamed constant

Signed-off-by: Josh Durgin <josh.durgin@dreamhost.com>
14 years agolibrbd: change RBD::open to take a reference to an Image instead of a pointer
Josh Durgin [Wed, 2 Mar 2011 18:11:55 +0000 (10:11 -0800)]
librbd: change RBD::open to take a reference to an Image instead of a pointer

This makes the API more consistent with the librados API.

Signed-off-by: Josh Durgin <josh.durgin@dreamhost.com>
14 years agolibrados: remove unused member of IoCtx
Josh Durgin [Wed, 2 Mar 2011 00:03:01 +0000 (16:03 -0800)]
librados: remove unused member of IoCtx

Signed-off-by: Josh Durgin <josh.durgin@dreamhost.com>
14 years agolibrados: IoCtx destructor should put reference only if initalized
Yehuda Sadeh [Tue, 1 Mar 2011 23:18:40 +0000 (15:18 -0800)]
librados: IoCtx destructor should put reference only if initalized

14 years agolibrados: can set up object locator
Yehuda Sadeh [Tue, 1 Mar 2011 22:20:11 +0000 (14:20 -0800)]
librados: can set up object locator

14 years agolibrados:rados_ioctx_stat -> rados_ioctx_pool_stat
Colin Patrick McCabe [Tue, 1 Mar 2011 14:49:34 +0000 (06:49 -0800)]
librados:rados_ioctx_stat -> rados_ioctx_pool_stat

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agoobject_locator: fix clear()
Yehuda Sadeh [Tue, 1 Mar 2011 21:52:43 +0000 (13:52 -0800)]
object_locator: fix clear()

14 years agolibrados: use atomic_t for reference count
Colin Patrick McCabe [Tue, 1 Mar 2011 14:05:41 +0000 (06:05 -0800)]
librados: use atomic_t for reference count

Use an use atomic_t for the reference count in IoCtxImpl.

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agolibrados: make IoCtxImpl a pointer in WatchContext
Josh Durgin [Tue, 1 Mar 2011 19:47:26 +0000 (11:47 -0800)]
librados: make IoCtxImpl a pointer in WatchContext

Adds get and put to IoCtxImpl for refcounting,
and uses them in WatchContext, which shouldn't
be creating a copy of the IoCtxImpl.

Signed-off-by: Josh Durgin <josh.durgin@dreamhost.com>
14 years agolibrados: decrement refcount of old io_ctx_impl in assignment operator
Josh Durgin [Tue, 1 Mar 2011 19:35:41 +0000 (11:35 -0800)]
librados: decrement refcount of old io_ctx_impl in assignment operator

Signed-off-by: Josh Durgin <josh.durgin@dreamhost.com>
14 years agolibrados: fix IoCtx::from_rados_ioctx_t
Colin Patrick McCabe [Tue, 1 Mar 2011 12:15:58 +0000 (04:15 -0800)]
librados: fix IoCtx::from_rados_ioctx_t

IoCtx::from_rados_ioctx_t creates an IoCtx out of a rados_ioctx_t.
However, this IoCtx must share ownership of the IoCtxImpl pointer with
the C API user who first called rados_ioctx_create. This must be done
via a reference count inside the IoCtxImpl.

Also add a copy constructor and assignment operator to class IoCtx,
since it's now cheap to have them.

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agoRename radios_ioctx_{open,close} to create/destroy
Colin Patrick McCabe [Tue, 1 Mar 2011 11:38:44 +0000 (03:38 -0800)]
Rename radios_ioctx_{open,close} to create/destroy

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agolibrados: remove IoCtx::close()
Colin Patrick McCabe [Tue, 1 Mar 2011 11:25:18 +0000 (03:25 -0800)]
librados: remove IoCtx::close()

We decided we don't want IoCtx::close(), since IoCtx::~IoCtx() exists.

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agoMake git ignore core files.
Tommi Virtanen [Tue, 1 Mar 2011 00:03:35 +0000 (16:03 -0800)]
Make git ignore core files.

14 years agoMake git ignore python generated files.
Tommi Virtanen [Tue, 1 Mar 2011 00:03:17 +0000 (16:03 -0800)]
Make git ignore python generated files.

14 years agolibrados: Crashed on shutdown if connect was never called.
Tommi Virtanen [Mon, 28 Feb 2011 21:04:00 +0000 (13:04 -0800)]
librados: Crashed on shutdown if connect was never called.

Add a trivial unit test to trigger this.

14 years agolibradoshpp: put ceph stuff in namespace librados
Colin Patrick McCabe [Mon, 28 Feb 2011 13:58:03 +0000 (05:58 -0800)]
libradoshpp: put ceph stuff in namespace librados

Try a little bit harder to avoid polluting the user's global namespace
with our stuff.

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agolibrados: don't create unused SnapContext objs
Colin Patrick McCabe [Mon, 28 Feb 2011 13:59:51 +0000 (05:59 -0800)]
librados: don't create unused SnapContext objs

There were some unused temporary variables hanging around.

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agolibrados: fix copy ctor of ObjectIterator
Colin Patrick McCabe [Mon, 28 Feb 2011 13:19:04 +0000 (05:19 -0800)]
librados: fix copy ctor of ObjectIterator

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agotestrados: add object stat test
Josh Durgin [Tue, 1 Mar 2011 18:36:15 +0000 (10:36 -0800)]
testrados: add object stat test

Signed-off-by: Josh Durgin <josh.durgin@dreamhost.com>
14 years agotestlibrbd: recreate test pool each time
Josh Durgin [Tue, 1 Mar 2011 18:33:06 +0000 (10:33 -0800)]
testlibrbd: recreate test pool each time

Signed-off-by: Josh Durgin <josh.durgin@dreamhost.com>
14 years agoFix test/signals.cc
Colin Patrick McCabe [Thu, 3 Mar 2011 22:54:15 +0000 (14:54 -0800)]
Fix test/signals.cc

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agolibrados, librbd: use separate IoCtxs for data and metadata
Josh Durgin [Thu, 3 Mar 2011 16:44:27 +0000 (08:44 -0800)]
librados, librbd: use separate IoCtxs for data and metadata

Adds deep copy method IoCtx::dup, so that the data and metadata
contexts can have different snap_seqs and snap contexts.

Also avoid calling Rados::shutdown explicitly, since the destructor
will do this, and it must run after the Image destructor.

Signed-off-by: Josh Durgin <josh.durgin@dreamhost.com>
14 years agolibrbd: fix error message and unnamed constant
Josh Durgin [Thu, 3 Mar 2011 16:42:34 +0000 (08:42 -0800)]
librbd: fix error message and unnamed constant

Signed-off-by: Josh Durgin <josh.durgin@dreamhost.com>
14 years agocommon: block SIGPIPE everywhere we can
Colin Patrick McCabe [Thu, 3 Mar 2011 15:08:09 +0000 (07:08 -0800)]
common: block SIGPIPE everywhere we can

It's much better to get EPIPE than SIGPIPE.

Block SIGPIPE in all threads we create. In the daemon, block SIGPIPE in
the main thread.

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agomessanger: shouldn't throw sigpipe on failed socket
Yehuda Sadeh [Thu, 3 Mar 2011 21:44:07 +0000 (13:44 -0800)]
messanger: shouldn't throw sigpipe on failed socket

14 years agocommon: block SIGPIPE everywhere we can
Colin Patrick McCabe [Thu, 3 Mar 2011 15:08:09 +0000 (07:08 -0800)]
common: block SIGPIPE everywhere we can

It's much better to get EPIPE than SIGPIPE.

Block SIGPIPE in all threads we create. In the daemon, block SIGPIPE in
the main thread.

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agomessanger: shouldn't throw sigpipe on failed socket
Yehuda Sadeh [Thu, 3 Mar 2011 21:44:07 +0000 (13:44 -0800)]
messanger: shouldn't throw sigpipe on failed socket

14 years agoconfigure: fix profiler check
Yehuda Sadeh [Thu, 3 Mar 2011 19:56:43 +0000 (11:56 -0800)]
configure: fix profiler check

14 years agodout: Log version message when (re)opening log
Colin Patrick McCabe [Thu, 3 Mar 2011 12:30:24 +0000 (04:30 -0800)]
dout: Log version message when (re)opening log

Log a version message whenever we open the dout log, not just the first
time. However, only output it to log files and syslog. Spewing versions
to stderr and stdout was determined to be annoying.

Rename dout_emergency_impl to dout_emergency_to_file_and_syslog to
better reflect its function.

Rename ceph_version_to_string to pretty_version_to_string.

Add get_process_name to do just that. Re-arrange some version.h methods.

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
Conflicts:

src/common/common_init.cc

14 years agoThread: don't mask signals except in library code
Colin Patrick McCabe [Tue, 1 Mar 2011 16:04:26 +0000 (08:04 -0800)]
Thread: don't mask signals except in library code

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agodout: Log version message when (re)opening log
Colin Patrick McCabe [Thu, 3 Mar 2011 12:01:50 +0000 (04:01 -0800)]
dout: Log version message when (re)opening log

Log a version message whenever we open the dout log, not just the first
time. However, only output it to log files and syslog. Spewing versions
to stderr and stdout was determined to be annoying.

Rename dout_emergency_impl to dout_emergency_to_file_and_syslog to
better reflect its function.

Rename ceph_version_to_string to pretty_version_to_string.

Add get_process_name to do just that. Re-arrange some version.h methods.

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agomsgr: fix typo
Sage Weil [Thu, 3 Mar 2011 16:43:43 +0000 (08:43 -0800)]
msgr: fix typo

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
14 years agoCDir: Don't write out the header on a partial commit.
Greg Farnum [Thu, 3 Mar 2011 02:52:51 +0000 (18:52 -0800)]
CDir: Don't write out the header on a partial commit.

If we write out the header as part of a partial commit, and then
fail to complete a subsequent commit (network error, we crash, etc)
then the on-disk version of the directory is not correctly versioned.
The fact that some dentries are of a newer version than others
is okay because we will fix it up during journal replay, but if
the header says the directory is fully committed to the end of
the journal that won't happen!
So, take advantage of how messages between two daemons are strictly
ordered, and how messages for a given PG are strictly ordered, and
simply include the partial commit that contains the new header last.

Signed-off-by: Greg Farnum <gregory.farnum@dreamhost.com>
14 years agoCDir: pay attention to the max_dir_commit_size!
Greg Farnum [Thu, 3 Mar 2011 02:49:39 +0000 (18:49 -0800)]
CDir: pay attention to the max_dir_commit_size!

Somehow it seems to have been ignoring this previously, which
doesn't make any sense at all since otherwise our tests on it
wouldn't have worked. Perhaps there was a merging error somewhere?

Signed-off-by: Greg Farnum <gregory.farnum@dreamhost.com>
14 years agoMerge branch 'tcmalloc_optimizations'
Greg Farnum [Thu, 3 Mar 2011 00:37:48 +0000 (16:37 -0800)]
Merge branch 'tcmalloc_optimizations'

14 years agotcmalloc: warn if you try and dump without the profiler running.
Greg Farnum [Thu, 3 Mar 2011 00:18:45 +0000 (16:18 -0800)]
tcmalloc: warn if you try and dump without the profiler running.

Signed-off-by: Greg Farnum <gregory.farnum@dreamhost.com>
14 years agomds: rip out rename linkmerge support
Sage Weil [Thu, 3 Mar 2011 00:13:54 +0000 (16:13 -0800)]
mds: rip out rename linkmerge support

It turns out POSIX says rename(a,b) is a no-op when a and b link to the
same inode.  This is super weird but good news because it means we can
rip out a bunch of poorly tested code.

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
14 years agotcmalloc: create perfglue handle_command functionality.
Greg Farnum [Wed, 2 Mar 2011 22:28:00 +0000 (14:28 -0800)]
tcmalloc: create perfglue handle_command functionality.

Switch the OSD and MDS to use it, instead of handling
the calls on their own. Note that this is a command interface change!

Signed-off-by: Greg Farnum <gregory.farnum@dreamhost.com>
14 years agoMerge remote branch 'origin/master' into locator
Yehuda Sadeh [Thu, 3 Mar 2011 00:04:56 +0000 (16:04 -0800)]
Merge remote branch 'origin/master' into locator

14 years agolocator: pool id is signed
Yehuda Sadeh [Thu, 3 Mar 2011 00:04:15 +0000 (16:04 -0800)]
locator: pool id is signed

14 years agoqa/workunits: added fsstress.sh
Samuel Just [Wed, 2 Mar 2011 23:54:43 +0000 (15:54 -0800)]
qa/workunits: added fsstress.sh

Signed-off-by: Samuel Just <samuel.just@dreamhost.com>
14 years agoosd: drop old ceph_osd_request_head
Sage Weil [Wed, 2 Mar 2011 22:57:11 +0000 (14:57 -0800)]
osd: drop old ceph_osd_request_head

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
14 years agoosd: new encoding for MOSDOp when OBJECTLOCATOR feature is present
Sage Weil [Wed, 2 Mar 2011 22:57:00 +0000 (14:57 -0800)]
osd: new encoding for MOSDOp when OBJECTLOCATOR feature is present

The new encoding includes the object_locator_t.  It also avoids the old
C struct.

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
14 years agoosd: add OBJECTLOCATOR protocol feature bit
Sage Weil [Wed, 2 Mar 2011 22:56:06 +0000 (14:56 -0800)]
osd: add OBJECTLOCATOR protocol feature bit

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
14 years agoencode locator information in osd op
Yehuda Sadeh [Wed, 2 Mar 2011 22:24:56 +0000 (14:24 -0800)]
encode locator information in osd op

14 years agotcmalloc: switch the interface.
Greg Farnum [Wed, 2 Mar 2011 22:13:38 +0000 (14:13 -0800)]
tcmalloc: switch the interface.

Previously, we used function pointers. Fun for me to learn about, icky
to actually have!
Now we use our own wrapper functions with two implementations -- one
for with tcmalloc and one without. Make those programs which
are tcmalloc-aware build with the appropriate implementation source
at compile-time, but leave the wrapper function stubs in
no matter what.

While we're at it, implement two of the "MallocExtension" calls in
the OSD.

Signed-off-by: Greg Farnum <gregory.farnum@dreamhost.com>
14 years agotestradospp: don't try to read /etc/ceph/ceph.conf explicitly
Yehuda Sadeh [Wed, 2 Mar 2011 21:58:38 +0000 (13:58 -0800)]
testradospp: don't try to read /etc/ceph/ceph.conf explicitly

14 years agomsgr: fix chdir after daemonize
Sage Weil [Wed, 2 Mar 2011 21:10:37 +0000 (13:10 -0800)]
msgr: fix chdir after daemonize

We don't care of the mkdir succeeds. It has dubious value anyway, though;
if you specify a unique directory for the daemon the caller may as well
create it.

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
14 years agolibrbd: change RBD::open to take a reference to an Image instead of a pointer
Josh Durgin [Wed, 2 Mar 2011 18:11:55 +0000 (10:11 -0800)]
librbd: change RBD::open to take a reference to an Image instead of a pointer

This makes the API more consistent with the librados API.

Signed-off-by: Josh Durgin <josh.durgin@dreamhost.com>
14 years agodout: Reopen dout after parsing all config opts
Colin Patrick McCabe [Wed, 2 Mar 2011 15:28:10 +0000 (07:28 -0800)]
dout: Reopen dout after parsing all config opts

Reopen the dout stream only after we parse all configuration options.
Specifying --log-file on the command line now works as expected.

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agodout: remove g_conf.log_to_file
Colin Patrick McCabe [Wed, 2 Mar 2011 15:12:03 +0000 (07:12 -0800)]
dout: remove g_conf.log_to_file

Remove the log_to_file configuration option. Instead, only log to a file
if either log_file or log_dir is set.

This way, command-line options like --log-file=/tmp/foo work as
expected.

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agologging: default to foreground logging
Colin Patrick McCabe [Wed, 2 Mar 2011 12:22:20 +0000 (04:22 -0800)]
logging: default to foreground logging

At global constructor time: default to logging everything to stderr.

During common_init: set appropriate logging defaults based on the type
or program (daemon or other).

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agocmds/cosd: Fix IsHeapProfilerRunning implicit return type cast.
Alexandre Oliva [Wed, 2 Mar 2011 21:39:09 +0000 (13:39 -0800)]
cmds/cosd: Fix IsHeapProfilerRunning implicit return type cast.

G++ complains about the difference between the return type of tcmalloc's
IsHeapProfilerRunning (int) and the return type of the function that
g_conf.profiler_running is supposed to point to (bool). We could
probably get away with a type-cast, but as a compiler developer and
former C++ language lawyer, I'd rather not take the risk of destroying
the universe by invoking undefined behavior ;-)

Signed-off-by: Alexandre Oliva <oliva@lsd.ic.unicamp.br>
Signed-off-by: Greg Farnum <gregory.farnum@dreamhost.com>
14 years agomds: drop some dead code
Sage Weil [Wed, 2 Mar 2011 17:50:44 +0000 (09:50 -0800)]
mds: drop some dead code

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
14 years agomds: fix one rename dentry linkage projection case
Sage Weil [Wed, 2 Mar 2011 17:41:20 +0000 (09:41 -0800)]
mds: fix one rename dentry linkage projection case

There are more.  :(

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
14 years agodout: Reopen dout after parsing all config opts
Colin Patrick McCabe [Wed, 2 Mar 2011 15:28:10 +0000 (07:28 -0800)]
dout: Reopen dout after parsing all config opts

Reopen the dout stream only after we parse all configuration options.
Specifying --log-file on the command line now works as expected.

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agodout: remove g_conf.log_to_file
Colin Patrick McCabe [Wed, 2 Mar 2011 15:12:03 +0000 (07:12 -0800)]
dout: remove g_conf.log_to_file

Remove the log_to_file configuration option. Instead, only log to a file
if either log_file or log_dir is set.

This way, command-line options like --log-file=/tmp/foo work as
expected.

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agoMerge branch 'logging'
Colin Patrick McCabe [Wed, 2 Mar 2011 14:40:45 +0000 (06:40 -0800)]
Merge branch 'logging'

14 years agologging: default to foreground logging
Colin Patrick McCabe [Wed, 2 Mar 2011 12:22:20 +0000 (04:22 -0800)]
logging: default to foreground logging

At global constructor time: default to logging everything to stderr.

During common_init: set appropriate logging defaults based on the type
or program (daemon or other).

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agoosd: cache map bufferlists until they are flushed to disk
Sage Weil [Wed, 2 Mar 2011 13:51:11 +0000 (05:51 -0800)]
osd: cache map bufferlists until they are flushed to disk

Another thread may share maps with a peer.  Make sure they pull bufferlists
out of our cache if this happens prior to the encoded versions being
written to disk.

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
14 years agosafe_io: fix signed/unsigned comparisons
Sage Weil [Wed, 2 Mar 2011 13:29:01 +0000 (05:29 -0800)]
safe_io: fix signed/unsigned comparisons

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
14 years agomds: drop some dead code
Sage Weil [Wed, 2 Mar 2011 17:50:44 +0000 (09:50 -0800)]
mds: drop some dead code

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
14 years agomds: fix one rename dentry linkage projection case
Sage Weil [Wed, 2 Mar 2011 17:41:20 +0000 (09:41 -0800)]
mds: fix one rename dentry linkage projection case

There are more.  :(

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
14 years agoosd: trigger discover_all_missing after replay delay
Sage Weil [Tue, 1 Mar 2011 00:05:08 +0000 (16:05 -0800)]
osd: trigger discover_all_missing after replay delay

We were calling discover_all_missing only when we went immediately active,
not after we were in the replay state (which triggers from a timer event
that calls OSD::activate_pg().  Move the call into PG::activate() so that
we catch both callers.

This requires passing in a query_map from the caller.  While we're at it,
clean up some other instances where we are defining a new query_map
deep within the call tree.

Fixes: #847 (I hope)
Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
14 years agoosd: handle osd_ping (and ack requests) while !active
Sage Weil [Mon, 28 Feb 2011 22:15:14 +0000 (14:15 -0800)]
osd: handle osd_ping (and ack requests) while !active

In particular, we may start getting ping requests before getting (or while
processing) our first map that makes us go active.

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
14 years agoMerge remote branch 'origin/scrub_noblock'
Sage Weil [Wed, 2 Mar 2011 00:29:59 +0000 (16:29 -0800)]
Merge remote branch 'origin/scrub_noblock'

14 years agoCDentry/CDir/CInode: Add comment on use of boost::pool.
Greg Farnum [Wed, 23 Feb 2011 22:17:48 +0000 (14:17 -0800)]
CDentry/CDir/CInode: Add comment on use of boost::pool.

Signed-off-by: Greg Farnum <gregory.farnum@dreamhost.com>