]> git.apps.os.sepia.ceph.com Git - ceph.git/log
ceph.git
13 years agofilestore: dump offending transaction on any error
Sage Weil [Fri, 27 Jan 2012 18:41:50 +0000 (10:41 -0800)]
filestore: dump offending transaction on any error

Clean this code up to explicitly whitelist what is ok so that the flow is
less annoying to follow/maintain, and so that we dump the transaction
contents on whitelisted errors.

Signed-off-by: Sage Weil <sage@newdream.net>
Reviewed-by: Josh Durgin <josh.durgin@dreamhost.com>
13 years agoobjecter: warn when OSD returns mismatched op vector
Sage Weil [Fri, 27 Jan 2012 18:40:14 +0000 (10:40 -0800)]
objecter: warn when OSD returns mismatched op vector

The osd shouldn't do this (even though we should tolerate it).

Signed-off-by: Sage Weil <sage@newdream.net>
Reviewed-by: Greg Farnum <gregory.farnum@dreamhost.com>
13 years agoobjecter: fix bounds checking on op reply demuxing
Sage Weil [Fri, 27 Jan 2012 18:39:49 +0000 (10:39 -0800)]
objecter: fix bounds checking on op reply demuxing

We can't assume that the size of out_ops (from the reply) matches the
op->out_* vectors from our request state.  In particular, the out_ops might
be shorter than what we sent the OSD if the OSD was sloppy.  Check them.

We can assume that op->ops and op->out_* all match; assert as much in
op_submit().

Fixes: #1986
Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
Reviewed-by: Greg Farnum <gregory.farnum@dreamhost.com>
13 years agomds: remove test assert
Sage Weil [Fri, 27 Jan 2012 18:01:47 +0000 (10:01 -0800)]
mds: remove test assert

Grr!

Signed-off-by: Sage Weil <sage@newdream.net>
13 years agoassert: include timestamp
Sage Weil [Fri, 27 Jan 2012 14:32:29 +0000 (06:32 -0800)]
assert: include timestamp

Also drop quotes around thread id.

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agofilestore: fix typo
Sage Weil [Wed, 25 Jan 2012 22:07:06 +0000 (14:07 -0800)]
filestore: fix typo

Grr

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agoMerge branch 'wip-kb'
Sage Weil [Wed, 25 Jan 2012 22:03:18 +0000 (14:03 -0800)]
Merge branch 'wip-kb'

Reviewed-by: Samuel Just <samuel.just@dreamhost.com>
13 years agofilestore: zero btrfs vol_args prior to ioctl
Sage Weil [Wed, 25 Jan 2012 21:52:32 +0000 (13:52 -0800)]
filestore: zero btrfs vol_args prior to ioctl

Just to be paranoid.  Nothing we haven't set *should* affect the ABI,
but...

Always do this immediately after declaration so that we catch everything.

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agoMerge remote branch 'upstream/wip-osd-clone-obc'
Samuel Just [Wed, 25 Jan 2012 21:58:58 +0000 (13:58 -0800)]
Merge remote branch 'upstream/wip-osd-clone-obc'

13 years agomon: num_kb -> num_bytes in cluster perfcounters
Sage Weil [Wed, 25 Jan 2012 20:38:59 +0000 (12:38 -0800)]
mon: num_kb -> num_bytes in cluster perfcounters

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agoosd: remove num_kb from object_stat_sum_t stats
Sage Weil [Wed, 25 Jan 2012 20:38:06 +0000 (12:38 -0800)]
osd: remove num_kb from object_stat_sum_t stats

This is redundant--we can just use num_bytes.  If we're worried about the
per-object overhead or rounding, we can factor in some overhead based on
num_objects.

And, the kb accounting has a bug (#1988).

Avoid changing the encoding at all for now.  Next time the encoding changes
we'll drop the old field.

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agoosd: improve object context debug output
Sage Weil [Wed, 25 Jan 2012 17:56:58 +0000 (09:56 -0800)]
osd: improve object context debug output

Include pointer.  This may help with #1979.

Signed-off-by: Sage Weil <sage@newdream.net>
13 years agoosd: track obc for clone from log replay
Sage Weil [Wed, 25 Jan 2012 06:03:51 +0000 (22:03 -0800)]
osd: track obc for clone from log replay

We need to keep an in-memory obc to track the state of the in-flight io
to disk.  This is analogous to when an object is pushed + written, and we
can share the same completion function.

Signed-off-by: Sage Weil <sage@newdream.net>
13 years agoosd: set object_info_t::oid properly when recovering clones
Sage Weil [Wed, 25 Jan 2012 05:34:27 +0000 (21:34 -0800)]
osd: set object_info_t::oid properly when recovering clones

I saw a case (#1973) where the clone had the oid set to the head.  That is
clearly wrong.  Not sure what damage this caused.

Signed-off-by: Sage Weil <sage@newdream.net>
13 years agoMerge remote branch 'gh/wip-filestore-errors'
Sage Weil [Wed, 25 Jan 2012 05:19:44 +0000 (21:19 -0800)]
Merge remote branch 'gh/wip-filestore-errors'

13 years agopackage *.py* files
Alexandre Oliva [Tue, 17 Jan 2012 19:22:17 +0000 (17:22 -0200)]
package *.py* files

Some post-install rpmbuild defaults byte-compile all packaged python
files, so don't bother removing the .pyc files, and package .py* to
get both .pyo and .pyc.  It wastes a tiny little bit of space, but it
makes the spec file portable across a wider range of rpm and python
configurations.

Signed-off-by: Alexandre Oliva <oliva@lsd.ic.unicam.br>
Signed-off-by: Sage Weil <sage@newdream.net>
13 years agolibrbd: don't infinite loop when header is too large
Josh Durgin [Wed, 25 Jan 2012 00:52:27 +0000 (16:52 -0800)]
librbd: don't infinite loop when header is too large

Since snapshots are currently stored at the end of the header, having
many snapshots made the header larger than the read size, resulting in
an infinite loop when the offset was not changed.

Signed-off-by: Josh Durgin <josh.durgin@dreamhost.com>
Reviewed-by: Samuel Just <samuel.just@dreamhost.com>
13 years agoReplicatedPG: data_subset may be empty during sub_op_push
Samuel Just [Tue, 24 Jan 2012 22:57:07 +0000 (14:57 -0800)]
ReplicatedPG: data_subset may be empty during sub_op_push

Signed-off-by: Samuel Just <samuel.just@dreamhost.com>
Reviewed-by: Josh Durgin <josh.durgin@dreamhost.com>
13 years agofilestore: fix non-::-prefixed close
Josh Durgin [Tue, 24 Jan 2012 21:23:21 +0000 (13:23 -0800)]
filestore: fix non-::-prefixed close

Signed-off-by: Josh Durgin <josh.durgin@dreamhost.com>
13 years agofilestore: add debugging to each error case in lfn_open
Josh Durgin [Tue, 24 Jan 2012 21:20:20 +0000 (13:20 -0800)]
filestore: add debugging to each error case in lfn_open

Signed-off-by: Josh Durgin <josh.durgin@dreamhost.com>
13 years agofilestore: TEMP_FAILURE_RETRY on ::close(2)
Sage Weil [Tue, 24 Jan 2012 21:16:30 +0000 (13:16 -0800)]
filestore: TEMP_FAILURE_RETRY on ::close(2)

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agofilestore: return -errno from lfn_open
Sage Weil [Tue, 24 Jan 2012 17:31:39 +0000 (09:31 -0800)]
filestore: return -errno from lfn_open

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agofilestore: audit + clean up error checks
Sage Weil [Tue, 24 Jan 2012 17:31:33 +0000 (09:31 -0800)]
filestore: audit + clean up error checks

- use temp var for errno
- in general return -errno from helpers

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agoMerge commit '9dc7b9233b985bf859751fc89a5b02253e829836'
Sage Weil [Mon, 23 Jan 2012 21:50:19 +0000 (13:50 -0800)]
Merge commit '9dc7b9233b985bf859751fc89a5b02253e829836'

Reviewed-by: Greg Farnum <gregory.farnum@dreamhost.com>
13 years agorgw: fix warning
Sage Weil [Mon, 23 Jan 2012 20:48:46 +0000 (12:48 -0800)]
rgw: fix warning

rgw/rgw_rest.cc:258: warning: comparison between signed and unsigned integer expressions

Signed-off-by: Sage Weil <sage@newdream.net>
13 years agoceph: bail out on first failing command
Sage Weil [Mon, 23 Jan 2012 20:43:19 +0000 (12:43 -0800)]
ceph: bail out on first failing command

Signed-off-by: Sage Weil <sage@newdream.net>
13 years agoceph: don't write output on error
Sage Weil [Mon, 23 Jan 2012 20:43:03 +0000 (12:43 -0800)]
ceph: don't write output on error

Accumulate all output, and write it at the end.  This way we can avoid
writing it if any of the commands fail.

Fixes: #1954
Signed-off-by: Sage Weil <sage@newdream.net>
13 years agoosd: ignore MInfoRec, MNotifyRec in WaitActingChange
Sage Weil [Mon, 23 Jan 2012 18:21:04 +0000 (10:21 -0800)]
osd: ignore MInfoRec, MNotifyRec in WaitActingChange

We should ignore logs, infos, and notifies while we are waiting for the
map to change.  Peering has reached a dead-end (we need acting to change)
and we will redo our work when that happens.  That includes the replicas
resending notifies.

Fixes: #1958
Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
Reviewed-by: Samuel Just <samuel.just@dreamhost.com>
13 years agorgw: fix warning in 32bit arch
Yehuda Sadeh [Mon, 23 Jan 2012 17:50:56 +0000 (09:50 -0800)]
rgw: fix warning in 32bit arch

13 years agopg: unindex entries when clearing or removing from the log
Josh Durgin [Thu, 19 Jan 2012 01:34:50 +0000 (17:34 -0800)]
pg: unindex entries when clearing or removing from the log

Leaving the index around could cause use of the indexes to access
freed memory.

Signed-off-by: Josh Durgin <josh.durgin@dreamhost.com>
13 years agoosd: do not clobber log on backfill progress update
Sage Weil [Thu, 19 Jan 2012 02:01:09 +0000 (18:01 -0800)]
osd: do not clobber log on backfill progress update

This is unnecessary and counterproductive, since the log is used to detect
dup ops.  It's an artifact of an earlier backfill iteration that didn't
preserve the log on the backfill target.

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agorgw: read_user_buckets() fix redone
Yehuda Sadeh [Fri, 20 Jan 2012 20:54:14 +0000 (12:54 -0800)]
rgw: read_user_buckets() fix redone

The problem with the original fix is that it wasn't atomic. Going back
to the original inefficient (though atomic) method. We should limit
the number of buckets per user anyway, and shouldn't get into a point
where this code is actually execised.

Signed-off-by: Yehuda Sadeh <yehuda@hq.newdream.net>
13 years agoosd: implement --dump-journal
Sage Weil [Sun, 15 Jan 2012 05:15:02 +0000 (21:15 -0800)]
osd: implement --dump-journal

Dump the contents of the journal to stdout in text form.  Useful for
debugging.

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agorgw: read large bucket directory correctly
Yehuda Sadeh [Fri, 20 Jan 2012 18:46:31 +0000 (10:46 -0800)]
rgw: read large bucket directory correctly

Issue #1955. When there wre too many buckets, we failed reading
the bucket directory.

Signed-off-by: Yehuda Sadeh <yehuda@hq.newdream.net>
13 years agorgw: fix warning
Yehuda Sadeh [Thu, 19 Jan 2012 17:11:09 +0000 (09:11 -0800)]
rgw: fix warning

Signed-off-by: Yehuda Sadeh <yehuda.sadeh@dreamhost.com>
13 years agoMerge remote branch 'gh/wip-op-data-mux'
Sage Weil [Thu, 19 Jan 2012 04:41:04 +0000 (20:41 -0800)]
Merge remote branch 'gh/wip-op-data-mux'

Reviewed-by: Greg Farnum <greg.farnum@dreamhost.com>
Reviewed-by: Yehuda Sadeh <yehuda.sadeh@dreamhost.com>
13 years agoConvert mount.ceph to use KEY_SPEC_PROCESS_KEYRING
Neil Horman [Wed, 18 Jan 2012 17:00:14 +0000 (12:00 -0500)]
Convert mount.ceph to use KEY_SPEC_PROCESS_KEYRING

having mount.ceph use KEY_SPEC_USER_KEYRING to pass keys to the kernel has
several disadvantages:

1) It leaves the key setting in the uid_keyring, which is reachable from the
session keyring via a link (see keyctl list <root session keyring ref>).  This
means its accessible to other processes in the same session that don't need
access to it, even after the kernel is done with it.

2) The user keyring has some very counter-intuitive semantics as far as keyring
permissions goes.  The user keyring is access via a link from the session
keyring, which a process may not have permission to access in some situations.
For instance if mount.ceph is executed via su without having started a new
session, mount.ceph will not have access to the uid keyring unless the calling
proces (in this case su) has granted access permission.  The result is a -EPERM
error when executing mount.ceph to a cephx enabled server.  If the same command
is attempted in a new root session (e.g. su - or su -l), the mount command will
work fine

Switching the mount.ceph command to use the KEY_SPEC_PROCESS_KEYRING solves both
of these problems.  By using this keyring, accessibility is guaranteed because
its added and accessed in the same process context both in user space and the
kernel, assuring aceesability, despite the session specifics.  It also ensures
that the key will get cleaned up after the mount.ceph process exits
automatically, since there is no longer a need for it (the kernel clones the key
during the mount process and releases it on unmount).

I've tested this here on my local ceph cluster, and it works properly under both
su and su -l .

Signed-off-by: Neil Horman <nhorman@tuxdriver.com>
CC: Josh Durgin <josh.durgin@dreamhost.com>
13 years agoMerge branch 'wip-rgw-simplelog'
Yehuda Sadeh [Wed, 18 Jan 2012 19:46:24 +0000 (11:46 -0800)]
Merge branch 'wip-rgw-simplelog'

13 years agorgw: adjust high level debug level
Yehuda Sadeh [Wed, 18 Jan 2012 19:37:59 +0000 (11:37 -0800)]
rgw: adjust high level debug level

setting it to 2 instead of 1

Signed-off-by: Yehuda Sadeh <yehuda@hq.newdream.net>
13 years agoMerge remote branch 'gh/wip-rgw-simplelog'
Sage Weil [Wed, 18 Jan 2012 19:25:13 +0000 (11:25 -0800)]
Merge remote branch 'gh/wip-rgw-simplelog'

* gh/wip-rgw-simplelog:
  rgw: add timestamp to high level log
  rgw: log host_bucket, http status
  rgw: simple request logging

Reviewed-by: Sage Weil <sage@newdream.net>
13 years agorgw: fix intent log processing
Yehuda Sadeh [Wed, 18 Jan 2012 07:42:08 +0000 (23:42 -0800)]
rgw: fix intent log processing

Intent log processing was completely broken. First, it wasn't
parsing the date correctly (due to failure to initalize strptime).
Second, it was trying to load the entire log to memory in one
piece (and in a racy way). This fixed bug #1948.

Signed-off-by: Yehuda Sadeh <yehuda@hq.newdream.net>
13 years agorgw: initialize tm before calling strptime
Yehuda Sadeh [Wed, 18 Jan 2012 07:40:52 +0000 (23:40 -0800)]
rgw: initialize tm before calling strptime

strptime assumes tm is already initialized.

Signed-off-by: Yehuda Sadeh <yehuda@hq.newdream.net>
13 years agoobjecter: some helpful multiop result debug output
Sage Weil [Wed, 18 Jan 2012 05:59:32 +0000 (21:59 -0800)]
objecter: some helpful multiop result debug output

Signed-off-by: Sage Weil <sage@newdream.net>
13 years agoobjecter: make getxattrs set rval on decode error
Sage Weil [Wed, 18 Jan 2012 05:32:11 +0000 (21:32 -0800)]
objecter: make getxattrs set rval on decode error

Signed-off-by: Sage Weil <sage@newdream.net>
13 years agoobjecter: add stat ops to op vector!
Sage Weil [Wed, 18 Jan 2012 05:31:56 +0000 (21:31 -0800)]
objecter: add stat ops to op vector!

They work better that way.

Signed-off-by: Sage Weil <sage@newdream.net>
13 years agoobjecter: gift reply data to outbl _after_ demuxing
Sage Weil [Wed, 18 Jan 2012 05:10:05 +0000 (21:10 -0800)]
objecter: gift reply data to outbl _after_ demuxing

Divvy up the result bl first, then gift the whole shebang to outbl.  If
we gift it first, there's nothing to demux (since we move intead of copy
the bufferlist ptrs).

Signed-off-by: Sage Weil <sage@newdream.net>
13 years agoMerge remote branch 'gh/master' into wip-op-data-mux
Sage Weil [Wed, 18 Jan 2012 01:33:57 +0000 (17:33 -0800)]
Merge remote branch 'gh/master' into wip-op-data-mux

13 years agoosd: make in/outdata split/merge helpers static OSDOp methods
Sage Weil [Wed, 18 Jan 2012 01:33:37 +0000 (17:33 -0800)]
osd: make in/outdata split/merge helpers static OSDOp methods

Avoid defining new global functions.

Also add basic doxygen descriptions.

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agorgw: log_show_next() fix reading of the next buffer
Yehuda Sadeh [Tue, 17 Jan 2012 23:10:58 +0000 (15:10 -0800)]
rgw: log_show_next() fix reading of the next buffer

Bug #1939. Failed reading large logs.

Signed-off-by: Yehuda Sadeh <yehuda@hq.newdream.net>
13 years agoMerge branch 'master' of ssh://github.com/NewDreamNetwork/ceph
Yehuda Sadeh [Tue, 17 Jan 2012 23:05:38 +0000 (15:05 -0800)]
Merge branch 'master' of ssh://github.com/NewDreamNetwork/ceph

13 years agoMerge remote branch 'gh/wip-backfill'
Sage Weil [Tue, 17 Jan 2012 22:23:58 +0000 (14:23 -0800)]
Merge remote branch 'gh/wip-backfill'

Reviewed-by: Samuel Just <samuel.just@dreamhost.com>
Conflicts:
src/ceph_mds.cc
src/ceph_osd.cc

13 years agofilestore: overwrite fsid during --mkfs
Sage Weil [Tue, 17 Jan 2012 19:41:15 +0000 (11:41 -0800)]
filestore: overwrite fsid during --mkfs

This mainly matters because read_fsid() now looks at the file size to
determine if it's an old- or new-style fsid, and not overwriting mean a
downgrade confuses things.  Not that anyone would do that, but...

Signed-off-by: Sage Weil <sage@newdream.net>
13 years agorgw: reset timestamp when processing starts
Yehuda Sadeh [Tue, 17 Jan 2012 21:39:43 +0000 (13:39 -0800)]
rgw: reset timestamp when processing starts

otherwise we'd count also the time waiting for the request.

Signed-off-by: Yehuda Sadeh <yehuda@hq.newdream.net>
13 years agohadoop: fix unix timestamp calculation in hadoop lib
Andrey Stepachev [Fri, 13 Jan 2012 15:12:24 +0000 (19:12 +0400)]
hadoop: fix unix timestamp calculation in hadoop lib

Hadoop always see wrong dates due of wrong timestamp calculation. Properly
convert nanoseconds to millis when adding.
Possibly fixes #1666.

Signed-off-by: Andrey Stepachev <octo@yandex-team.ru>
Signed-off-by: Greg Farnum <gregory.farnum@dreamhost.com>
13 years agohadoop: check for valid filehandler, before using in next calls
Andrey Stepachev [Fri, 13 Jan 2012 11:58:36 +0000 (15:58 +0400)]
hadoop: check for valid filehandler, before using in next calls

In case of nonexistent file, calling Client::replication()
triggers assert.

Signed-off-by: Andrey Stepachev <octo@yandex-team.ru>
Signed-off-by: Greg Farnum <gregory.farnum@dreamhost.com>
13 years agodoc: update control file for setting pg num on pool create
Greg Farnum [Tue, 10 Jan 2012 19:33:20 +0000 (11:33 -0800)]
doc: update control file for setting pg num on pool create

Signed-off-by: Greg Farnum <gregory.farnum@dreamhost.com>
13 years agoTestRados: fix {min,max}_stride_size initialization
Sage Weil [Tue, 17 Jan 2012 19:43:04 +0000 (11:43 -0800)]
TestRados: fix {min,max}_stride_size initialization

Signed-off-by: Sage Weil <sage@newdream.net>
13 years agoMerge branch 'master' of ssh://ceph.newdream.net/git/ceph
Yehuda Sadeh [Tue, 17 Jan 2012 18:54:57 +0000 (10:54 -0800)]
Merge branch 'master' of ssh://ceph.newdream.net/git/ceph

13 years agoosd: fix bind error checks
Sage Weil [Tue, 17 Jan 2012 18:51:00 +0000 (10:51 -0800)]
osd: fix bind error checks

Signed-off-by: Sage Weil <sage@newdream.net>
13 years agoMakefile: fix testkeys non-tcmalloc linkage
Sage Weil [Tue, 17 Jan 2012 18:44:17 +0000 (10:44 -0800)]
Makefile: fix testkeys non-tcmalloc linkage

Signed-off-by: Sage Weil <sage@newdream.net>
13 years agorgw: add timestamp to high level log
Yehuda Sadeh [Tue, 17 Jan 2012 17:54:31 +0000 (09:54 -0800)]
rgw: add timestamp to high level log

Signed-off-by: Yehuda Sadeh <yehuda@hq.newdream.net>
13 years agorgw: log host_bucket, http status
Yehuda Sadeh [Tue, 17 Jan 2012 01:46:49 +0000 (17:46 -0800)]
rgw: log host_bucket, http status

Signed-off-by: Yehuda Sadeh <yehuda@hq.newdream.net>
13 years agorgw: simple request logging
Yehuda Sadeh [Tue, 17 Jan 2012 01:03:19 +0000 (17:03 -0800)]
rgw: simple request logging

Signed-off-by: Yehuda Sadeh <yehuda@hq.newdream.net>
13 years agomds: abort startup if we fail to bind
Sage Weil [Mon, 16 Jan 2012 20:00:55 +0000 (12:00 -0800)]
mds: abort startup if we fail to bind

Signed-off-by: Sage Weil <sage@newdream.net>
13 years agoosd: abort on startup if we fail to bind to a port
Sage Weil [Mon, 16 Jan 2012 19:54:26 +0000 (11:54 -0800)]
osd: abort on startup if we fail to bind to a port

Signed-off-by: Sage Weil <sage@newdream.net>
13 years agoceph: fix "run_uml.sh" script
Alex Elder [Tue, 17 Jan 2012 16:21:16 +0000 (10:21 -0600)]
ceph: fix "run_uml.sh" script

Last-minute cleverness prior to checkin broke the "run-uml.sh" script.
Rearange where a few definitions are done to make it work again.

Signed-off-by: Alex Elder <elder@dreamhost.com>
13 years agoTestRados: implement max_seconds, reimplement argument parsing
Sage Weil [Tue, 17 Jan 2012 00:54:24 +0000 (16:54 -0800)]
TestRados: implement max_seconds, reimplement argument parsing

Signed-off-by: Sage Weil <sage@newdream.net>
13 years agoRadosModel: prefix line with m_op
Sage Weil [Tue, 17 Jan 2012 00:22:44 +0000 (16:22 -0800)]
RadosModel: prefix line with m_op

So we can guage progress...

Signed-off-by: Sage Weil <sage@newdream.net>
13 years agomds: fix uninitialized value in MClientLease::h
Sage Weil [Tue, 17 Jan 2012 00:16:08 +0000 (16:16 -0800)]
mds: fix uninitialized value in MClientLease::h

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agoMerge remote branch 'gh/master' into wip-op-data-mux
Sage Weil [Mon, 16 Jan 2012 22:38:37 +0000 (14:38 -0800)]
Merge remote branch 'gh/master' into wip-op-data-mux

13 years agomsgr: move operator<< for sockaddr_storage to msg_types.cc
Sage Weil [Mon, 16 Jan 2012 22:04:46 +0000 (14:04 -0800)]
msgr: move operator<< for sockaddr_storage to msg_types.cc

tcp.{cc,h} aren't built/linked cleanly.

Signed-off-by: Sage Weil <sage@newdream.net>
13 years agoqa/workunits/rados/load-gen-mix.sh
Sage Weil [Mon, 16 Jan 2012 21:26:01 +0000 (13:26 -0800)]
qa/workunits/rados/load-gen-mix.sh

10k objects, not 100k!

Signed-off-by: Sage Weil <sage@newdream.net>
13 years agoqa: rados load-gen: use rbd pool
Sage Weil [Mon, 16 Jan 2012 21:25:46 +0000 (13:25 -0800)]
qa: rados load-gen: use rbd pool

No replay interval.

13 years agorados: load-gen: wake up on reply
Sage Weil [Mon, 16 Jan 2012 18:30:38 +0000 (10:30 -0800)]
rados: load-gen: wake up on reply

So we can send requests more than once per second.

Signed-off-by: Sage Weil <sage@newdream.net>
13 years agorados: fix load-gen 'max-ops'
Sage Weil [Mon, 16 Jan 2012 18:25:00 +0000 (10:25 -0800)]
rados: fix load-gen 'max-ops'

This was mixed up with min/max_op_len.  And max_ops wasn't being used
the initial object creation stage, flooding the OSDs.  Or during run().

Signed-off-by: Sage Weil <sage@newdream.net>
13 years agolibrados: allow ObjectReadOperation::stat() to get time_t mtime
Sage Weil [Mon, 16 Jan 2012 18:19:19 +0000 (10:19 -0800)]
librados: allow ObjectReadOperation::stat() to get time_t mtime

We can't use the internal utime_t type here.

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agoMerge remote branch 'gh/master' into wip-op-data-mux
Sage Weil [Mon, 16 Jan 2012 18:16:23 +0000 (10:16 -0800)]
Merge remote branch 'gh/master' into wip-op-data-mux

Conflicts:
src/librados.cc
src/objclass/class_api.cc
src/rgw/rgw_rados.cc

13 years agoosd: recover_primary_got() -> recover_got()
Sage Weil [Mon, 16 Jan 2012 17:46:10 +0000 (09:46 -0800)]
osd: recover_primary_got() -> recover_got()

This is called on primary and replicas alike.

Signed-off-by: Sage Weil <sage@newdream.net>
13 years agoosd: clear missing set on replica when restarting backfill
Sage Weil [Mon, 16 Jan 2012 17:34:47 +0000 (09:34 -0800)]
osd: clear missing set on replica when restarting backfill

The primary does the same in PG::activate().

Signed-off-by: Sage Weil <sage@newdream.net>
13 years agomsgr: don't assert on socket(2) failure
Sage Weil [Mon, 16 Jan 2012 05:56:00 +0000 (21:56 -0800)]
msgr: don't assert on socket(2) failure

This can happen if we're connecting to an invalid address.  Generate an
error message instead of crashing.

See #1942
Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agomsgr: uninline operator<< on sockaddr_storage
Sage Weil [Sun, 15 Jan 2012 05:16:22 +0000 (21:16 -0800)]
msgr: uninline operator<< on sockaddr_storage

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agoosd: rev osd internal cluster protocol
Sage Weil [Sat, 14 Jan 2012 01:13:34 +0000 (17:13 -0800)]
osd: rev osd internal cluster protocol

Prevent backfill code from talking to pre-backfill code.

Signed-off-by: Sage Weil <sage@newdream.net>
13 years agoMerge branch 'stable'
Sage Weil [Fri, 13 Jan 2012 23:57:20 +0000 (15:57 -0800)]
Merge branch 'stable'

13 years agomds: require OSDREPLYMUX feature bit
Sage Weil [Fri, 13 Jan 2012 23:08:17 +0000 (15:08 -0800)]
mds: require OSDREPLYMUX feature bit

We use ObjectOperations now and need a new server to decompose replies
into their constituent components.

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agolibrados: require OSDREPLYMUX feature
Sage Weil [Fri, 13 Jan 2012 23:07:28 +0000 (15:07 -0800)]
librados: require OSDREPLYMUX feature

We need this since we now rely on the server telling us rvals and
payload_lens for each OSDOp.

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agodefine new OSDREPLYMUX feature bit
Sage Weil [Fri, 13 Jan 2012 23:07:00 +0000 (15:07 -0800)]
define new OSDREPLYMUX feature bit

This corresponds to the OSDs ability to pass payload_len hints and
return values for each OSDOp in the MSDOOpReply messages.

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agoobjecter: fix add_*() calls to use proper helper
Sage Weil [Fri, 13 Jan 2012 22:50:55 +0000 (14:50 -0800)]
objecter: fix add_*() calls to use proper helper

The helper resizes the other vectors; need that everywhere.

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agoReplicatedPG: munge truncate_seq 1/truncate_size -1 to seq 0/size 0
Samuel Just [Fri, 13 Jan 2012 19:15:42 +0000 (11:15 -0800)]
ReplicatedPG: munge truncate_seq 1/truncate_size -1 to seq 0/size 0

Truncate with seq 1 and size -1 is a noop.

Signed-off-by: Samuel Just <samuel.just@dreamhost.com>
Reviewed-by: Sage Weil <sage@newdream.net>
13 years agoReplicatedPG: munge truncate_seq 1/truncate_size -1 to seq 0/size 0
Samuel Just [Fri, 13 Jan 2012 19:15:42 +0000 (11:15 -0800)]
ReplicatedPG: munge truncate_seq 1/truncate_size -1 to seq 0/size 0

Truncate with seq 1 and size -1 is a noop.

Signed-off-by: Samuel Just <samuel.just@dreamhost.com>
Reviewed-by: Sage Weil <sage@newdream.net>
13 years agorgw: limit object PUT size
Yehuda Sadeh [Fri, 13 Jan 2012 20:19:35 +0000 (12:19 -0800)]
rgw: limit object PUT size

13 years agoobjecter: fix up stat, getxattrs handlers
Sage Weil [Fri, 13 Jan 2012 17:06:42 +0000 (09:06 -0800)]
objecter: fix up stat, getxattrs handlers

- try/catch
- stat mtime

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agov0.40 v0.40
Sage Weil [Fri, 13 Jan 2012 16:36:13 +0000 (08:36 -0800)]
v0.40

13 years agoMerge remote branch 'gh/master' into wip-backfill
Sage Weil [Fri, 13 Jan 2012 16:35:47 +0000 (08:35 -0800)]
Merge remote branch 'gh/master' into wip-backfill

13 years agolibrados: make new ObjectReadOperations arguments non-optional
Sage Weil [Fri, 13 Jan 2012 01:50:44 +0000 (17:50 -0800)]
librados: make new ObjectReadOperations arguments non-optional

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agorgw: use new librados ObjectReadOperation method arguments
Sage Weil [Fri, 13 Jan 2012 01:50:21 +0000 (17:50 -0800)]
rgw: use new librados ObjectReadOperation method arguments

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agoReplicatedPG: Update stat accounting for truncate during write
Samuel Just [Fri, 13 Jan 2012 01:07:35 +0000 (17:07 -0800)]
ReplicatedPG: Update stat accounting for truncate during write

Signed-off-by: Samuel Just <samuel.just@dreamhost.com>
Reviewed-by: Josh Durgin <josh.durgin@dreamhost.com>
13 years agorgw: wrap cls_cxx_map_* with try/catch around decoding
Yehuda Sadeh [Fri, 13 Jan 2012 00:39:30 +0000 (16:39 -0800)]
rgw: wrap cls_cxx_map_* with try/catch around decoding

13 years agorgw: bucket index creation and init in a single operation
Yehuda Sadeh [Fri, 13 Jan 2012 00:22:20 +0000 (16:22 -0800)]
rgw: bucket index creation and init in a single operation

13 years agolibrados: add ObjectOperation::exec
Yehuda Sadeh [Fri, 13 Jan 2012 00:17:56 +0000 (16:17 -0800)]
librados: add ObjectOperation::exec

13 years agosecret: move null check before strlen(key_name) deref
Sage Weil [Thu, 12 Jan 2012 23:25:21 +0000 (15:25 -0800)]
secret: move null check before strlen(key_name) deref

Coverity cid: 98
Signed-off-by: Sage Weil <sage@newdream.net>