]> git.apps.os.sepia.ceph.com Git - ceph.git/log
ceph.git
14 years agomds: add check_rstats function and a few users.
Greg Farnum [Tue, 15 Mar 2011 18:57:09 +0000 (11:57 -0700)]
mds: add check_rstats function and a few users.

Signed-off-by: Greg Farnum <gregory.farnum@dreamhost.com>
14 years agorpm: package python bindings for rados
Ruben Kerkhof [Mon, 21 Mar 2011 15:43:47 +0000 (08:43 -0700)]
rpm: package python bindings for rados

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agocosd: Close TEXT_RED with TEXT_NORMAL in a few places.
Greg Farnum [Mon, 21 Mar 2011 18:55:38 +0000 (11:55 -0700)]
cosd: Close TEXT_RED with TEXT_NORMAL in a few places.

Guess these got missed or typoed on creation or something.

Signed-off-by: Greg Farnum <gregory.farnum@dreamhost.com>
14 years agoFix manpage typos
Laszlo Boszormenyi [Sun, 20 Mar 2011 12:10:40 +0000 (13:10 +0100)]
Fix manpage typos

Close escape names correctly.

14 years agoRemove unused cdbs build dependency
Laszlo Boszormenyi [Sun, 20 Mar 2011 11:44:36 +0000 (12:44 +0100)]
Remove unused cdbs build dependency

Debian packaging uses debhelper and not cdbs; remove that build dependency.

14 years agoChange wording of Debian package descriptions
Laszlo Boszormenyi [Sun, 20 Mar 2011 11:17:01 +0000 (12:17 +0100)]
Change wording of Debian package descriptions

Be more general in naming users per policy recommendation.

14 years agoMake Ceph Debian packaging Linux only
Laszlo Boszormenyi [Sun, 20 Mar 2011 07:36:27 +0000 (08:36 +0100)]
Make Ceph Debian packaging Linux only

Build Ceph on all Linux archs, but only build-depend google-perftools on
x86 and x64 archs only.

14 years agoDisable libatomic-ops on armel archs
Laszlo Boszormenyi [Sun, 20 Mar 2011 07:23:22 +0000 (08:23 +0100)]
Disable libatomic-ops on armel archs

armel supports ARMv4t or above instructions sets.
libatomic-ops is only usable with Ceph for ARMv6 or above.

Signed-off-by: Hector Oron <zumbi@debian.org>
14 years agoAdd cross compilation support
Laszlo Boszormenyi [Sat, 19 Mar 2011 19:36:10 +0000 (20:36 +0100)]
Add cross compilation support

Taken from Debian bugreport #618939 , courtesy by Hector Oron.

Signed-off-by: Hector Oron <zumbi@debian.org>
14 years agoAdd parallel building support for multi{core,processor} systems.
Laszlo Boszormenyi [Sat, 19 Mar 2011 19:15:17 +0000 (20:15 +0100)]
Add parallel building support for multi{core,processor} systems.

14 years agoCephxProtocol.cc: invalid authorizer data should not crash the osd
Samuel Just [Sat, 19 Mar 2011 00:40:41 +0000 (17:40 -0700)]
CephxProtocol.cc: invalid authorizer data should not crash the osd

Signed-off-by: Samuel Just <samuel.just@dreamhost.com>
14 years agoceph.spec.in: some CentOS fixes
Colin Patrick McCabe [Sat, 19 Mar 2011 00:04:17 +0000 (17:04 -0700)]
ceph.spec.in: some CentOS fixes

BuildRequires: cryptopp-devel has been replaced by nss-devel.  Skip
google-perftools-devel because that package is not available for x86-64.
Add python.

Don't install libcls_rbd.so.1.0.0.debug.

Package crbdnamer and librados-config.

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agopybind: convert to new API
Colin Patrick McCabe [Fri, 18 Mar 2011 18:00:49 +0000 (11:00 -0700)]
pybind: convert to new API

Fix the python bindings to use the new librados API.

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agobacktrace: user the proper version header
Sage Weil [Fri, 18 Mar 2011 22:09:26 +0000 (15:09 -0700)]
backtrace: user the proper version header

Signed-off-by: Sage Weil <sage@newdream.net>
14 years agolibceph: use the proper version header
Sage Weil [Fri, 18 Mar 2011 22:08:43 +0000 (15:08 -0700)]
libceph: use the proper version header

Signed-off-by: Sage Weil <sage@newdream.net>
14 years agolibceph: pull version from new version define
Sage Weil [Fri, 18 Mar 2011 21:49:28 +0000 (14:49 -0700)]
libceph: pull version from new version define

Signed-off-by: Sage Weil <sage@newdream.net>
14 years agoconfigure: no ~
Sage Weil [Fri, 18 Mar 2011 21:47:09 +0000 (14:47 -0700)]
configure: no ~

This confuses fedora and isn't really necessary.

Signed-off-by: Sage Weil <sage@newdream.net>
14 years agouse 'git describe' version
Sage Weil [Fri, 18 Mar 2011 21:23:56 +0000 (14:23 -0700)]
use 'git describe' version

14 years agolibrados: bump minor version number
Colin Patrick McCabe [Fri, 18 Mar 2011 18:31:27 +0000 (11:31 -0700)]
librados: bump minor version number

rados_create_internal -> rados_create_with_config

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agolibrados: rados_ioctx_lookup -> rados_pool_lookup
Colin Patrick McCabe [Fri, 18 Mar 2011 17:53:39 +0000 (10:53 -0700)]
librados: rados_ioctx_lookup -> rados_pool_lookup

rados_pool_lookup has nothing to do with io contexts!

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agodirect_io_test: use mkstmp instead of mkostemps
Colin Patrick McCabe [Fri, 18 Mar 2011 01:01:36 +0000 (18:01 -0700)]
direct_io_test: use mkstmp instead of mkostemps

mkostemps isn't present in older glibc versions, like the ones in CentOS
5.5. We don't really use any of the extra functionality of mkostemps in
this test.

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agoMakefile: check for new enough version of gtkmm
Colin Patrick McCabe [Fri, 18 Mar 2011 00:50:07 +0000 (17:50 -0700)]
Makefile: check for new enough version of gtkmm

Versions older than 2.13 don't build, so check for that with automake.

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agomsgr: move test binaries to updated msgr bind/start interface
Sage Weil [Thu, 17 Mar 2011 19:06:26 +0000 (12:06 -0700)]
msgr: move test binaries to updated msgr bind/start interface

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
14 years agomsgr: fix start() return value
Sage Weil [Thu, 17 Mar 2011 19:05:29 +0000 (12:05 -0700)]
msgr: fix start() return value

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
14 years agoPG,OSD: activate pg during replay
Samuel Just [Tue, 15 Mar 2011 00:25:46 +0000 (17:25 -0700)]
PG,OSD: activate pg during replay

Replay PGs already accept and queue transactions.  PGs will now go to
active during replay in order to simplify the state reported to the user
and to allow recovery to being.

Signed-off-by: Samuel Just <samuel.just@dreamhost.com>
14 years agoblobhash: Avoid size_t in templatized hash functions.
Tommi Virtanen [Mon, 14 Mar 2011 18:52:44 +0000 (11:52 -0700)]
blobhash: Avoid size_t in templatized hash functions.

On S/390, the earlier rjhash<size_t> failed with
"no match for call to '(rjhash<long unsigned int>) (size_t&)'".
It seems the rjhash<size_T> logic was only enabled
on some architectures, and relied on some pretty deep
internals of the bit layout (__LP64__).

Use an explicitly 32-bit type as early as possible, and
convert back to size_t only when really needed. This
should work, and simplifies the code. In theory, we might
have a narrower output (size_t might be 64-bit, max value
we now output is 32-bit), but this doesn't matter as this
is only ever used for picking a slot in an in-memory hash
table, hash(key) modulo num_of_buckets, there won't be >4G
buckets.

Closes: #837
Signed-off-by: Tommi Virtanen <tommi.virtanen@dreamhost.com>
14 years agomsgr: let user explicitly set nonce
Sage Weil [Thu, 17 Mar 2011 18:32:56 +0000 (11:32 -0700)]
msgr: let user explicitly set nonce

There will be problems if two messengers use the same entity_addr_t because
they are on the same ip and choose the same nonce (e.g., because they are
in the same process).  Let the caller sort this out in whatever way it
finds most appropriate.

For libceph, librados, and csyn, all N million to the pid.

Fixes: #877
Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
14 years agoconfig: whitespace fix
Colin Patrick McCabe [Thu, 17 Mar 2011 18:17:12 +0000 (11:17 -0700)]
config: whitespace fix

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agoconfig: fix get_val, set_val
Colin Patrick McCabe [Thu, 17 Mar 2011 18:16:01 +0000 (11:16 -0700)]
config: fix get_val, set_val

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agolibrados: check whether objecter is initialized before shutting it down
Josh Durgin [Thu, 17 Mar 2011 17:28:47 +0000 (10:28 -0700)]
librados: check whether objecter is initialized before shutting it down

Fixes failing unit test Librados.CreateShutdown

Signed-off-by: Josh Durgin <josh.durgin@dreamhost.com>
14 years agoobjecter: close all sessions when shutdown
Josh Durgin [Wed, 16 Mar 2011 23:43:44 +0000 (16:43 -0700)]
objecter: close all sessions when shutdown

Signed-off-by: Josh Durgin <josh.durgin@dreamhost.com>
14 years agomds: fix replay of fragment ROLLBACK
Sage Weil [Wed, 16 Mar 2011 21:47:46 +0000 (14:47 -0700)]
mds: fix replay of fragment ROLLBACK

In the rollback event the bits are negative.  Replay accordingly.

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
14 years agocommon: disable log_per_instance for non-daemons
Sage Weil [Wed, 16 Mar 2011 21:39:24 +0000 (14:39 -0700)]
common: disable log_per_instance for non-daemons

Turn off the logging and symlink rotation, not just symlink rotation.

This is a somewhat arbitrary distinction (log per instance only for
daemons), but its only used by vstart and only really useful for
development/debugging, so who cares.

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
14 years agoMakefile: drop libradosgw_a LDFLAGS
Sage Weil [Wed, 16 Mar 2011 21:29:53 +0000 (14:29 -0700)]
Makefile: drop libradosgw_a LDFLAGS

Fixes the warning

src/Makefile.am:299: variable `libradosgw_a_LDFLAGS' is defined but no program or
src/Makefile.am:299: library has `libradosgw_a' as canonic name (possible typo)

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
14 years agomds: resync fragmentation during cache rejoin
Sage Weil [Wed, 16 Mar 2011 21:25:46 +0000 (14:25 -0700)]
mds: resync fragmentation during cache rejoin

During rejoin we may find that different MDSs have different fragmentation
for directories.  When that happens we should refragment as needed on the
replicas to match what's on the primary.

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
14 years agorados_create: correctly handle null id
Colin Patrick McCabe [Wed, 16 Mar 2011 21:21:25 +0000 (14:21 -0700)]
rados_create: correctly handle null id

Passing a null id to rados_create means "use the default id."

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agoobjecter: make response_data bufferlist static
Sage Weil [Wed, 16 Mar 2011 17:03:38 +0000 (10:03 -0700)]
objecter: make response_data bufferlist static

Putting it on the heap unnecessary additional complexity.

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
14 years agorados_create: set id based on parameter
Colin Patrick McCabe [Wed, 16 Mar 2011 19:25:02 +0000 (12:25 -0700)]
rados_create: set id based on parameter

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agolibrados: add rados_create_internal
Colin Patrick McCabe [Wed, 16 Mar 2011 18:33:08 +0000 (11:33 -0700)]
librados: add rados_create_internal

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agofilestore: return negative error code if open fails
Josh Durgin [Wed, 16 Mar 2011 18:21:47 +0000 (11:21 -0700)]
filestore: return negative error code if open fails

ENOENT was being treated as a read of length 2, causing #890.

Signed-off-by: Josh Durgin <josh.durgin@dreamhost.com>
14 years agoinit-ceph, mkcephfs: fix $name normalization
Sage Weil [Wed, 16 Mar 2011 05:23:46 +0000 (22:23 -0700)]
init-ceph, mkcephfs: fix $name normalization

Strip leading . only, to tolerate osd0 and osd.0.

This also turns osd.....foo -> osd.foo, but that's better than
osd.foo.bar -> osd.foobar.

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
14 years agoinit-ceph: use consistent $type.$id naming
Sage Weil [Wed, 16 Mar 2011 05:21:06 +0000 (22:21 -0700)]
init-ceph: use consistent $type.$id naming

Use $type.$id, regardless of what the user uses.

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
14 years agoosd: only update last_epoch_started after all replicas commit peering results
Sage Weil [Wed, 16 Mar 2011 05:18:45 +0000 (22:18 -0700)]
osd: only update last_epoch_started after all replicas commit peering results

The PG info.history.last_epoch_started is important because it bounds how
far back in time we think we need to look in order to fully recover the
contents of the PG.  That's because every replica commits the PG peering
result (the info and pg log) when it activates.

In order for this to work properly, we can only advance last_epoch_started
_after_ the peer results are stable on disk on all replicas.  Otherwise a
poorly timed failure (or set of failures) could lose the PG peer results
and we wouldn't go back far enough in time to find them.

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
14 years agoMerge remote branch 'origin/stable'
Sage Weil [Wed, 16 Mar 2011 03:57:16 +0000 (20:57 -0700)]
Merge remote branch 'origin/stable'

14 years agologging: don't add --debug
Colin Patrick McCabe [Tue, 15 Mar 2011 21:47:48 +0000 (14:47 -0700)]
logging: don't add --debug

--debug is already taken to change the global debug level.
Just offer -d for now.

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agotestlibrbd, testradospp: read default conf file
Josh Durgin [Mon, 14 Mar 2011 17:35:17 +0000 (10:35 -0700)]
testlibrbd, testradospp: read default conf file

Signed-off-by: Josh Durgin <josh.durgin@dreamhost.com>
14 years agologging: --foreground options reorganization
Colin Patrick McCabe [Tue, 15 Mar 2011 21:47:48 +0000 (14:47 -0700)]
logging: --foreground options reorganization

-f now just means stay in the foreground.
-d now means stay in the foreground and log to foreground.
Both options now disable pid-files.

Update man pages.

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agolibrbd: int -> ssize_t for aio completion wrappers too
Sage Weil [Tue, 15 Mar 2011 20:18:53 +0000 (13:18 -0700)]
librbd: int -> ssize_t for aio completion wrappers too

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
14 years agolibrbd: ssize_t return values for read, write
Sage Weil [Tue, 15 Mar 2011 20:16:41 +0000 (13:16 -0700)]
librbd: ssize_t return values for read, write

size_t is 32bits on 64bit archs.  Use ssize_t (long) for return values.

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
14 years agofilestore: instrument filestore, journal throughput and throttling
Sage Weil [Sat, 19 Feb 2011 04:49:37 +0000 (20:49 -0800)]
filestore: instrument filestore, journal throughput and throttling

Signed-off-by: Sage Weil <sage@newdream.net>
Conflicts:

src/os/FileJournal.cc
src/os/FileStore.cc
src/os/FileStore.h
src/os/JournalingObjectStore.cc

14 years agofilestore: adjust op_queue throttle max during fs commit
Sage Weil [Sat, 20 Nov 2010 22:37:13 +0000 (14:37 -0800)]
filestore: adjust op_queue throttle max during fs commit

The underlying FS (btrfs at least) will block writes for a period while it
is doing a commit.  If an OSD workload is write limited, we should raise
the op_queue max (operations that are queued to be applied to disk) during
the commit period.

For example, for a normally journal throughput limited (writeahead mode)
workload:

 - journal queue throttle normally limits things.
 - sync starts
 - journaled items getting moved to op_queue soon fills up op_queue max
 - all writes stop
 - sync completes
 - op_queue drains, new writes come in again
 - journal queue throttle fills up, again starts limiting tput

For an fs throughput limited workload (writeahead):

 - kernel buffer cache hits dirty limit
 - op_queue throttle limits tput
 - sync starts
 - opq stalls, new writes stall on throttler
 - sync completes
 - opq drains (quickly: kernel has no dirty pages)
 - new writes flood in
 - etc.
(Actually this isn't super realistic, because hitting the kernel dirty
limit will do all sorts of other weird things with userland memory
allocations.)

In both cases, the commit phase blocks up the op queue, and raising the
limit temporarily will keep things flowing.  This should be ok because the
disks are still busy during this period; they're just flushing dirty
data and metadata.  Once the sync completes the opq will quickly dump dirty
data into the kernel page cache and "catch up".

Signed-off-by: Sage Weil <sage@newdream.net>
14 years agotestrados: test default conf file location
Colin Patrick McCabe [Tue, 15 Mar 2011 18:08:51 +0000 (11:08 -0700)]
testrados: test default conf file location

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agolibrados: add default to rados_conf_read_file
Colin Patrick McCabe [Tue, 15 Mar 2011 17:43:35 +0000 (10:43 -0700)]
librados: add default to rados_conf_read_file

In rados_conf_read_file, read from the default configuration file
locations if the library user passes NULL as the location of the
configuration file.

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agorbd: int -> int64_t on do_export
Sage Weil [Tue, 15 Mar 2011 18:07:10 +0000 (11:07 -0700)]
rbd: int -> int64_t on do_export

Prevent 32-bit overflow.

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
14 years agolibrbd: use int64_t for read_iterate
Sage Weil [Tue, 15 Mar 2011 16:47:32 +0000 (09:47 -0700)]
librbd: use int64_t for read_iterate

The read_iterate can cover > addressable memory on 32-bit archs.

Reported-by: Jeff Wu <cpwu@tnsoft.com.cn>
Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
14 years agoobjecter: fix leak of bufferlist from MPoolOpReply
Josh Durgin [Mon, 14 Mar 2011 23:54:55 +0000 (16:54 -0700)]
objecter: fix leak of bufferlist from MPoolOpReply

bufferlist->claim already clears the source bufferlist,
but setting it to NULL prevented it from being destroyed.

Signed-off-by: Josh Durgin <josh.durgin@dreamhost.com>
14 years agoMerge branch 'stable'
Sage Weil [Mon, 14 Mar 2011 23:44:31 +0000 (16:44 -0700)]
Merge branch 'stable'

Conflicts:
configure.ac
debian/changelog
src/cfuse.cc
src/rgw/rgw_rest.cc

14 years agocfuse: set proper defaults
Colin Patrick McCabe [Mon, 14 Mar 2011 14:24:32 +0000 (07:24 -0700)]
cfuse: set proper defaults

Since cfuse usually runs as a nonprivileged user, its defaults must be a
little different from those of the other daemons. Add a flag to
common_init which can be used to set unprivileged daemon defaults.

SimpleMessenger::start() now just takes a boolean telling it whether to
daemonize. It doesn't need to check global variables or other arguments;
it just daemonizes if you tell it to; otherwise not.

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agov0.25.1 v0.25.1
Sage Weil [Mon, 14 Mar 2011 21:59:47 +0000 (14:59 -0700)]
v0.25.1

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
14 years agocfuse: always daemonize hack
Sage Weil [Mon, 14 Mar 2011 22:38:19 +0000 (15:38 -0700)]
cfuse: always daemonize hack

Always daemonize, until the next round of common_init fixes lands.

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
14 years agoosd: small pull recovery adjustments
Sage Weil [Mon, 14 Mar 2011 22:16:27 +0000 (15:16 -0700)]
osd: small pull recovery adjustments

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
14 years agoReplicatedPG,OSD: Track which osds we are pulling from
Samuel Just [Thu, 10 Mar 2011 23:37:33 +0000 (15:37 -0800)]
ReplicatedPG,OSD: Track which osds we are pulling from

Currently, a PG waiting on a pull from a dead OSD cannot continue
recovery.  ReplicatedPG::pull now tracks open pulls by peer in
rec_from_peer (map<int, set<sobject_t> >).

OSD::advance_map now calls check_recovery_op_pulls to allow the PG to
reset pulls from failed peers.

Signed-off-by: Samuel Just <samuel.just@dreamhost.com>
14 years agovstart.sh: escape " "
Sage Weil [Mon, 14 Mar 2011 22:01:20 +0000 (15:01 -0700)]
vstart.sh: escape " "

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
14 years agocpp_strerror: handle negative error code
Colin Patrick McCabe [Mon, 14 Mar 2011 14:45:36 +0000 (07:45 -0700)]
cpp_strerror: handle negative error code

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agolibrbd: delete block completion in aio_read callback
Josh Durgin [Mon, 14 Mar 2011 21:36:38 +0000 (14:36 -0700)]
librbd: delete block completion in aio_read callback

Signed-off-by: Josh Durgin <josh.durgin@dreamhost.com>
14 years agolibrados: initialize done in C_NotifyComplete
Josh Durgin [Mon, 14 Mar 2011 21:33:26 +0000 (14:33 -0700)]
librados: initialize done in C_NotifyComplete

Caught by valgrind, this was uninitialized in the caller.

Signed-off-by: Josh Durgin <josh.durgin@dreamhost.com>
14 years agomonclient: fix leak of AuthClientHandler
Josh Durgin [Mon, 14 Mar 2011 21:20:07 +0000 (14:20 -0700)]
monclient: fix leak of AuthClientHandler

Signed-off-by: Josh Durgin <josh.durgin@dreamhost.com>
14 years agotestlibrbdpp: read conf file and don't double-delete AioCompletion
Josh Durgin [Mon, 14 Mar 2011 17:33:15 +0000 (10:33 -0700)]
testlibrbdpp: read conf file and don't double-delete AioCompletion

Signed-off-by: Josh Durgin <josh.durgin@dreamhost.com>
14 years agovstart: put logging options in daemon sections, not [global]
Sage Weil [Mon, 14 Mar 2011 21:21:57 +0000 (14:21 -0700)]
vstart: put logging options in daemon sections, not [global]

We don't want random command line utils to have non-default logging
behavior.

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
14 years agomds: journal fragment rollback events
Sage Weil [Mon, 14 Mar 2011 17:27:23 +0000 (10:27 -0700)]
mds: journal fragment rollback events

If we rollback a prepared but uncommitted dir refragment, journal it!
This prevents a pattern like

2011-03-14 09:53:41.402212 7ff5edc00710 mds1.log _replay 4332021~624 / 4350736 2011-03-14 09:53:22.348896: EFragment prepare 610 10* by 1 [metablob 610.100*, 2 dirs]
2011-03-14 09:53:41.404433 7ff5edc00710 mds1.log _replay 4336070~116 / 4350736 2011-03-14 09:53:22.350024: EFragment commit 610 01* by 1 [metablob]
2011-03-14 09:53:48.740230 7ff5f0109710 mds1.log submit_entry 4408799~1264 : EFragment prepare 610 10* by 1 [metablob 101, 3 dirs]

where the second (apparently dup!) prepare crashes the next replay attempt.

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
14 years agoMerge branch 'stable'
Sage Weil [Mon, 14 Mar 2011 20:22:16 +0000 (13:22 -0700)]
Merge branch 'stable'

Conflicts:
src/include/rados/librados.h
src/include/rados/librados.hpp
src/librados.cc

14 years agolibrbd: size_t -> uint64_t on internal resize
Sage Weil [Mon, 14 Mar 2011 20:20:42 +0000 (13:20 -0700)]
librbd: size_t -> uint64_t on internal resize

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
14 years agolibrados: use uint64_t for extent len in extmap
Sage Weil [Mon, 14 Mar 2011 20:15:15 +0000 (13:15 -0700)]
librados: use uint64_t for extent len in extmap

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
14 years agolibrados: fixup rados_trunc
Sage Weil [Mon, 14 Mar 2011 20:13:13 +0000 (13:13 -0700)]
librados: fixup rados_trunc

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
14 years agocpp_strerror: handle negative error code
Colin Patrick McCabe [Mon, 14 Mar 2011 14:45:36 +0000 (07:45 -0700)]
cpp_strerror: handle negative error code

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agorgw_rest: fix printf format specifier
Sage Weil [Mon, 14 Mar 2011 21:47:59 +0000 (14:47 -0700)]
rgw_rest: fix printf format specifier

32-bit

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
14 years agorados: fix map type
Sage Weil [Mon, 14 Mar 2011 21:47:49 +0000 (14:47 -0700)]
rados: fix map type

32-bit build issue

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
14 years agolibrados: fix size_t -> uint64_t
Sage Weil [Mon, 14 Mar 2011 21:40:37 +0000 (14:40 -0700)]
librados: fix size_t -> uint64_t

Only comes up on 32-bit builds.

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
14 years agolibrbd: more off_t and size_t -> uint64_t changes
Sage Weil [Mon, 14 Mar 2011 21:39:21 +0000 (14:39 -0700)]
librbd: more off_t and size_t -> uint64_t changes

These only pop on up on 32-bit builds.

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
14 years agolibrados: rename statfs to cluster_stat
Yehuda Sadeh [Mon, 14 Mar 2011 18:01:15 +0000 (11:01 -0700)]
librados: rename statfs to cluster_stat

14 years agolibrados: add statfs to C interface
Yehuda Sadeh [Mon, 14 Mar 2011 17:20:01 +0000 (10:20 -0700)]
librados: add statfs to C interface

also rename the corresponding C++ method

14 years agolibrbd: uint64_t for image sizes
Sage Weil [Mon, 14 Mar 2011 16:26:14 +0000 (09:26 -0700)]
librbd: uint64_t for image sizes

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agorados, rbd: off_t -> uint64_t
Sage Weil [Sun, 13 Mar 2011 17:20:15 +0000 (10:20 -0700)]
rados, rbd: off_t -> uint64_t

off_t is 32-bit on 32-bit archs when compiled without _FILE_OFFSET_BITS=64.
Avoid any such ambiguity in the library interface.

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
14 years agoRevert "librados,librbd: use 64-bit offsets and lengths"
Colin Patrick McCabe [Mon, 14 Mar 2011 12:10:48 +0000 (05:10 -0700)]
Revert "librados,librbd: use 64-bit offsets and lengths"

This reverts commit f294b26746a30960971757c42d679208a99995a7.

14 years agologging: disable log_sym_history for non-daemons
Colin Patrick McCabe [Mon, 14 Mar 2011 10:10:33 +0000 (03:10 -0700)]
logging: disable log_sym_history for non-daemons

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agolibrados: make AioCompletions delete themselves when released
Josh Durgin [Mon, 14 Mar 2011 17:04:54 +0000 (10:04 -0700)]
librados: make AioCompletions delete themselves when released

AioCompletion->release() already accounted for the implementation, but the wrapper was kept around.

14 years agomds: fix stray anchortable debug spam
Sage Weil [Sat, 12 Mar 2011 05:59:37 +0000 (21:59 -0800)]
mds: fix stray anchortable debug spam

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
14 years agobuffer: disable buffer alloc tracking by default
Sage Weil [Sat, 12 Mar 2011 05:59:15 +0000 (21:59 -0800)]
buffer: disable buffer alloc tracking by default

This can have high overhead on SMP systems.

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
14 years agolibrbd: delete block completion after it's finished
Josh Durgin [Sat, 12 Mar 2011 02:44:21 +0000 (18:44 -0800)]
librbd: delete block completion after it's finished

14 years agolibrbd: don't leak rados_completion
Josh Durgin [Sat, 12 Mar 2011 02:11:00 +0000 (18:11 -0800)]
librbd: don't leak rados_completion

The implementation is already referenced by librados callbacks, so it
will stick around.

14 years agolibrados: Remove OperationOp from WatchCtx
Josh Durgin [Sat, 12 Mar 2011 01:08:32 +0000 (17:08 -0800)]
librados: Remove OperationOp from WatchCtx

It was unused and doesn't need to be on the heap.

14 years agolibrados: cleanup RadosClient's objecter instance when destroyed
Josh Durgin [Sat, 12 Mar 2011 00:55:39 +0000 (16:55 -0800)]
librados: cleanup RadosClient's objecter instance when destroyed

14 years agolibrbd: free RBD::AioCompletion when it's released
Josh Durgin [Sat, 12 Mar 2011 00:54:43 +0000 (16:54 -0800)]
librbd: free RBD::AioCompletion when it's released

14 years agodebian: Conflict on earlier -dev packages with sonames.
Tommi Virtanen [Fri, 11 Mar 2011 23:39:56 +0000 (15:39 -0800)]
debian: Conflict on earlier -dev packages with sonames.

This ensures a smooth, automatic transition, by telling apt/dpkg that
it's ok to replace the old package with the new one.

Continuation of 95db4c5cb868c26567e3f5095108481aa7e76a80.

Signed-off-by: Tommi Virtanen <tommi.virtanen@dreamhost.com>
14 years agoutime: fix operator double() to use the right number of zeros.
Greg Farnum [Fri, 11 Mar 2011 19:24:59 +0000 (11:24 -0800)]
utime: fix operator double() to use the right number of zeros.

We should probably use a const (or even a #define would be better)
instead of typing out the constant in all these places!

Signed-off-by: Greg Farnum <gregory.farnum@dreamhost.com>
14 years agolibrados,librbd: use 64-bit offsets and lengths
Colin Patrick McCabe [Sat, 12 Mar 2011 01:05:46 +0000 (17:05 -0800)]
librados,librbd: use 64-bit offsets and lengths

size_t is usually 32-bit on 32-bit architectures and 64 on 64-bit ones.
On the other hand, we want our offsets and lengths for librados and
librbd to be 64 bit everywhere. So we need to use uint64_t for offsets
and lengths.

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
14 years agomkcephfs: some fixes
Sage Weil [Sat, 12 Mar 2011 00:22:19 +0000 (16:22 -0800)]
mkcephfs: some fixes

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
14 years agoMerge remote branch 'origin/stable'
Sage Weil [Fri, 11 Mar 2011 22:57:53 +0000 (14:57 -0800)]
Merge remote branch 'origin/stable'

Conflicts:
debian/control

14 years agoautoconf: Fix typo that made --without-gtk2 not work.
Tommi Virtanen [Fri, 11 Mar 2011 22:46:22 +0000 (14:46 -0800)]
autoconf: Fix typo that made --without-gtk2 not work.

Signed-off-by: Tommi Virtanen <tommi.virtanen@dreamhost.com>
14 years agoautoconf: Handle --without-debug, --with-debug=junk properly.
Tommi Virtanen [Fri, 11 Mar 2011 22:11:54 +0000 (14:11 -0800)]
autoconf: Handle --without-debug, --with-debug=junk properly.

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