]> git.apps.os.sepia.ceph.com Git - ceph.git/log
ceph.git
13 years agoosd: more heartbeat debug
Sage Weil [Fri, 30 Mar 2012 15:45:52 +0000 (08:45 -0700)]
osd: more heartbeat debug

Signed-off-by: Sage Weil <sage@newdream.net>
13 years agoosd: don't fail new heartbeat peers
Sage Weil [Fri, 30 Mar 2012 03:54:25 +0000 (20:54 -0700)]
osd: don't fail new heartbeat peers

last_tx may be 0 because we just added this peer; don't mark them down
yet!

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agoosd: ignore peer epoch of 0 on ping reply
Sage Weil [Fri, 30 Mar 2012 03:34:55 +0000 (20:34 -0700)]
osd: ignore peer epoch of 0 on ping reply

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agoosd: discard heartbeat_peer in note_down_osd
Sage Weil [Thu, 29 Mar 2012 05:32:30 +0000 (22:32 -0700)]
osd: discard heartbeat_peer in note_down_osd

Discard the heartbeat_peer as soon as we find out, along with queued
failures, or else the heartbeat_check may come along (without map_lock)
and requeue a failure.  And then later, when we try to report it, we'll
osdmap->get_inst() on a now-down OSD and fail miserably.

Reported-by: Wido den Hollander <wido@widodh.nl>
Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agoosd: rename hbin -> hbclient, hbout -> hbserver
Sage Weil [Mon, 26 Mar 2012 16:53:50 +0000 (09:53 -0700)]
osd: rename hbin -> hbclient, hbout -> hbserver

This is way less confusing.

Signed-off-by: Sage Weil <sage@newdream.net>
13 years agoosd: send pings from hbin
Sage Weil [Mon, 26 Mar 2012 16:50:51 +0000 (09:50 -0700)]
osd: send pings from hbin

Fixes: #2212
Signed-off-by: Sage Weil <sage@newdream.net>
13 years agoosd: simplify heartbeat logic
Sage Weil [Thu, 22 Mar 2012 14:50:44 +0000 (07:50 -0700)]
osd: simplify heartbeat logic

Simplify heartbeats to use a simple request/reply model.

 - avoid any weirdness with map update timing
 - no from/to distinction
 - lossy client/server model

Signed-off-by: Sage Weil <sage@newdream.net>
13 years agoceph: --concise by default, add --verbose option
Sage Weil [Fri, 30 Mar 2012 04:31:20 +0000 (21:31 -0700)]
ceph: --concise by default, add --verbose option

It's time.

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agoMerge remote branch 'upstream/wip_latency'
Samuel Just [Thu, 29 Mar 2012 20:15:39 +0000 (13:15 -0700)]
Merge remote branch 'upstream/wip_latency'

13 years agoReplicatedPG: ctx might not contain an OpRequest
Samuel Just [Wed, 28 Mar 2012 22:54:57 +0000 (15:54 -0700)]
ReplicatedPG: ctx might not contain an OpRequest

Signed-off-by: Samuel Just <samuel.just@dreamhost.com>
13 years agoFileJournal: optionally zero journal on create
Samuel Just [Tue, 27 Mar 2012 16:32:01 +0000 (09:32 -0700)]
FileJournal: optionally zero journal on create

Signed-off-by: Samuel Just <samuel.just@dreamhost.com>
13 years agoFileJournal: use DSYNC for directio path
Samuel Just [Mon, 26 Mar 2012 20:48:23 +0000 (13:48 -0700)]
FileJournal: use DSYNC for directio path

Signed-off-by: Samuel Just <samuel.just@dreamhost.com>
13 years agoFileStore: Pass OpRequestRef into filestore in queue_transaction
Samuel Just [Sat, 24 Mar 2012 05:54:41 +0000 (22:54 -0700)]
FileStore: Pass OpRequestRef into filestore in queue_transaction

This allow us to track op progress through the filestore.

Signed-off-by: Samuel Just <samuel.just@dreamhost.com>
13 years agoosd/: OpRequest implements TrackedOp for passing into filestore
Samuel Just [Thu, 29 Mar 2012 00:10:29 +0000 (17:10 -0700)]
osd/: OpRequest implements TrackedOp for passing into filestore

Signed-off-by: Samuel Just <samuel.just@dreamhost.com>
13 years agorgw: replace dout with ldout
Yehuda Sadeh [Wed, 28 Mar 2012 15:34:11 +0000 (08:34 -0700)]
rgw: replace dout with ldout

librgw can't use g_ceph_context

Signed-off-by: Yehuda Sadeh <yehuda@hq.newdream.net>
13 years agoMerge branch 'stable'
Sage Weil [Wed, 28 Mar 2012 02:58:54 +0000 (19:58 -0700)]
Merge branch 'stable'

13 years agothrottle: fix off by one issue
Yehuda Sadeh [Tue, 27 Mar 2012 23:27:26 +0000 (16:27 -0700)]
throttle: fix off by one issue

We were blocking only if we exceeded max count, not if
we reached it.

Signed-off-by: Yehuda Sadeh <yehuda@hq.newdream.net>
13 years agorgw: throttle incoming requests
Yehuda Sadeh [Tue, 27 Mar 2012 22:57:50 +0000 (15:57 -0700)]
rgw: throttle incoming requests

Don't accept more than the number of threads, otherwise if cluster is
backed up for any reason we'd end up exhausting resources.

Signed-off-by: Yehuda Sadeh <yehuda@hq.newdream.net>
13 years agoMerge branch 'wip-intent-fixes'
Yehuda Sadeh [Tue, 27 Mar 2012 22:35:45 +0000 (15:35 -0700)]
Merge branch 'wip-intent-fixes'

13 years agoMerge branch 'master' of ssh://github.com/ceph/ceph
Yehuda Sadeh [Tue, 27 Mar 2012 22:35:38 +0000 (15:35 -0700)]
Merge branch 'master' of ssh://github.com/ceph/ceph

13 years agorgw: minor style fixes
Yehuda Sadeh [Tue, 27 Mar 2012 22:35:03 +0000 (15:35 -0700)]
rgw: minor style fixes

Signed-off-by: Yehuda Sadeh <yehuda@hq.newdream.net>
13 years agorgw: all intent log operations are now async
Yehuda Sadeh [Tue, 27 Mar 2012 21:33:17 +0000 (14:33 -0700)]
rgw: all intent log operations are now async

That includes removing a directory index object, and the removal of
the actual intent log object.

Signed-off-by: Yehuda Sadeh <yehuda@hq.newdream.net>
13 years agoosd: increase default heartbeat_interval to 6 seconds
Sage Weil [Tue, 27 Mar 2012 19:37:37 +0000 (12:37 -0700)]
osd: increase default heartbeat_interval to 6 seconds

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agorgw: remove pool_list(), can't list_objects() on system buckets
Yehuda Sadeh [Tue, 27 Mar 2012 21:12:55 +0000 (14:12 -0700)]
rgw: remove pool_list(), can't list_objects() on system buckets

pool_list() was broken, replaced now with pool_iterate(). list_objects()
shouldn't be used any more with system buckets (raw pools), we can't
have it return sorted list of objects without reading the entire list.

Signed-off-by: Yehuda Sadeh <yehuda@hq.newdream.net>
13 years agorgw: intent log processing uses new pool_iterate()
Yehuda Sadeh [Tue, 27 Mar 2012 21:02:21 +0000 (14:02 -0700)]
rgw: intent log processing uses new pool_iterate()

intead of pool_list(), which is broken (assuming pgls results are
sorted, which are not).

Signed-off-by: Yehuda Sadeh <yehuda@hq.newdream.net>
13 years agoMerge branch 'misc-fixes-for-review'
Greg Farnum [Tue, 27 Mar 2012 20:57:54 +0000 (13:57 -0700)]
Merge branch 'misc-fixes-for-review'

13 years agomon: Paxos needs to store the latest version permanently on-disk.
Greg Farnum [Fri, 23 Mar 2012 17:31:29 +0000 (10:31 -0700)]
mon: Paxos needs to store the latest version permanently on-disk.

Previously it was only storing this m->latest_value in the stash,
which of course got overwritten. And then when somebody tried to read
it back, it failed!
Instead, require that the message include the regular version (not
just the stashed version), which the previous commit provides. And then
write the regular version to disk alongside the stash.

This set of procedures still suffers from some of the same disk consistency
issues as we recently fixed in slurping, but it's better than it was, and
fixing those would require a good deal more work.

Signed-off-by: Greg Farnum <gregory.farnum@dreamhost.com>
13 years agopaxos: share_state sends every unknown value, including the stashed one
Greg Farnum [Mon, 26 Mar 2012 18:03:27 +0000 (11:03 -0700)]
paxos: share_state sends every unknown value, including the stashed one

Sage points out that the stashed object might not be the same as the
one we actually archive. For instance, OSDMonitor stashes the full
OSDMap but the items it stores in the regular machine_name dir are
incrementals.

Signed-off-by: Greg Farnum <gregory.farnum@dreamhost.com>
13 years agouclient: We want to release cache when we lose the CACHE cap, not gain it!
Greg Farnum [Fri, 23 Mar 2012 17:34:05 +0000 (10:34 -0700)]
uclient: We want to release cache when we lose the CACHE cap, not gain it!

Looks like this was detected as a problem back in
84644dc56183b67050793a1b8da07850508b29d6 but the fix wasn't completed.

Signed-off-by: Greg Farnum <gregory.farnum@dreamhost.com>
13 years agodoc: add a short thing on kernel client troubleshooting.
Greg Farnum [Mon, 19 Mar 2012 20:20:40 +0000 (13:20 -0700)]
doc: add a short thing on kernel client troubleshooting.

I just noticed this sitting uncommitted in my tree.

Signed-off-by: Greg Farnum <gregory.farnum@dreamhost.com>
13 years agov0.44.1 v0.44.1
Sage Weil [Tue, 27 Mar 2012 20:02:09 +0000 (13:02 -0700)]
v0.44.1

13 years agoobjecter: don't call op_throttle_ops.take(1) unconditionally
Yehuda Sadeh [Mon, 26 Mar 2012 23:48:25 +0000 (16:48 -0700)]
objecter: don't call op_throttle_ops.take(1) unconditionally

Signed-off-by: Yehuda Sadeh <yehuda@hq.newdream.net>
13 years agoobjecter: add in-flight ops throttling
Yehuda Sadeh [Mon, 26 Mar 2012 23:17:51 +0000 (16:17 -0700)]
objecter: add in-flight ops throttling

In addition to ops length, we also want to throttle it by
actual number of ops.

Signed-off-by: Yehuda Sadeh <yehuda@hq.newdream.net>
13 years agomsg: assert pipe->msgr == msgr
Sage Weil [Mon, 26 Mar 2012 19:36:06 +0000 (12:36 -0700)]
msg: assert pipe->msgr == msgr

Fixes: #2216
Signed-off-by: Sage Weil <sage@newdream.net>
13 years agodoc: include crush in toctree
Sage Weil [Mon, 26 Mar 2012 18:43:17 +0000 (11:43 -0700)]
doc: include crush in toctree

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agodoc: few notes on manipulating the crush map
Sage Weil [Mon, 26 Mar 2012 18:30:20 +0000 (11:30 -0700)]
doc: few notes on manipulating the crush map

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agodoc/dev/peering.rst: fix typo
Sage Weil [Mon, 26 Mar 2012 17:15:07 +0000 (10:15 -0700)]
doc/dev/peering.rst: fix typo

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agoosd/: OpRequest is no longer a RefCountedObject, remove puts/gets
Samuel Just [Sat, 24 Mar 2012 05:23:06 +0000 (22:23 -0700)]
osd/: OpRequest is no longer a RefCountedObject, remove puts/gets

Signed-off-by: Samuel Just <samuel.just@dreamhost.com>
13 years agoosd/: Convert OpRequest* to OpRequestRef
Samuel Just [Sat, 24 Mar 2012 05:08:53 +0000 (22:08 -0700)]
osd/: Convert OpRequest* to OpRequestRef

Signed-off-by: Samuel Just <samuel.just@dreamhost.com>
13 years agoOSD: Add typedef for shared_ptr<OpRequest>
Samuel Just [Sat, 24 Mar 2012 04:51:15 +0000 (21:51 -0700)]
OSD: Add typedef for shared_ptr<OpRequest>

Signed-off-by: Samuel Just <samuel.just@dreamhost.com>
13 years agoosd/: add mark_event to OpRequest and move tracking into OpTracker
Samuel Just [Fri, 23 Mar 2012 19:48:19 +0000 (12:48 -0700)]
osd/: add mark_event to OpRequest and move tracking into OpTracker

Signed-off-by: Samuel Just <samuel.just@dreamhost.com>
13 years agovstart: enable omap for xattrs
Sage Weil [Mon, 26 Mar 2012 03:28:14 +0000 (20:28 -0700)]
vstart: enable omap for xattrs

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agoMerge remote branch 'gh/wip-doc-peering'
Sage Weil [Sun, 25 Mar 2012 15:05:08 +0000 (08:05 -0700)]
Merge remote branch 'gh/wip-doc-peering'

13 years agodon't override CFLAGS
Alexandre Oliva [Thu, 22 Mar 2012 19:23:02 +0000 (16:23 -0300)]
don't override CFLAGS

leveldb adds -I flags to CFLAGS and CXXFLAGS, but if these macros are
overridden in the make command line, the flags are dropped, and the
build fails.  leveldb should probably use AM_CFLAGS instead, but the
spec file can specify the preferred CFLAGS in the configure command
line, and then everything will work as expected.

Signed-off-by: Alexandre Oliva <oliva@lsd.ic.unicamp.br>
Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agoMakefile: fix modules that cannot find pk11pub.h when compiling with NSS on RHEL6
Jim Schutt [Wed, 21 Mar 2012 16:09:09 +0000 (10:09 -0600)]
Makefile: fix modules that cannot find pk11pub.h when compiling with NSS on RHEL6

Signed-off-by: Jim Schutt <jaschut@sandia.gov>
Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agorgw: don't #include fcgi from rgw_common.h
Sage Weil [Sun, 25 Mar 2012 04:20:27 +0000 (21:20 -0700)]
rgw: don't #include fcgi from rgw_common.h

ceph-dencoder #includes rgw_common.h, and needs to build even when
--without-radosgw is specified and libfcgi isn't installed.

Reported-by: vandemar in #ceph
Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agorados_bench: generate_object_name now takes a buffer length
Samuel Just [Thu, 22 Mar 2012 20:32:00 +0000 (13:32 -0700)]
rados_bench: generate_object_name now takes a buffer length

Signed-off-by: Samuel Just <samuel.just@dreamhost.com>
Reviewed-by: Josh Durgin <josh.durgin@dreamhost.com>
13 years agodoc: dev/peering.rst edits from Greg
Sage Weil [Thu, 22 Mar 2012 21:41:30 +0000 (14:41 -0700)]
doc: dev/peering.rst edits from Greg

Signed-off-by: Sage Weil <sage@newdream.net>
13 years agodoc: update dev/peering document
Sage Weil [Thu, 22 Mar 2012 15:33:09 +0000 (08:33 -0700)]
doc: update dev/peering document

- fix discussion of last epoch started
- define terms for current and past intervals
- describe role of pg info
- remove mention of the backlog
- fix discussion of up_thru
- etc.

Signed-off-by: Sage Weil <sage@newdream.net>
13 years agomsgr: fix tcp.cc linkage
Sage Weil [Tue, 20 Mar 2012 08:03:53 +0000 (01:03 -0700)]
msgr: fix tcp.cc linkage

Signed-off-by: Sage Weil <sage@newdream.net>
13 years agocephtool: don't prefix log items
Sage Weil [Thu, 22 Mar 2012 00:05:49 +0000 (17:05 -0700)]
cephtool: don't prefix log items

This just makes it hard to read them.

Signed-off-by: Sage Weil <sage@newdream.net>
13 years agoObjecter: resend linger_ops on any change
Samuel Just [Wed, 21 Mar 2012 00:04:59 +0000 (17:04 -0700)]
Objecter: resend linger_ops on any change

Signed-off-by: Samuel Just <samuel.just@dreamhost.com>
Reviewed-by: Josh Durgin <josh.durgin@dreamhost.com>
13 years agoObjectStore: Add collection_move to generate_instances
Samuel Just [Wed, 21 Mar 2012 17:58:20 +0000 (10:58 -0700)]
ObjectStore: Add collection_move to generate_instances

Signed-off-by: Samuel Just <samuel.just@dreamhost.com>
13 years agoFileStore: remove src on EEXIST during collection_move replay
Samuel Just [Wed, 21 Mar 2012 17:36:21 +0000 (10:36 -0700)]
FileStore: remove src on EEXIST during collection_move replay

Signed-off-by: Samuel Just <samuel.just@dreamhost.com>
13 years agoFileStore: whitelist COLLECTION_MOVE on replay
Samuel Just [Wed, 21 Mar 2012 03:09:28 +0000 (20:09 -0700)]
FileStore: whitelist COLLECTION_MOVE on replay

Signed-off-by: Samuel Just <rexludorum@gmail.com>
13 years agoObjectStore: add COLLECTION_MOVE to dump
Samuel Just [Wed, 21 Mar 2012 03:08:17 +0000 (20:08 -0700)]
ObjectStore: add COLLECTION_MOVE to dump

Signed-off-by: Samuel Just <rexludorum@gmail.com>
13 years agodoc: update list of debian dists
Sage Weil [Wed, 21 Mar 2012 13:30:43 +0000 (06:30 -0700)]
doc: update list of debian dists

Signed-off-by: Sage Weil <sage@newdream.net>
13 years agoMerge branch 'stable'
Sage Weil [Wed, 21 Mar 2012 13:28:15 +0000 (06:28 -0700)]
Merge branch 'stable'

13 years agoObjecter: resend linger_ops on any change
Samuel Just [Wed, 21 Mar 2012 00:04:59 +0000 (17:04 -0700)]
Objecter: resend linger_ops on any change

Signed-off-by: Samuel Just <samuel.just@dreamhost.com>
Reviewed-by: Josh Durgin <josh.durgin@dreamhost.com>
13 years agoTestRados: Add watch
Samuel Just [Tue, 20 Mar 2012 23:02:14 +0000 (16:02 -0700)]
TestRados: Add watch

Signed-off-by: Samuel Just <samuel.just@dreamhost.com>
Reviewed-by: Josh Durgin <josh.durgin@dreamhost.com>
13 years agorgw: keep pool placement info also in cacheable location
Yehuda Sadeh [Wed, 21 Mar 2012 00:18:18 +0000 (17:18 -0700)]
rgw: keep pool placement info also in cacheable location

Mirror the pools placement info, so that we can cache it.

Signed-off-by: Yehuda Sadeh <yehuda@hq.newdream.net>
13 years agorgw: remove unused definition
Yehuda Sadeh [Tue, 20 Mar 2012 22:31:27 +0000 (15:31 -0700)]
rgw: remove unused definition

Signed-off-by: Yehuda Sadeh <yehuda@hq.newdream.net>
13 years agoRevert "Objecter: add op->resend_on_any_change"
Samuel Just [Wed, 21 Mar 2012 00:00:43 +0000 (17:00 -0700)]
Revert "Objecter: add op->resend_on_any_change"

This reverts commit c53194d75390dd6d5aa4a9a33f741cbd106e3338.

recalc_linger_op_target is used for linger_ops

Signed-off-by: Samuel Just <samuel.just@dreamhost.com>
13 years agoReplicatedPG: return -EBUSY on delete for objects with watchers
Samuel Just [Tue, 20 Mar 2012 23:01:33 +0000 (16:01 -0700)]
ReplicatedPG: return -EBUSY on delete for objects with watchers

Signed-off-by: Samuel Just <samuel.just@dreamhost.com>
13 years agoObjecter: add op->resend_on_any_change
Samuel Just [Tue, 20 Mar 2012 21:48:42 +0000 (14:48 -0700)]
Objecter: add op->resend_on_any_change

lingers must be resent even if the primary does not change.

Signed-off-by: Samuel Just <samuel.just@dreamhost.com>
13 years agoReplicatedPG: osd_max_notify_timeout -> osd_default_notify_timeout
Samuel Just [Tue, 20 Mar 2012 18:40:33 +0000 (11:40 -0700)]
ReplicatedPG: osd_max_notify_timeout -> osd_default_notify_timeout

This setting should not override user specified timeout.

Signed-off-by: Samuel Just <samuel.just@dreamhost.com>
13 years agorgw: replace bucket_id generation
Yehuda Sadeh [Tue, 20 Mar 2012 22:15:09 +0000 (15:15 -0700)]
rgw: replace bucket_id generation

bucket_id is now string: <global instance id>.<num> where
num is increasing monotonically within the current rgw
instance.

Signed-off-by: Yehuda Sadeh <yehuda@hq.newdream.net>
13 years agov0.44 v0.44
Sage Weil [Sun, 18 Mar 2012 19:03:45 +0000 (12:03 -0700)]
v0.44

13 years agorgw: process default alt args before processing conf file
Yehuda Sadeh [Tue, 20 Mar 2012 17:52:14 +0000 (10:52 -0700)]
rgw: process default alt args before processing conf file

this fixes #2189

Signed-off-by: Yehuda Sadeh <yehuda@hq.newdream.net>
13 years agorgw: process default alt args before processing conf file
Yehuda Sadeh [Tue, 20 Mar 2012 17:52:14 +0000 (10:52 -0700)]
rgw: process default alt args before processing conf file

this fixes #2189

Signed-off-by: Yehuda Sadeh <yehuda@hq.newdream.net>
13 years agorgw: incrase socket backlog
Yehuda Sadeh [Tue, 20 Mar 2012 17:37:35 +0000 (10:37 -0700)]
rgw: incrase socket backlog

20 is too small

Signed-off-by: Yehuda Sadeh <yehuda@hq.newdream.net>
13 years agorgw: fix internal cache api
Yehuda Sadeh [Tue, 20 Mar 2012 17:25:59 +0000 (10:25 -0700)]
rgw: fix internal cache api

This fixes issue #2190

Signed-off-by: Yehuda Sadeh <yehuda@hq.newdream.net>
13 years agoOSD: do not hold obc lock in disconnect_session_watches
Samuel Just [Mon, 19 Mar 2012 23:06:40 +0000 (16:06 -0700)]
OSD: do not hold obc lock in disconnect_session_watches

ObjectContext::lock is used only for implementing read_lock and
write_lock.  PG::lock is used to protect the ObjectContexts
belonging to a pg.

Signed-off-by: Samuel Just <samuel.just@dreamhost.com>
Reviewed-by: Josh Durgin <josh.durgin@dreamhost.com>
13 years agoReplicatedPG: there should be no object_contexts during on_activate
Samuel Just [Fri, 16 Mar 2012 20:58:54 +0000 (13:58 -0700)]
ReplicatedPG: there should be no object_contexts during on_activate

Signed-off-by: Samuel Just <samuel.just@dreamhost.com>
13 years agoMerge branch 'next'
Sage Weil [Sun, 18 Mar 2012 16:08:55 +0000 (09:08 -0700)]
Merge branch 'next'

13 years agoosd: fix object_info.size mismatch file due to truncate_seq on new object
Sage Weil [Sun, 18 Mar 2012 16:08:15 +0000 (09:08 -0700)]
osd: fix object_info.size mismatch file due to truncate_seq on new object

If the first write that creates an object includes a truncate_seq and
truncate_size, we were taking the truncte patch and doing a truncate op
in our transaction prior to the write, and then setting the object_info
size appropriately.  However, if the object doesn't exist, the truncate
op fails even though the oi.size gets set.

Later, this turns up as a scrub error (see #2080).

Fix this by skipping the truncate if it is a new object.  Instead, we
should just initialize our truncate_{seq,size} metadata so that we're all
up to date for any later writes.

Alternatively, we could touch the object and then truncate it (up) to the
large size, but this is sort of a waste; data beyond a short object eof is
defined to be zeros, so all we would accomplish is making recovery work
harder by copying zeros around.

Fixes: #2080
Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
Reviewed-by: Samuel Just <samuel.just@dreamhost.com>
13 years ago.gitignore: xattr_bench
Sage Weil [Fri, 16 Mar 2012 23:59:49 +0000 (16:59 -0700)]
.gitignore: xattr_bench

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agoheartbeatmap: use utimes(2) instead of futimens(2)
Sage Weil [Fri, 16 Mar 2012 22:05:55 +0000 (15:05 -0700)]
heartbeatmap: use utimes(2) instead of futimens(2)

For poor users with ancient glibc.  We don't much care about rename races
here anyway.

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
13 years agoosd: remove special handline for head recovery from clone
Sage Weil [Fri, 16 Mar 2012 21:36:38 +0000 (14:36 -0700)]
osd: remove special handline for head recovery from clone

This breaks because:

 - we don't have the head or current snapset
 - get_object_context() creates a new snapset, which is wrong

We probably can only do this if we are certain we can construct/modify
the old snapset and end up with the correct one.

Signed-off-by: Sage Weil <sage@newdream.net>
13 years agoconfig: fix recursive locking of md_config_t::lock
Sage Weil [Fri, 16 Mar 2012 20:49:36 +0000 (13:49 -0700)]
config: fix recursive locking of md_config_t::lock

Signed-off-by: Sage Weil <sage@newdream.net>
Reviewed-by: Greg Farnum <gregory.farnum@dreamhost.com>
13 years agoosd: explicitly create new object,snap contexts on push
Sage Weil [Fri, 16 Mar 2012 20:07:25 +0000 (13:07 -0700)]
osd: explicitly create new object,snap contexts on push

We specifically want to use this during recovery to avoid loading the obc
or ssc for a previous version of the object and populating the watchers.
We know we won't have any existing obc here because it is missing (old or
dne).

For the snapset context, we provide it explicitly when we recover the head
or snapset object (which we always do first).  For clones, we re-use the
existing get_snapset_context(), which will either have the ssc open or
can load it from the head/snapset object.

Signed-off-by: Sage Weil <sage@newdream.net>
13 years agoosd: re-use create_object_context() in get_object_context()
Sage Weil [Fri, 16 Mar 2012 19:14:44 +0000 (12:14 -0700)]
osd: re-use create_object_context() in get_object_context()

Signed-off-by: Sage Weil <sage@newdream.net>
13 years agoosd: ReplicatedPG::create_object_context()
Sage Weil [Fri, 16 Mar 2012 20:05:54 +0000 (13:05 -0700)]
osd: ReplicatedPG::create_object_context()

New helper that creates a new object context.

Signed-off-by: Sage Weil <sage@newdream.net>
13 years agoosd: create_snapset_context()
Sage Weil [Fri, 16 Mar 2012 20:03:42 +0000 (13:03 -0700)]
osd: create_snapset_context()

Signed-off-by: Sage Weil <sage@newdream.net>
13 years agoosd: ensure we don't clobber other *contexts when registering new ones
Sage Weil [Fri, 16 Mar 2012 19:09:44 +0000 (12:09 -0700)]
osd: ensure we don't clobber other *contexts when registering new ones

Signed-off-by: Sage Weil <sage@newdream.net>
13 years agoMerge branch 'wip_omap_xattrs'
Samuel Just [Fri, 16 Mar 2012 18:52:10 +0000 (11:52 -0700)]
Merge branch 'wip_omap_xattrs'

13 years agoReplicatedPG,FileStore: clone should copy xattrs as well
Samuel Just [Fri, 16 Mar 2012 05:13:09 +0000 (22:13 -0700)]
ReplicatedPG,FileStore: clone should copy xattrs as well

_make_clone (called from make_writeable) and _rollback_to included
attr reads from head or a clone.  In that case, an ondisk read
lock would be necessary.  Now, clone also handles xattrs, so the
attr read should not be necessary.

Signed-off-by: Samuel Just <sam.just@dreamhost.com>
13 years agoRadosModel: test xattrs with omap
Samuel Just [Wed, 14 Mar 2012 21:09:34 +0000 (14:09 -0700)]
RadosModel: test xattrs with omap

Signed-off-by: Samuel Just <samuel.just@dreamhost.com>
13 years agoFileStore: add support for omap xattrs
Samuel Just [Wed, 14 Mar 2012 00:38:46 +0000 (17:38 -0700)]
FileStore: add support for omap xattrs

Signed-off-by: Samuel Just <samuel.just@dreamhost.com>
13 years agoMerge branch 'wip-msgr4'
Sage Weil [Fri, 16 Mar 2012 18:31:13 +0000 (11:31 -0700)]
Merge branch 'wip-msgr4'

Reviewed-by: Greg Farnum <gregory.farnum@dreamhost.com>
13 years agoObjectMap: use Index object for locking rather than path object
Samuel Just [Tue, 13 Mar 2012 16:43:21 +0000 (09:43 -0700)]
ObjectMap: use Index object for locking rather than path object

Signed-off-by: Samuel Just <samuel.just@dreamhost.com>
13 years agotests/: Added xattr bench
Samuel Just [Tue, 13 Mar 2012 04:22:04 +0000 (21:22 -0700)]
tests/: Added xattr bench

Signed-off-by: Samuel Just <samuel.just@dreamhost.com>
13 years agoconfig_opts.h: opts for omap_xattrs
Samuel Just [Tue, 13 Mar 2012 22:31:21 +0000 (15:31 -0700)]
config_opts.h: opts for omap_xattrs

Signed-off-by: Samuel Just <samuel.just@dreamhost.com>
13 years agotest_object_map: update unit test for xattr
Samuel Just [Tue, 13 Mar 2012 00:43:14 +0000 (17:43 -0700)]
test_object_map: update unit test for xattr

Signed-off-by: Samuel Just <samuel.just@dreamhost.com>
13 years agoDBObjectMap: implement xattr interface
Samuel Just [Tue, 13 Mar 2012 00:09:03 +0000 (17:09 -0700)]
DBObjectMap: implement xattr interface

Signed-off-by: Samuel Just <samuel.just@dreamhost.com>
13 years agoObjectMap: add interface for storing xattrs
Samuel Just [Mon, 12 Mar 2012 23:52:58 +0000 (16:52 -0700)]
ObjectMap: add interface for storing xattrs

Signed-off-by: Samuel Just <samuel.just@dreamhost.com>
13 years agoDBObjectMap: add support for storing xattrs
Samuel Just [Mon, 12 Mar 2012 22:10:44 +0000 (15:10 -0700)]
DBObjectMap: add support for storing xattrs

Signed-off-by: Samuel Just <samuel.just@dreamhost.com>
13 years agoconfigure: fix warnings
Sage Weil [Fri, 16 Mar 2012 17:39:39 +0000 (10:39 -0700)]
configure: fix warnings

Finally!

Signed-off-by: Sage Weil <sage@newdream.net>
13 years agoReplicatedPG: populate_object_context during handle_pull_response
Samuel Just [Fri, 16 Mar 2012 17:01:03 +0000 (10:01 -0700)]
ReplicatedPG: populate_object_context during handle_pull_response

A cached objectcontext should always have its watchers populated.

Signed-off-by: Samuel Just <samuel.just@dreamhost.com>
13 years agoleveldb: .gitignore TAGS
Sage Weil [Fri, 16 Mar 2012 16:43:02 +0000 (09:43 -0700)]
leveldb: .gitignore TAGS

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