]> git.apps.os.sepia.ceph.com Git - ceph.git/log
ceph.git
13 years agoStop rebuild of libcommon.la on "make dist"
Dan Mick [Sat, 28 Apr 2012 01:04:34 +0000 (18:04 -0700)]
Stop rebuild of libcommon.la on "make dist"

Fixes: 2356
Reviewed-by: Josh Durgin <josh.durgin@dreamhost.com>
13 years agoMerge branch 'next'
Samuel Just [Fri, 27 Apr 2012 21:00:09 +0000 (14:00 -0700)]
Merge branch 'next'

13 years agoFileJournal: simply flush by waiting for completions to empty
Samuel Just [Fri, 27 Apr 2012 04:29:45 +0000 (21:29 -0700)]
FileJournal: simply flush by waiting for completions to empty

Signed-off-by: Samuel Just <samuel.just@dreamhost.com>
13 years agoPG: in GetInfo Notify handler, fix peer_info_requested filter
Samuel Just [Fri, 27 Apr 2012 18:25:19 +0000 (11:25 -0700)]
PG: in GetInfo Notify handler, fix peer_info_requested filter

Signed-off-by: Samuel Just <samuel.just@dreamhost.com>
13 years agoMerge branch 'wip-lpg'
Sage Weil [Fri, 27 Apr 2012 04:57:23 +0000 (21:57 -0700)]
Merge branch 'wip-lpg'

Conflicts:
src/osd/OSDMap.h

13 years agoMerge branch 'next'
Sage Weil [Fri, 27 Apr 2012 04:53:36 +0000 (21:53 -0700)]
Merge branch 'next'

13 years agolibrados: test get/set of debug levels
Sage Weil [Fri, 27 Apr 2012 04:51:55 +0000 (21:51 -0700)]
librados: test get/set of debug levels

Also do some sanity checks on the subsystem log level settings.

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agoconfig: allow {get,set}_val on subsystem debug levels
Sage Weil [Fri, 27 Apr 2012 04:51:23 +0000 (21:51 -0700)]
config: allow {get,set}_val on subsystem debug levels

This mimics the allows you to get and set subsystem debug levels via the
normal config access methods.  Among other things, this allows librados
users to set debug levels.

Fixes: #2350
Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agoMerge branch 'next'
Josh Durgin [Fri, 27 Apr 2012 00:54:56 +0000 (17:54 -0700)]
Merge branch 'next'

13 years agoosdmap: filter out nonexistent osds from map
Sage Weil [Fri, 27 Apr 2012 00:42:12 +0000 (17:42 -0700)]
osdmap: filter out nonexistent osds from map

It is possible that the crush map contains device ids that do not exist as
osds.  Filter them out of the CRUSH result.

Drop the max devices assert, as that is trivially violated by adding a new
item to the crush map beyond max_osd (via 'ceph osd crush add ...').

Signed-off-by: Sage Weil <sage@newdream.net>
13 years agolibrbd: the length argument of aio_discard should be uint64_t
Josh Durgin [Fri, 27 Apr 2012 00:41:27 +0000 (17:41 -0700)]
librbd: the length argument of aio_discard should be uint64_t

size_t was accidentally copy-pasted.

Signed-off-by: Josh Durgin <josh.durgin@dreamhost.com>
13 years agofilestore: interprect any fiemap error as EOPNOTSUPP
Sage Weil [Fri, 27 Apr 2012 00:17:32 +0000 (17:17 -0700)]
filestore: interprect any fiemap error as EOPNOTSUPP

On 2.6.32-5-amd64 (debian) and XFS I'm getting EINVAL.

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agofilestore: fix a journal replay issue with collection_add()
Joao Eduardo Luis [Thu, 26 Apr 2012 23:31:55 +0000 (00:31 +0100)]
filestore: fix a journal replay issue with collection_add()

Signed-off-by: Joao Eduardo Luis <jecluis@gmail.com>
13 years agoosd: filter osds removed from probe set from peer_info_requested
Sage Weil [Wed, 25 Apr 2012 20:07:34 +0000 (13:07 -0700)]
osd: filter osds removed from probe set from peer_info_requested

Peef_info_requested should be a strict subset of the probe set.  Filter
osds that are dropped from probe from peer_info_requested.  We could also
restart peering from scratch here, but this is less expensive, because we
don't have to re-probe everyone.

Once we adjust the probe and peer_info_requested sets, (re)check if we're
done: we may have been blocedk on a previous peer_info_requested entry.

The situation I saw was:

  "recovery_state": [
        { "name": "Started\/Primary\/Peering\/GetInfo",
          "enter_time": "2012-04-25 14:39:56.905748",
          "requested_info_from": [
                { "osd": 193}]},
        { "name": "Started\/Primary\/Peering",
          "enter_time": "2012-04-25 14:39:56.905748",
          "probing_osds": [
                79,
                191,
                195],
          "down_osds_we_would_probe": [],
          "peering_blocked_by": []},
        { "name": "Started",
          "enter_time": "2012-04-25 14:39:56.905742"}]}

Once in this state, cycling osd.193 doesn't help, because the prior_set
is not affected.

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
Reviewed-by: Samuel Just <samuel.just@dreamhost.com>
13 years agoMerge branch 'next'
Samuel Just [Thu, 26 Apr 2012 22:53:27 +0000 (15:53 -0700)]
Merge branch 'next'

13 years agoPG: get_infos() should not post GotInfo
Samuel Just [Thu, 26 Apr 2012 22:44:21 +0000 (15:44 -0700)]
PG: get_infos() should not post GotInfo

The MNotifyRec handler also posts GotInfo under the same conditions
after calling get_infos().

Signed-off-by: Samuel Just <samuel.just@dreamhost.com>
13 years agoRevert "PG: whitelist MNotifyRec in started"
Samuel Just [Thu, 26 Apr 2012 22:38:42 +0000 (15:38 -0700)]
Revert "PG: whitelist MNotifyRec in started"

This reverts commit 9579365720818125a4b15741ae65e58948b9c69f.

13 years agotest_librbd: rollback when mapped to a snapshot should fail
Josh Durgin [Thu, 26 Apr 2012 18:33:56 +0000 (11:33 -0700)]
test_librbd: rollback when mapped to a snapshot should fail

Rollback is effectively a write, and returns -EROFS when mapped to a
snapshot since 3ef3ab8a15b4a80a340ac6039f395738223df759.

Signed-off-by: Josh Durgin <josh.durgin@dreamhost.com>
Reviewed-by: Samuel Just <samuel.just@dreamhost.com>
13 years agoMerge branch 'next'
Samuel Just [Thu, 26 Apr 2012 17:51:34 +0000 (10:51 -0700)]
Merge branch 'next'

13 years agoPG: whitelist MNotifyRec in started
Samuel Just [Thu, 26 Apr 2012 17:39:04 +0000 (10:39 -0700)]
PG: whitelist MNotifyRec in started

Signed-off-by: Samuel Just <samuel.just@dreamhost.com>
13 years agoRefCountedObject: fix constructor warning
Samuel Just [Thu, 26 Apr 2012 17:38:45 +0000 (10:38 -0700)]
RefCountedObject: fix constructor warning

Signed-off-by: Samuel Just <samuel.just@dreamhost.com>
13 years agoMerge branch 'wip-2342'
Yehuda Sadeh [Wed, 25 Apr 2012 22:23:34 +0000 (15:23 -0700)]
Merge branch 'wip-2342'

13 years agoRefCountedObject: relocate from msg/Message.h to common/RefCountedObj.h
Yehuda Sadeh [Wed, 25 Apr 2012 22:12:56 +0000 (15:12 -0700)]
RefCountedObject: relocate from msg/Message.h to common/RefCountedObj.h

Following a popular request.

Signed-off-by: Yehuda Sadeh <yehuda@hq.newdream.net>
13 years agolibrados: call notification under different thread context
Yehuda Sadeh [Tue, 24 Apr 2012 22:51:14 +0000 (15:51 -0700)]
librados: call notification under different thread context

This fixes #2342. We shouldn't call notify on the dispatcher
context. We should also make sure that we don't hold
the client lock while waiting for the responses.
Also, pushed the client_lock locking into the
ctx->notify().

Signed-off-by: Yehuda Sadeh <yehuda@hq.newdream.net>
13 years agoosd: filter osds removed from probe set from peer_info_requested
Sage Weil [Wed, 25 Apr 2012 20:07:34 +0000 (13:07 -0700)]
osd: filter osds removed from probe set from peer_info_requested

Peef_info_requested should be a strict subset of the probe set.  Filter
osds that are dropped from probe from peer_info_requested.  We could also
restart peering from scratch here, but this is less expensive, because we
don't have to re-probe everyone.

Once we adjust the probe and peer_info_requested sets, (re)check if we're
done: we may have been blocedk on a previous peer_info_requested entry.

The situation I saw was:

  "recovery_state": [
        { "name": "Started\/Primary\/Peering\/GetInfo",
          "enter_time": "2012-04-25 14:39:56.905748",
          "requested_info_from": [
                { "osd": 193}]},
        { "name": "Started\/Primary\/Peering",
          "enter_time": "2012-04-25 14:39:56.905748",
          "probing_osds": [
                79,
                191,
                195],
          "down_osds_we_would_probe": [],
          "peering_blocked_by": []},
        { "name": "Started",
          "enter_time": "2012-04-25 14:39:56.905742"}]}

Once in this state, cycling osd.193 doesn't help, because the prior_set
is not affected.

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
Reviewed-by: Samuel Just <samuel.just@dreamhost.com>
13 years agomon: decode old PGMap Incrementals differently from new ones
Greg Farnum [Tue, 24 Apr 2012 22:13:02 +0000 (15:13 -0700)]
mon: decode old PGMap Incrementals differently from new ones

We need to distinguish between the old 0 (meaning undefined) and
the new 0 (meaning switch to 0 and disable the flags). So rev the
encoding version on PGMap::Incremental, and if you decode an old
version with [near]full_ratio == 0, set the ratio to -1 instead. Then
when applying the Incremental interpret -1 as no change.

Signed-off-by: Greg Farnum <gregory.farnum@dreamhost.com>
Reviewed-by: Sage Weil <sage@newdream.net>
13 years agoMerge remote branch 'origin/wip-rbd-snapid' into next
Josh Durgin [Tue, 24 Apr 2012 20:58:56 +0000 (13:58 -0700)]
Merge remote branch 'origin/wip-rbd-snapid' into next

Reviewed-by: Sage Weil <sage.weil@dreamhost.com>
13 years agolibrbd: pass errors removing head back to user
Sage Weil [Tue, 24 Apr 2012 16:43:44 +0000 (09:43 -0700)]
librbd: pass errors removing head back to user

In particular, the OSD may return EBUSY if there are still watchers.
Ignore ENOENT, as that may indicate we are cleaning up a previously
aborted removal.

Fixes: #2311
Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agomon: clean up handle_osd_timeouts a bit
Sage Weil [Tue, 24 Apr 2012 16:59:34 +0000 (09:59 -0700)]
mon: clean up handle_osd_timeouts a bit

Signed-off-by: Sage Weil <sage@newdream.net>
13 years agomon: fix pg stats timeout
Sage Weil [Tue, 24 Apr 2012 17:55:18 +0000 (10:55 -0700)]
mon: fix pg stats timeout

We clear out the osd entry when an osd goes up or down.  Thus, if we find
it missing from an up osd, we should start the timer.  Otherwise we get
behavior like this

2012-04-24 13:22:47.888291 7fa5bc587700 mon.peon5752@0(leader).osd e21633 OSDMonitor::handle_osd_timeouts: never got MOSDPGStat info from osd 521. Marking down!
2012-04-24 13:22:50.076394 7fa5bcd88700 log [INF] : osd.521 [2607:f298:4:2243::7088]:6806/53217 boot
2012-04-24 13:22:52.903558 7fa5bc587700 mon.peon5752@0(leader).osd e21638 OSDMonitor::handle_osd_timeouts: never got MOSDPGStat info from osd 521. Marking down!
2012-04-24 13:23:15.144532 7fa5bcd88700 log [INF] : osd.521 [2607:f298:4:2243::7088]:6806/53217 boot
2012-04-24 13:23:17.967118 7fa5bc587700 mon.peon5752@0(leader).osd e21663 OSDMonitor::handle_osd_timeouts: never got MOSDPGStat info from osd 521. Marking down!
2012-04-24 13:23:22.173778 7fa5bcd88700 log [INF] : osd.521 [2607:f298:4:2243::7088]:6806/53217 boot
2012-04-24 13:23:22.981556 7fa5bc587700 mon.peon5752@0(leader).osd e21668 OSDMonitor::handle_osd_timeouts: never got MOSDPGStat info from osd 521. Marking down!
2012-04-24 13:23:45.245380 7fa5bcd88700 log [INF] : osd.521 [2607:f298:4:2243::7088]:6806/53217 boot

when the pg stats message doesn't arrive quickly enough.

Fixes: #2341
Signed-off-by: Sage Weil <sage@newdream.net>
Reviewed-by: Greg Farnum <gregory.farnum@dreamhost.com>
13 years agomon: fix whitespace
Sage Weil [Tue, 24 Apr 2012 17:49:30 +0000 (10:49 -0700)]
mon: fix whitespace

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agomon: fix pgmonitor ratio commands
Greg Farnum [Tue, 24 Apr 2012 17:30:43 +0000 (10:30 -0700)]
mon: fix pgmonitor ratio commands

The indices were set incorrectly when I whipped thi sup. That's what
you get for not testing nor being careful enough in review.

Signed-off-by: Greg Farnum <gregory.farnum@dreamhost.com>
13 years agotest_rbd: add tests for snap_set and more complicated resizing
Josh Durgin [Tue, 24 Apr 2012 15:35:43 +0000 (08:35 -0700)]
test_rbd: add tests for snap_set and more complicated resizing

* snap_set to a deleted (and recreated) snapshot
* resizing down (truncating) and back up
* resizing to non-object-aligned sizes

Signed-off-by: Josh Durgin <josh.durgin@dreamhost.com>
13 years agolibrbd: reset needs_refresh flag before re-reading header
Josh Durgin [Tue, 24 Apr 2012 06:46:51 +0000 (23:46 -0700)]
librbd: reset needs_refresh flag before re-reading header

This way we can't miss an update if we get a notify during ictx_refresh.
Specifically, a race like this:

Thread 1               Thread 2              Process 2

ictx_refresh()
read_header()
                                             snap_create()
                       notify()
                       need_refresh = true
process header...
need_refresh = false

If this happened, we would not re-read the header with the new
snapshot, so the snapshot would not happen at the intended point
in time, but only after we re-read the header again.

Signed-off-by: Josh Durgin <josh.durgin@dreamhost.com>
13 years agolibrbd: clean up snapshot handling a bit
Josh Durgin [Tue, 24 Apr 2012 01:04:27 +0000 (18:04 -0700)]
librbd: clean up snapshot handling a bit

* snapid should determine whether our mapped snapshot is gone, not snapname
* snap_set(<nonexistent_snap>) shouldn't reset us to CEPH_NOSNAP
* snapname should be set before using the it in the perfcounter name
* snapname and image name don't need to be passed as arguments since an
  ImageCtx already contains that info
* ictx_check() doesn't need to check for non-existent snaps - only I/Os care,
  so check in check_io() instead

Signed-off-by: Josh Durgin <josh.durgin@dreamhost.com>
13 years agolibrbd: clarify handle_sparse_read condition
Josh Durgin [Mon, 23 Apr 2012 18:58:57 +0000 (11:58 -0700)]
librbd: clarify handle_sparse_read condition

The earlier condition is >. != means < at this point, and the nesting
is unnecessary.

Signed-off-by: Josh Durgin <josh.durgin@dreamhost.com>
13 years agorun_seed_to.sh: rework the script, make it more flexible and broaden the tests.
Sage Weil [Mon, 23 Apr 2012 20:57:25 +0000 (13:57 -0700)]
run_seed_to.sh: rework the script, make it more flexible and broaden the tests.

Allow for '-h' and other options such as disabling the journal sync tests,
defining it is to be run on a btrfs FS, enabling exit on error (default is
now 'off'), and allow certain env variables to specify additional options
to each store.

Signed-off-by: Joao Eduardo Luis <jecluis@gmail.com>
13 years agolibrbd: rev version for discard addition
Sage Weil [Tue, 24 Apr 2012 02:43:25 +0000 (19:43 -0700)]
librbd: rev version for discard addition

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agoosdmaptool: fix clitests for lack of localized pgs
Sage Weil [Fri, 20 Apr 2012 19:57:32 +0000 (12:57 -0700)]
osdmaptool: fix clitests for lack of localized pgs

Signed-off-by: Sage Weil <sage@newdream.net>
13 years agomon: load CompatSet features on startup
Sage Weil [Fri, 20 Apr 2012 19:55:35 +0000 (12:55 -0700)]
mon: load CompatSet features on startup

Signed-off-by: Sage Weil <sage@newdream.net>
13 years agomon: set auid for mon-created pools to 0
Sage Weil [Fri, 20 Apr 2012 19:53:41 +0000 (12:53 -0700)]
mon: set auid for mon-created pools to 0

Signed-off-by: Sage Weil <sage@newdream.net>
13 years agomon: ignore/remove localized pgs
Sage Weil [Fri, 20 Apr 2012 19:51:30 +0000 (12:51 -0700)]
mon: ignore/remove localized pgs

This will trigger on the next OSDMap update.

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agotest_ioctls: remove preferred osd
Sage Weil [Fri, 20 Apr 2012 04:54:31 +0000 (21:54 -0700)]
test_ioctls: remove preferred osd

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agocephfs: remove preferred osd setting
Sage Weil [Fri, 20 Apr 2012 04:53:38 +0000 (21:53 -0700)]
cephfs: remove preferred osd setting

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agomds: remove preferred from ceph_file_layout
Sage Weil [Fri, 20 Apr 2012 04:51:26 +0000 (21:51 -0700)]
mds: remove preferred from ceph_file_layout

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agoclient: rip out preferred_pg thing
Sage Weil [Fri, 20 Apr 2012 04:48:43 +0000 (21:48 -0700)]
client: rip out preferred_pg thing

This wasn't even named properly.  Blech.

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agolibcephfs: disable ceph_set_default_preferred_pg
Sage Weil [Fri, 20 Apr 2012 04:48:24 +0000 (21:48 -0700)]
libcephfs: disable ceph_set_default_preferred_pg

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agoosdmap: do not forcefeed preferred osd to crush
Sage Weil [Fri, 20 Apr 2012 05:00:54 +0000 (22:00 -0700)]
osdmap: do not forcefeed preferred osd to crush

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agoosd: remove preferred from object_locator_t
Sage Weil [Fri, 20 Apr 2012 04:45:26 +0000 (21:45 -0700)]
osd: remove preferred from object_locator_t

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agoosd: ignore localized pgs
Sage Weil [Fri, 20 Apr 2012 04:40:54 +0000 (21:40 -0700)]
osd: ignore localized pgs

- do not load them on startup
- ignore any we hear about over the wire

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agoosd: remove localized pgs from pg_pool_t
Sage Weil [Fri, 20 Apr 2012 04:40:34 +0000 (21:40 -0700)]
osd: remove localized pgs from pg_pool_t

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agoMerge remote-tracking branch 'gh/wip-discard'
Sage Weil [Mon, 23 Apr 2012 20:58:34 +0000 (13:58 -0700)]
Merge remote-tracking branch 'gh/wip-discard'

13 years agorun_seed_to.sh: remove stray arg
Sage Weil [Mon, 23 Apr 2012 16:30:50 +0000 (09:30 -0700)]
run_seed_to.sh: remove stray arg

This crept in in commit d1740bd586db80068fc0292223cf21911de66428.

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agoperfcounters: tolerate multiple loggers with the same name
Sage Weil [Sun, 22 Apr 2012 21:23:52 +0000 (14:23 -0700)]
perfcounters: tolerate multiple loggers with the same name

Make them unique by appending -<ptr>, so that the json we dump will remain
valid.

We may also want to allow people to share counters of the same type.

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agoMerge branch 'master' into wip-discard
Sage Weil [Sun, 22 Apr 2012 04:01:49 +0000 (21:01 -0700)]
Merge branch 'master' into wip-discard

13 years agoMakefile: disable format-security warning
Sage Weil [Sun, 22 Apr 2012 03:28:45 +0000 (20:28 -0700)]
Makefile: disable format-security warning

The prt() varargs function generates this warning

test/rbd/fsx.c: In function ‘prt’:
warning: test/rbd/fsx.c:203:2: format not a string literal and no format arguments [-Wformat-security]
warning: test/rbd/fsx.c:205:3: format not a string literal and no format arguments [-Wformat-security]

Disable that check for the fsx build only.

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agofilestore: verify that fiemap works
Sage Weil [Sat, 21 Apr 2012 21:31:42 +0000 (14:31 -0700)]
filestore: verify that fiemap works

Check for a bug present in older versions of ext4.  If present, disable
FIEMAP.  See #2328.

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agorados: fix error printout for mapext
Sage Weil [Sat, 21 Apr 2012 20:32:46 +0000 (13:32 -0700)]
rados: fix error printout for mapext

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agolibrbd: instrument with perfcounters
Sage Weil [Sat, 21 Apr 2012 19:50:05 +0000 (12:50 -0700)]
librbd: instrument with perfcounters

Track IO operations on a per-image basis.

Implements: #1451
Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agolibrbd: fix ictx_check pointer weirdness by using std::string
Sage Weil [Sat, 21 Apr 2012 00:13:08 +0000 (17:13 -0700)]
librbd: fix ictx_check pointer weirdness by using std::string

I was seeing failures of LibRBD.TestIOToSnapshot where we would fail to
refresh after rollback, even though the snap existed.  I assume it is
because the std::string whose c_str() we were pointing to was reallocated.

Use a std::string here instead.

This code is weird.

Signed-off-by: Sage Weil <sage@newdream.net>
13 years agoFileJournal: don't wait flusher until completions are queued
Samuel Just [Fri, 20 Apr 2012 23:57:48 +0000 (16:57 -0700)]
FileJournal: don't wait flusher until completions are queued

Fixes: #2324
Signed-off-by: Samuel Just <samuel.just@dreamhost.com>
13 years agofilestore: fix collection_add journal replay problem
Sage Weil [Fri, 20 Apr 2012 23:56:57 +0000 (16:56 -0700)]
filestore: fix collection_add journal replay problem

In collection_add we have a two-phase guard set on the linked object via
the old name.  During replay, we might see that the dest name is missing
and replay the operation, and in the process overwrite a newer guard with
an older one.

Avoid this by checking the source name too, and skipping the operation
entirely if a new guard exists.

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agoFileStoreDiff: flip sense of diff*() methods around
Sage Weil [Thu, 19 Apr 2012 22:31:51 +0000 (15:31 -0700)]
FileStoreDiff: flip sense of diff*() methods around

true means diff, false means same.

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agotest_idempotent_sequence: Use FileStoreDiff class instead.
Sage Weil [Fri, 20 Apr 2012 23:55:55 +0000 (16:55 -0700)]
test_idempotent_sequence: Use FileStoreDiff class instead.

Use FileStoreDiff instead of having the diff code embedded in the test,
allowing for more tests and people to use the code in case it comes in
hand.

Signed-off-by: Joao Eduardo Luis <jecluis@gmail.com>
13 years agotest_idempotent_sequence: Output missing options on "usage".
Joao Eduardo Luis [Sun, 15 Apr 2012 19:46:39 +0000 (20:46 +0100)]
test_idempotent_sequence: Output missing options on "usage".

Signed-off-by: Joao Eduardo Luis <jecluis@gmail.com>
13 years agoFileStoreDiff: check if two FileStores match.
Joao Eduardo Luis [Mon, 16 Apr 2012 01:50:44 +0000 (02:50 +0100)]
FileStoreDiff: check if two FileStores match.

This code should be on a stand-alone class, instead of being embedded on
a single test, in case someone or something find it useful somewhere down
the line.

Signed-off-by: Joao Eduardo Luis <jecluis@gmail.com>
13 years agolibrbd: allow image resize to non-block boundaries
Sage Weil [Thu, 19 Apr 2012 23:18:55 +0000 (16:18 -0700)]
librbd: allow image resize to non-block boundaries

The caller is still invalidating the entire cache, so we don't need to
deal with discard at this level.  That might be worth cleaning up
later, though.

Fixes: #2296
Signed-off-by: Sage Weil <sage@newdream.net>
13 years agoobjectcacher: rename truncate_set -> discard_set, and use discard
Sage Weil [Thu, 19 Apr 2012 23:17:48 +0000 (16:17 -0700)]
objectcacher: rename truncate_set -> discard_set, and use discard

Do not assume the object extents are at the trailing edge of objects.
Instead, discard arbitrary extents.  Fix callers.

Signed-off-by: Sage Weil <sage@newdream.net>
13 years agoobjectcacher: implement Object::discard()
Sage Weil [Thu, 19 Apr 2012 23:15:17 +0000 (16:15 -0700)]
objectcacher: implement Object::discard()

Discard a range of bytes from an object.

Signed-off-by: Sage Weil <sage@newdream.net>
13 years agolibrbd: fix debug output
Sage Weil [Thu, 19 Apr 2012 23:14:15 +0000 (16:14 -0700)]
librbd: fix debug output

objects is misleading here, these are byte offsets

Signed-off-by: Sage Weil <sage@newdream.net>
13 years agolibrbd: make discard invalidate the range in cache
Sage Weil [Thu, 19 Apr 2012 20:26:32 +0000 (13:26 -0700)]
librbd: make discard invalidate the range in cache

Fed this to test_librbd_fsx and it was happy.

Signed-off-by: Sage Weil <sage@newdream.net>
13 years agolibrbd: fix zeroing of trailing bits on short reads that span objects
Sage Weil [Thu, 19 Apr 2012 18:00:20 +0000 (11:00 -0700)]
librbd: fix zeroing of trailing bits on short reads that span objects

handle_sparse_read() was taking buf_ofs and buf_len, but buf_len was being
interpreted as the total size of the buffer, not the length of the extent
in the buffer start at buf_ofs.  Both callers pass in an extent length, so
fix the zero code to do the right thing.

Specifically, the behavior I saw was:

 - read range spanning 2 objects, trailing 20k and leading 50k
 - first object didn't exist, zeroed first 20k of buffer
 - second object didn't exist, zeroed next 30k (50k-20k) of buffer
   - the last 20k of buffer was unzeroed.

Signed-off-by: Sage Weil <sage@newdream.net>
13 years agolibrbd: fix debug output for image resize
Sage Weil [Thu, 19 Apr 2012 17:57:30 +0000 (10:57 -0700)]
librbd: fix debug output for image resize

Print old -> new, not new -> old.

Signed-off-by: Sage Weil <sage@newdream.net>
13 years agotest_librbd_fsx: port newer xfsprogs version
Sage Weil [Thu, 19 Apr 2012 17:04:52 +0000 (10:04 -0700)]
test_librbd_fsx: port newer xfsprogs version

Builds and runs... for a few ops at least.

Signed-off-by: Sage Weil <sage@newdream.net>
13 years agorevert to xfstests' fsx, which has discard support
Sage Weil [Thu, 19 Apr 2012 16:27:34 +0000 (09:27 -0700)]
revert to xfstests' fsx, which has discard support

13 years agoadmin_socket: add a separate debug subsys/level
Sage Weil [Fri, 20 Apr 2012 04:04:56 +0000 (21:04 -0700)]
admin_socket: add a separate debug subsys/level

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agolog: prefix dump with line numbers
Sage Weil [Fri, 20 Apr 2012 23:36:54 +0000 (16:36 -0700)]
log: prefix dump with line numbers

This makes it easier to interpret the dump, and makes it obvious what is
dump (and potentially a dup of something that was already logged) and what
is not.

Signed-off-by: Sage Weil <sage@newdream.net>
13 years agotest_filestore_workloadgen: track pg log size in memory
Sage Weil [Fri, 20 Apr 2012 22:35:44 +0000 (15:35 -0700)]
test_filestore_workloadgen: track pg log size in memory

Avoid a stat!

Signed-off-by: Sage Weil <sage@newdream.net>
13 years agotest_filestore_workloadgen: whitespace
Sage Weil [Fri, 20 Apr 2012 22:30:45 +0000 (15:30 -0700)]
test_filestore_workloadgen: whitespace

Signed-off-by: Sage Weil <sage@newdream.net>
13 years agoorganize test_filestore_idempotent*
Sage Weil [Fri, 20 Apr 2012 22:25:32 +0000 (15:25 -0700)]
organize test_filestore_idempotent*

Signed-off-by: Sage Weil <sage@newdream.net>
13 years agoremove hopelessly flawed test_filestore_idempotent
Sage Weil [Fri, 20 Apr 2012 22:23:17 +0000 (15:23 -0700)]
remove hopelessly flawed test_filestore_idempotent

Signed-off-by: Sage Weil <sage@newdream.net>
13 years agotest_store -> test_filestore
Sage Weil [Fri, 20 Apr 2012 22:22:36 +0000 (15:22 -0700)]
test_store -> test_filestore

and organize source

Signed-off-by: Sage Weil <sage@newdream.net>
13 years agotest_wrkldgen -> test_filestore_workloadgen
Sage Weil [Fri, 20 Apr 2012 22:20:16 +0000 (15:20 -0700)]
test_wrkldgen -> test_filestore_workloadgen

Also put the code in src/test/filestore/.

Signed-off-by: Sage Weil <sage@newdream.net>
13 years agoceph-authtool: rename cli test dir
Sage Weil [Fri, 20 Apr 2012 20:28:23 +0000 (13:28 -0700)]
ceph-authtool: rename cli test dir

Signed-off-by: Sage Weil <sage@newdream.net>
13 years agoceph-conf: rename cli test dir
Sage Weil [Fri, 20 Apr 2012 20:28:03 +0000 (13:28 -0700)]
ceph-conf: rename cli test dir

Signed-off-by: Sage Weil <sage@newdream.net>
13 years agoMerge branch 'stable'
Sage Weil [Fri, 20 Apr 2012 20:22:22 +0000 (13:22 -0700)]
Merge branch 'stable'

Conflicts:
src/osd/OpRequest.cc

13 years agoOpRequest: mark_event output is now at debug 5
Sage Weil [Fri, 20 Apr 2012 20:21:14 +0000 (13:21 -0700)]
OpRequest: mark_event output is now at debug 5

Signed-off-by: Samuel Just <samuel.just@dreamhost.com>
13 years agoconfig: dump subsys log levels with --show-config
Sage Weil [Fri, 20 Apr 2012 05:24:43 +0000 (22:24 -0700)]
config: dump subsys log levels with --show-config

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agoosd: do not create localized pgs
Sage Weil [Fri, 20 Apr 2012 04:29:43 +0000 (21:29 -0700)]
osd: do not create localized pgs

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agoMerge branch 'wip-2313'
Yehuda Sadeh [Thu, 19 Apr 2012 23:43:36 +0000 (16:43 -0700)]
Merge branch 'wip-2313'

13 years agorgw: can't remove user that owns data
Sage Weil [Thu, 19 Apr 2012 23:25:03 +0000 (16:25 -0700)]
rgw: can't remove user that owns data

This is a workaround for #1681. We don't allow the removal of
user that still has data.

Signed-off-by: Yehuda Sadeh <yehuda@hq.newdream.net>
Reviewed-by: Sage Weil <sage@newdream.net>
13 years agoFileStore: don't read reference to writeq head after pop_write
Samuel Just [Thu, 19 Apr 2012 22:22:53 +0000 (15:22 -0700)]
FileStore: don't read reference to writeq head after pop_write

Signed-off-by: Samuel Just <samuel.just@dreamhost.com>
13 years agorgw: bucket HEAD operation should return 200, not 204
Yehuda Sadeh [Thu, 19 Apr 2012 20:21:17 +0000 (13:21 -0700)]
rgw: bucket HEAD operation should return 200, not 204

Signed-off-by: Yehuda Sadeh <yehuda@hq.newdream.net>
13 years agoobsync: section 8 -> 1
Sage Weil [Thu, 19 Apr 2012 05:08:28 +0000 (22:08 -0700)]
obsync: section 8 -> 1

Fixes: #2263
Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agorgw: HEAD bucket, don't dump rounded size
Yehuda Sadeh [Thu, 19 Apr 2012 16:23:31 +0000 (09:23 -0700)]
rgw: HEAD bucket, don't dump rounded size

Signed-off-by: Yehuda Sadeh <yehuda@hq.newdream.net>
13 years agoosd: fix vector array out of bounds
Sage Weil [Thu, 19 Apr 2012 16:19:43 +0000 (09:19 -0700)]
osd: fix vector array out of bounds

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agoceph-fuse: only call common_init_finish in child; fix admin socket
Sage Weil [Thu, 19 Apr 2012 04:58:14 +0000 (21:58 -0700)]
ceph-fuse: only call common_init_finish in child; fix admin socket

If we do it in the parent and child, we break the admin socket (among
other things).

Fixes: #2293
Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agoqa: drop rgw.py from test_python.sh workunit
Sage Weil [Thu, 19 Apr 2012 04:27:49 +0000 (21:27 -0700)]
qa: drop rgw.py from test_python.sh workunit

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agoceph.spec.in: drop rgw.py
Sage Weil [Thu, 19 Apr 2012 04:27:39 +0000 (21:27 -0700)]
ceph.spec.in: drop rgw.py

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agoMakefile: drop rgw.py
Sage Weil [Thu, 19 Apr 2012 04:26:53 +0000 (21:26 -0700)]
Makefile: drop rgw.py

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>