]> git.apps.os.sepia.ceph.com Git - ceph.git/log
ceph.git
16 years agokclient: preserve peer_name across connection replacement
Sage Weil [Fri, 21 Nov 2008 21:11:46 +0000 (13:11 -0800)]
kclient: preserve peer_name across connection replacement

16 years agoosd: factor out add_log_entry into a helper that adjusts pg info accordingly
Sage Weil [Fri, 21 Nov 2008 20:35:20 +0000 (12:35 -0800)]
osd: factor out add_log_entry into a helper that adjusts pg info accordingly

We want to keep log.top, info.last_update etc. in sync.

16 years agoosd: use old acting set when noting past intervals
Sage Weil [Fri, 21 Nov 2008 20:02:56 +0000 (12:02 -0800)]
osd: use old acting set when noting past intervals

16 years agodstart: only clean up old output on mkfs
Sage Weil [Fri, 21 Nov 2008 19:56:59 +0000 (11:56 -0800)]
dstart: only clean up old output on mkfs

16 years agoclient: ignore dropped messages
Sage Weil [Fri, 21 Nov 2008 19:39:37 +0000 (11:39 -0800)]
client: ignore dropped messages

16 years agopg: fix build_prior debug output
Sage Weil [Fri, 21 Nov 2008 19:21:59 +0000 (11:21 -0800)]
pg: fix build_prior debug output

16 years agoclient: fix ms_handle_failure
Sage Weil [Fri, 21 Nov 2008 19:21:46 +0000 (11:21 -0800)]
client: fix ms_handle_failure

16 years agoosd: only trim past intervals that _fully_ preceed last epoch started
Sage Weil [Fri, 21 Nov 2008 19:08:23 +0000 (11:08 -0800)]
osd: only trim past intervals that _fully_ preceed last epoch started

16 years agoosd: ignore pushes if stray
Sage Weil [Fri, 21 Nov 2008 18:52:26 +0000 (10:52 -0800)]
osd: ignore pushes if stray

We need to verify a push is coming from the current primary if we are
any non-primary, including a stray.  Fixes bad assertion

osd/ReplicatedPG.cc:2322: FAILED assert in 'void ReplicatedPG::sub_op_push(MOSDSubOp*)': log.complete_to != log.log.end()

16 years agomon: send osdmap updates if pg_stats indicates an old map for a long time
Sage Weil [Fri, 21 Nov 2008 18:41:50 +0000 (10:41 -0800)]
mon: send osdmap updates if pg_stats indicates an old map for a long time

16 years agoosd: fix read_superblock
Sage Weil [Fri, 21 Nov 2008 18:24:58 +0000 (10:24 -0800)]
osd: fix read_superblock

16 years agomds: mark dn clean before removing
Sage Weil [Fri, 21 Nov 2008 20:12:58 +0000 (12:12 -0800)]
mds: mark dn clean before removing

This ensures we clean up the xlist_dirty xlist::item.

16 years agokclient: debug info for connections and crc errors
Yehuda Sadeh [Fri, 21 Nov 2008 19:20:19 +0000 (11:20 -0800)]
kclient: debug info for connections and crc errors

16 years agoosd: fix read_superblock
Sage Weil [Fri, 21 Nov 2008 18:23:37 +0000 (10:23 -0800)]
osd: fix read_superblock

16 years agodstart: fix crush map typo
Sage Weil [Fri, 21 Nov 2008 17:59:27 +0000 (09:59 -0800)]
dstart: fix crush map typo

16 years agoosd: fix default crush map rules
Sage Weil [Fri, 21 Nov 2008 18:21:07 +0000 (10:21 -0800)]
osd: fix default crush map rules

16 years agocrush: introduce crush magic
Sage Weil [Fri, 21 Nov 2008 17:49:18 +0000 (09:49 -0800)]
crush: introduce crush magic

This is a disk format change.

16 years agocrush: make recurse_to_leaf slightly less fragile
Sage Weil [Fri, 21 Nov 2008 17:43:31 +0000 (09:43 -0800)]
crush: make recurse_to_leaf slightly less fragile

16 years agoosd: don't fail assertion on out empty ops list (i.e. no-op)
Sage Weil [Fri, 21 Nov 2008 01:01:18 +0000 (17:01 -0800)]
osd: don't fail assertion on out empty ops list (i.e. no-op)

16 years agoosd: include magic in osd volumes
Sage Weil [Fri, 21 Nov 2008 01:00:36 +0000 (17:00 -0800)]
osd: include magic in osd volumes

16 years agoosd: get rid of snaptrimming/snaptrimqueue pg states
Sage Weil [Fri, 21 Nov 2008 01:00:25 +0000 (17:00 -0800)]
osd: get rid of snaptrimming/snaptrimqueue pg states

These aren't helpful, since we only report pg states from the
primary osd, and snaptrimming occurs on replicas as well.

16 years agomon: include magic in mondata
Sage Weil [Fri, 21 Nov 2008 00:59:08 +0000 (16:59 -0800)]
mon: include magic in mondata

16 years agoosdmap: use chooseleaf in default crush map
Sage Weil [Fri, 21 Nov 2008 00:25:43 +0000 (16:25 -0800)]
osdmap: use chooseleaf in default crush map

16 years agoosd: fix transaction argument order
Sage Weil [Thu, 20 Nov 2008 23:08:24 +0000 (15:08 -0800)]
osd: fix transaction argument order

The order of evaluation is ambiguous, apparently!

16 years agoOSD: pg ref count debugging
Sage Weil [Thu, 20 Nov 2008 22:47:30 +0000 (14:47 -0800)]
OSD: pg ref count debugging

16 years agoosd: use map_lock to avoid osdmap update race in _finish_recovery
Sage Weil [Thu, 20 Nov 2008 22:46:15 +0000 (14:46 -0800)]
osd: use map_lock to avoid osdmap update race in _finish_recovery

16 years agoosd: convert recovery to a work queue
Sage Weil [Thu, 20 Nov 2008 21:56:36 +0000 (13:56 -0800)]
osd: convert recovery to a work queue

16 years agowq: use a single lock
Sage Weil [Thu, 20 Nov 2008 21:56:25 +0000 (13:56 -0800)]
wq: use a single lock

16 years agoosd: clean up mkfs vs peek_super
Sage Weil [Thu, 20 Nov 2008 22:40:08 +0000 (14:40 -0800)]
osd: clean up mkfs vs peek_super

16 years agoosd: fix peek_whoami
Sage Weil [Thu, 20 Nov 2008 22:00:33 +0000 (14:00 -0800)]
osd: fix peek_whoami

16 years agoosd: make peek_whoami verify fsid
Sage Weil [Thu, 20 Nov 2008 21:54:44 +0000 (13:54 -0800)]
osd: make peek_whoami verify fsid

16 years agoosd: decode superblock properly
Sage Weil [Thu, 20 Nov 2008 21:54:34 +0000 (13:54 -0800)]
osd: decode superblock properly

16 years agovstart: 3 osds
Sage Weil [Thu, 20 Nov 2008 21:42:06 +0000 (13:42 -0800)]
vstart: 3 osds

16 years agocstring: pre-terminate even if content unspecified
Sage Weil [Thu, 20 Nov 2008 21:31:13 +0000 (13:31 -0800)]
cstring: pre-terminate even if content unspecified

16 years agoosd: feed type name into workqueue
Sage Weil [Wed, 19 Nov 2008 19:19:28 +0000 (11:19 -0800)]
osd: feed type name into workqueue

16 years agoosd: convert snap trimming to snap_trim_wq
Sage Weil [Wed, 19 Nov 2008 19:14:53 +0000 (11:14 -0800)]
osd: convert snap trimming to snap_trim_wq

16 years agoosd: basic scrub works
Sage Weil [Wed, 19 Nov 2008 19:04:37 +0000 (11:04 -0800)]
osd: basic scrub works

16 years agoosd: update stats when op is applied
Sage Weil [Wed, 19 Nov 2008 19:04:23 +0000 (11:04 -0800)]
osd: update stats when op is applied

16 years agoosd: add scrub wq
Sage Weil [Wed, 19 Nov 2008 00:46:52 +0000 (16:46 -0800)]
osd: add scrub wq

16 years agoos: use nstring instead of string for attrsets
Sage Weil [Thu, 20 Nov 2008 21:22:37 +0000 (13:22 -0800)]
os: use nstring instead of string for attrsets

16 years agoebofs: fix occasional bdev shutdown hang
Sage Weil [Thu, 20 Nov 2008 20:44:37 +0000 (12:44 -0800)]
ebofs: fix occasional bdev shutdown hang

16 years agoosd: adjust merge_log
Sage Weil [Thu, 20 Nov 2008 19:54:09 +0000 (11:54 -0800)]
osd: adjust merge_log

Object should only be marked missing if new entry is newer.  If
they are the same, it may or may not be missing (depending on
whether it was before merge_log).

16 years agomsgr: ref count message while they are owned by the messenger
Sage Weil [Thu, 20 Nov 2008 19:31:12 +0000 (11:31 -0800)]
msgr: ref count message while they are owned by the messenger

Users still assume they hold the only reference, at least until
they call send_message.

One caveat is that ms_handle_failure is passed a message with an
unknown number of refs.  The method should not try to free or
re-use the message.

16 years agomsgr: reference count messenger
Sage Weil [Thu, 20 Nov 2008 18:36:19 +0000 (10:36 -0800)]
msgr: reference count messenger

We want an explicit destroy() method, because the SimpleMessenger
needs to join the dispatch thread, and that can't happen just on
the last reference drop because that may happen in the dispatch
thread itself.

16 years agovstart: launch valgrind with --valgrind
Sage Weil [Thu, 20 Nov 2008 18:32:42 +0000 (10:32 -0800)]
vstart: launch valgrind with --valgrind

just for cosd atm

16 years agomsgr todo
Sage Weil [Thu, 20 Nov 2008 17:52:33 +0000 (09:52 -0800)]
msgr todo

16 years agoMakefile: adjust link order (libcommon first _and_ last)
Sage Weil [Thu, 20 Nov 2008 17:52:22 +0000 (09:52 -0800)]
Makefile: adjust link order (libcommon first _and_ last)

16 years agoebofs: add new objects to main collection
Sage Weil [Wed, 19 Nov 2008 19:00:25 +0000 (11:00 -0800)]
ebofs: add new objects to main collection

16 years agomds: remove session from xlist before deleting
Sage Weil [Thu, 20 Nov 2008 16:15:13 +0000 (08:15 -0800)]
mds: remove session from xlist before deleting

16 years agoclient: remove xlist items before deleting
Sage Weil [Thu, 20 Nov 2008 16:12:45 +0000 (08:12 -0800)]
client: remove xlist items before deleting

16 years agomds: remove Capability from session list before deleting
Sage Weil [Thu, 20 Nov 2008 16:09:27 +0000 (08:09 -0800)]
mds: remove Capability from session list before deleting

16 years agomds: pull scatterlock of xlist in destructor
Sage Weil [Thu, 20 Nov 2008 06:01:14 +0000 (22:01 -0800)]
mds: pull scatterlock of xlist in destructor

Really, this should happen sooner, but for now this is equivalent to the
old xlist::item destructor.

16 years agoos: clean up ObjectStore::Transaction interface
Sage Weil [Thu, 20 Nov 2008 05:50:39 +0000 (21:50 -0800)]
os: clean up ObjectStore::Transaction interface

Also, fix attrset * thing.. that doesn't look safe!

16 years agomsg: initialize footer
Sage Weil [Thu, 20 Nov 2008 05:48:13 +0000 (21:48 -0800)]
msg: initialize footer

16 years agolockdep: turn lockdep off during shutdown
Sage Weil [Thu, 20 Nov 2008 05:41:26 +0000 (21:41 -0800)]
lockdep: turn lockdep off during shutdown

We can't function after the static items in lockdep.cc destruct.  Disable
lockdep before that happens.

16 years agoosd: fix osd_reqid_t hash
Sage Weil [Thu, 20 Nov 2008 05:34:00 +0000 (21:34 -0800)]
osd: fix osd_reqid_t hash

blobhash is only safe on packed types.

16 years agofilestore: pad with zeroed buffer
Sage Weil [Thu, 20 Nov 2008 05:33:32 +0000 (21:33 -0800)]
filestore: pad with zeroed buffer

Shut up valgrind

16 years agoxlist: enforce removal from xlist
Sage Weil [Thu, 20 Nov 2008 03:43:58 +0000 (19:43 -0800)]
xlist: enforce removal from xlist

We want to ensure that removal takes place in the correct locking context,
not whatever context the ::item is destroyed in.

16 years agomds: fix uninit value
Sage Weil [Thu, 20 Nov 2008 00:47:12 +0000 (16:47 -0800)]
mds: fix uninit value

16 years agoosd: adjust missing in merge_old_entry
Sage Weil [Thu, 20 Nov 2008 00:38:27 +0000 (16:38 -0800)]
osd: adjust missing in merge_old_entry

Our "old" entry may have been newer, and missing.. remove from missing, and re-add
"new" entry to ensure missing reflects the correct object version.

16 years agoosd: type cleanup
Sage Weil [Wed, 19 Nov 2008 18:30:10 +0000 (10:30 -0800)]
osd: type cleanup

16 years agoosd: more merge_log updates
Sage Weil [Thu, 20 Nov 2008 00:28:09 +0000 (16:28 -0800)]
osd: more merge_log updates

16 years agomonclient: dont free messenger until races there are fixed
Sage Weil [Thu, 20 Nov 2008 00:28:49 +0000 (16:28 -0800)]
monclient: dont free messenger until races there are fixed

16 years agocmonctl: fix busy loop
Sage Weil [Wed, 19 Nov 2008 21:12:57 +0000 (13:12 -0800)]
cmonctl: fix busy loop

16 years agomon: ignore 0-byte latest
Sage Weil [Wed, 19 Nov 2008 21:09:38 +0000 (13:09 -0800)]
mon: ignore 0-byte latest

16 years agoosd: merge_log fix when logs abut but do not overlap
Sage Weil [Wed, 19 Nov 2008 18:31:31 +0000 (10:31 -0800)]
osd: merge_log fix when logs abut but do not overlap

16 years agokclient: different handling of EIO, bad crc
Yehuda Sadeh [Wed, 19 Nov 2008 00:54:21 +0000 (16:54 -0800)]
kclient: different handling of EIO, bad crc

16 years agodstart: smaller cluster
Sage Weil [Wed, 19 Nov 2008 00:47:36 +0000 (16:47 -0800)]
dstart: smaller cluster

16 years agoosd: track bytes/kb usage over clones too
Sage Weil [Tue, 18 Nov 2008 23:03:27 +0000 (15:03 -0800)]
osd: track bytes/kb usage over clones too

16 years agoosd: track per-pg bytes, kb utilization
Sage Weil [Tue, 18 Nov 2008 21:57:32 +0000 (13:57 -0800)]
osd: track per-pg bytes, kb utilization

For non-clones only.

16 years agoosd: fix update_stats
Sage Weil [Tue, 18 Nov 2008 21:53:55 +0000 (13:53 -0800)]
osd: fix update_stats

16 years agoosd: verify monmap.fsid matches superblock on startup
Sage Weil [Tue, 18 Nov 2008 21:53:33 +0000 (13:53 -0800)]
osd: verify monmap.fsid matches superblock on startup

16 years agoosd: include fsid in OSDPing, and verify
Sage Weil [Tue, 18 Nov 2008 21:53:13 +0000 (13:53 -0800)]
osd: include fsid in OSDPing, and verify

16 years agoosd: maintain some per-pg stats (object counts, for now)
Sage Weil [Tue, 18 Nov 2008 05:16:33 +0000 (21:16 -0800)]
osd: maintain some per-pg stats (object counts, for now)

We'll add disk usage soon.

16 years agodstart: larger cluster
Sage Weil [Tue, 18 Nov 2008 04:42:38 +0000 (20:42 -0800)]
dstart: larger cluster

16 years agomsgr: fix reconnect after error
Sage Weil [Tue, 18 Nov 2008 23:52:54 +0000 (15:52 -0800)]
msgr: fix reconnect after error

Items in sent queue weren't being moved back to out queue, and
in_seq/out_seq weren't being set properly after an incoming
connection replaced an existing connection.

16 years agomount: typo
Yehuda Sadeh [Tue, 18 Nov 2008 18:09:07 +0000 (10:09 -0800)]
mount: typo

16 years agomds: add new directory to new_dirfrags list
Sage Weil [Tue, 18 Nov 2008 04:37:05 +0000 (20:37 -0800)]
mds: add new directory to new_dirfrags list

This ensures the directory gets committed before the mkdir event
is trimmed from the journal.  Fixes the failed assertion in
CDir::_fetched seen on mds recovery (due to a missing directory object).

16 years agomds: unqueue recovery on purging inodes
Sage Weil [Tue, 18 Nov 2008 00:46:38 +0000 (16:46 -0800)]
mds: unqueue recovery on purging inodes

If an inode is queued for file size recovery when it is purged,
unqueue it.  This catches the log replay case where client
reconnect queues up the inode.

Also, in eval_stray, skip inodes that are queued.  This should
avoid a recovery running concurrently with the purge (which could
be problematic, as it would carry a pointer to *in).

16 years agokclient: fix unmount (broken by 01a33259dbbeb380104d185073f8802eee743f98)
Sage Weil [Tue, 18 Nov 2008 00:03:47 +0000 (16:03 -0800)]
kclient: fix unmount (broken by 01a33259dbbeb380104d185073f8802eee743f98)

16 years agokclient: limit incoming messages size
Yehuda Sadeh [Mon, 17 Nov 2008 23:37:32 +0000 (15:37 -0800)]
kclient: limit incoming messages size

16 years agomount: remove extra log
Yehuda Sadeh [Mon, 17 Nov 2008 23:37:05 +0000 (15:37 -0800)]
mount: remove extra log

16 years agoMerge branch 'unstable' of ssh://ceph.newdream.net/git/ceph into unstable
Yehuda Sadeh [Mon, 17 Nov 2008 23:32:56 +0000 (15:32 -0800)]
Merge branch 'unstable' of ssh://ceph.newdream.net/git/ceph into unstable

16 years agocreated mount helper, can resolve mount addresses
Yehuda Sadeh [Mon, 17 Nov 2008 23:32:07 +0000 (15:32 -0800)]
created mount helper, can resolve mount addresses

16 years agoosd: rewrite merge_log
Sage Weil [Mon, 17 Nov 2008 22:42:48 +0000 (14:42 -0800)]
osd: rewrite merge_log

16 years agocmonctl: include original command in command reply to avoid weirdness
Sage Weil [Mon, 17 Nov 2008 22:21:52 +0000 (14:21 -0800)]
cmonctl: include original command in command reply to avoid weirdness

16 years agoosd: fix build_prior any_up logic again
Sage Weil [Mon, 17 Nov 2008 22:08:30 +0000 (14:08 -0800)]
osd: fix build_prior any_up logic again

last_epoch_started may be anywhere in the interval.

16 years agofilestore: fix btrfs detection based on latest btrfs-unstable
Sage Weil [Mon, 17 Nov 2008 22:00:23 +0000 (14:00 -0800)]
filestore: fix btrfs detection based on latest btrfs-unstable

Look for working CLONE_RANGE ioctl.

16 years agotodos
Sage Weil [Mon, 17 Nov 2008 21:59:55 +0000 (13:59 -0800)]
todos

16 years agocmonctl: pick new mon on timeout
Sage Weil [Mon, 17 Nov 2008 20:57:11 +0000 (12:57 -0800)]
cmonctl: pick new mon on timeout

16 years agomon: fix get_latest
Sage Weil [Mon, 17 Nov 2008 20:54:53 +0000 (12:54 -0800)]
mon: fix get_latest

16 years agomsg: non-destructively copy data buffers in set_data()
Sage Weil [Mon, 17 Nov 2008 22:42:30 +0000 (14:42 -0800)]
msg: non-destructively copy data buffers in set_data()

16 years agomds: use last_sent (not last_open) to untangle cap release races
Sage Weil [Mon, 17 Nov 2008 21:23:03 +0000 (13:23 -0800)]
mds: use last_sent (not last_open) to untangle cap release races

If we use last_open, the client has to be smart about ignoring
MDS revocations after it sends a release request.  (Or, the MDS has
to somehow know the ack is for an old cap.)  Instead, just
serialize release over all cap messages sent to the client.  It may
make for a slightly chattier cap release in some cases, but those
cases should be very rare, and this is simpler.

16 years agomds: be more forgiving on EPurgeFinish
Sage Weil [Sat, 15 Nov 2008 00:54:32 +0000 (16:54 -0800)]
mds: be more forgiving on EPurgeFinish

Inode may not be in cache because of purge_stray() avoiding
journaling it's intent to purge.  If that changes down the line,
add the assertion back.

16 years agoosd: adjust build_prior any_up logic
Sage Weil [Mon, 17 Nov 2008 18:47:30 +0000 (10:47 -0800)]
osd: adjust build_prior any_up logic

We mark the pg 'down' unless there is at least one osd alive specifically
from the last epoch started.

16 years agokclient: silence down some warning
Yehuda Sadeh [Mon, 17 Nov 2008 18:38:16 +0000 (10:38 -0800)]
kclient: silence down some warning

16 years agomds: fix an erroneous assertion (sage)
Yehuda Sadeh [Mon, 17 Nov 2008 18:37:30 +0000 (10:37 -0800)]
mds: fix an erroneous assertion (sage)

16 years agoosd todos
Sage Weil [Mon, 17 Nov 2008 17:15:44 +0000 (09:15 -0800)]
osd todos

16 years agoosd: fix deadlock on map_lock vs peer_stat_lock
Sage Weil [Mon, 17 Nov 2008 17:13:08 +0000 (09:13 -0800)]
osd: fix deadlock on map_lock vs peer_stat_lock

16 years agoosd: remember past intervals instead of recalculating each time
Sage Weil [Mon, 17 Nov 2008 17:03:47 +0000 (09:03 -0800)]
osd: remember past intervals instead of recalculating each time

This _vastly_ improves the speed of build_prior (and thus activate_map).
There is no need to recalculate this information each time as it is fully
dependent on _old_ OSDMaps, not current cluster state.