]> git.apps.os.sepia.ceph.com Git - ceph.git/log
ceph.git
15 years agomsgr: Add at least a little documentation
Greg Farnum [Thu, 10 Dec 2009 22:32:13 +0000 (14:32 -0800)]
msgr: Add at least a little documentation

15 years agomsgr: Remove noisy debug output.
Greg Farnum [Thu, 10 Dec 2009 22:09:22 +0000 (14:09 -0800)]
msgr: Remove noisy debug output.

15 years agomsgr: discard_queue now removes empty pipe queues from endpoint's map
Greg Farnum [Thu, 10 Dec 2009 22:07:25 +0000 (14:07 -0800)]
msgr: discard_queue now removes empty pipe queues from endpoint's map
This prevents bad pointer dereferences

15 years agomsgr: Cover qlen with a Spinlock for faster access and to limit blocking
Greg Farnum [Thu, 10 Dec 2009 19:16:40 +0000 (11:16 -0800)]
msgr: Cover qlen with a Spinlock for faster access and to limit blocking

15 years agomsgr: That unlock's not in the right spot
Greg Farnum [Thu, 10 Dec 2009 03:30:22 +0000 (19:30 -0800)]
msgr: That unlock's not in the right spot

15 years agomsgr: Fix a number of locking and deletion bugs. Appears to work.
Greg Farnum [Thu, 10 Dec 2009 03:10:45 +0000 (19:10 -0800)]
msgr: Fix a number of locking and deletion bugs. Appears to work.

15 years agomsgr: Fix blocking locks and another potential block.
Greg Farnum [Thu, 10 Dec 2009 00:19:27 +0000 (16:19 -0800)]
msgr: Fix blocking locks and another potential block.

15 years agomsgr: rename locks for clarity; move some around to prevent blocking.
Greg Farnum [Wed, 9 Dec 2009 23:12:00 +0000 (15:12 -0800)]
msgr: rename locks for clarity; move some around to prevent blocking.

15 years agomsgr: implement round-robin pipe message delivery.
Greg Farnum [Wed, 9 Dec 2009 03:52:20 +0000 (19:52 -0800)]
msgr: implement round-robin pipe message delivery.

15 years agomsgr: Remove Endpoint::dispatch_queue and queue_message;
Greg Farnum [Wed, 9 Dec 2009 00:17:57 +0000 (16:17 -0800)]
msgr: Remove Endpoint::dispatch_queue and queue_message;
set up local pipe and necessary routing code.

Also, fix potential locking issue by pushing message onto
queue before pushing queue to round-robin

15 years agomsgr: Add queues, etc needed for message delivery by round-robin pipe
Greg Farnum [Tue, 8 Dec 2009 01:58:33 +0000 (17:58 -0800)]
msgr: Add queues, etc needed for message delivery by round-robin pipe

15 years agomsgr: rename pipe's outbound message queue
Greg Farnum [Mon, 7 Dec 2009 22:30:54 +0000 (14:30 -0800)]
msgr: rename pipe's outbound message queue

15 years agoconfig: parse 'lockdep' option in .conf
Sage Weil [Thu, 10 Dec 2009 21:01:35 +0000 (13:01 -0800)]
config: parse 'lockdep' option in .conf

15 years agoceph.conf.sepia: more osds, lockdep
Sage Weil [Thu, 10 Dec 2009 21:01:27 +0000 (13:01 -0800)]
ceph.conf.sepia: more osds, lockdep

15 years agomon: log error, don't abort, on stray pg_stat notify
Sage Weil [Thu, 10 Dec 2009 18:03:44 +0000 (10:03 -0800)]
mon: log error, don't abort, on stray pg_stat notify

15 years agoosd: set pg_stat.created
Sage Weil [Thu, 10 Dec 2009 17:56:54 +0000 (09:56 -0800)]
osd: set pg_stat.created

15 years agoosd: respond to query on uncreated pg with empty info; do not create
Sage Weil [Thu, 10 Dec 2009 17:46:15 +0000 (09:46 -0800)]
osd: respond to query on uncreated pg with empty info; do not create

We should never create a PG* for an uncreated pg except through the mkpg
path.

15 years agomon: stop trying to create localized pgs >= max osd|device
Sage Weil [Thu, 10 Dec 2009 16:28:31 +0000 (08:28 -0800)]
mon: stop trying to create localized pgs >= max osd|device

If lpg_num == lpgp_num, and the preferred osd no longer exists, there is
no guarantee that the parent and child pgs will land on the same osd.  This
happens when we are creating pgs for a new osd, they don't finish getting
created, and then we destroy that OSD again.

Care should be taken to avoid expanding the OSD count _and_ lpg_num
simultaneously...

15 years agotodo
Sage Weil [Thu, 10 Dec 2009 00:06:45 +0000 (16:06 -0800)]
todo

15 years agoosd: fix mark_down on heartbeat_messenger addrs
Sage Weil [Wed, 9 Dec 2009 23:56:53 +0000 (15:56 -0800)]
osd: fix mark_down on heartbeat_messenger addrs

This fixes residual outgoing connect attempts and
subsequent 'wrong node' messages from old outgoing
osd_ping messages that never leave our queues.

15 years agofilestore: avoid string copy after collection_list sort
Sage Weil [Wed, 9 Dec 2009 21:38:25 +0000 (13:38 -0800)]
filestore: avoid string copy after collection_list sort

15 years agoosd: don't forcefeed bad (large) device ids to crush
Sage Weil [Wed, 9 Dec 2009 19:58:55 +0000 (11:58 -0800)]
osd: don't forcefeed bad (large) device ids to crush

15 years agofilestore: test xattrs on basedir/fsid, not basedir
Sage Weil [Wed, 9 Dec 2009 18:43:37 +0000 (10:43 -0800)]
filestore: test xattrs on basedir/fsid, not basedir

The basedir might have differing permissions.

15 years agoceph.conf.cosd changes
Sage Weil [Wed, 9 Dec 2009 18:27:52 +0000 (10:27 -0800)]
ceph.conf.cosd changes

15 years agoosd: drop old osdmap compatibility cruft
Sage Weil [Wed, 9 Dec 2009 18:21:04 +0000 (10:21 -0800)]
osd: drop old osdmap compatibility cruft

This is old enough to have been superceded by a full disk format rev.

15 years agoosd: fix decoding for old osdmaps (pre osd hb change)
Sage Weil [Wed, 9 Dec 2009 18:17:30 +0000 (10:17 -0800)]
osd: fix decoding for old osdmaps (pre osd hb change)

Including ugly hack to work around badly encoded v3 maps

15 years agomds: mark down stray connections on reset
Sage Weil [Tue, 8 Dec 2009 19:58:31 +0000 (11:58 -0800)]
mds: mark down stray connections on reset

15 years agovstart: add --smallmds option
Sage Weil [Tue, 8 Dec 2009 16:25:34 +0000 (08:25 -0800)]
vstart: add --smallmds option

15 years agologger: avoid dup lines when we get behind
Sage Weil [Tue, 8 Dec 2009 16:25:21 +0000 (08:25 -0800)]
logger: avoid dup lines when we get behind

If we get behind (say, after SIGSTOP ... SIGCONT),
instead of printing dup lines for every interval we missed,
print just the first and last.  That will make any graph
have a nice, hopefully obvious perfectly horizontal line.

15 years agoqa: add bonnie++ to the workunits
Yehuda Sadeh [Tue, 8 Dec 2009 00:48:35 +0000 (16:48 -0800)]
qa: add bonnie++ to the workunits

15 years agofilestore: limit size of flusher queue
Sage Weil [Mon, 7 Dec 2009 22:28:45 +0000 (14:28 -0800)]
filestore: limit size of flusher queue

Limit the size of the flusher queue to avoid hitting max open files
limit.  If we hit the max, just don't queue async flush, so we close the
fd immediately.

15 years agoosd: rev cluster protocol to match osd hearbeat change
Sage Weil [Mon, 7 Dec 2009 21:47:50 +0000 (13:47 -0800)]
osd: rev cluster protocol to match osd hearbeat change

15 years agomsgr: Only allow one local endpoint; now has simpler, less iterative code!
Greg Farnum [Sat, 5 Dec 2009 02:23:12 +0000 (18:23 -0800)]
msgr: Only allow one local endpoint; now has simpler, less iterative code!

15 years agoosd: Now uses separate messenger for heartbeats.
Greg Farnum [Fri, 4 Dec 2009 22:37:28 +0000 (14:37 -0800)]
osd: Now uses separate messenger for heartbeats.

Includes changes to OSDMonitor and OSDMap so things keep working

15 years agorados: benching sequential reads can now have a time limit
Greg Farnum [Fri, 4 Dec 2009 19:40:41 +0000 (11:40 -0800)]
rados: benching sequential reads can now have a time limit

15 years agorados: change benchmark interface and record objects written/size to osds
Greg Farnum [Fri, 4 Dec 2009 19:06:35 +0000 (11:06 -0800)]
rados: change benchmark interface and record objects written/size to osds

15 years agomds: debug reconnect timeouts
Sage Weil [Fri, 4 Dec 2009 20:07:31 +0000 (12:07 -0800)]
mds: debug reconnect timeouts

15 years agodebian: only upload tarball whem building amd64
Sage Weil [Fri, 4 Dec 2009 20:07:18 +0000 (12:07 -0800)]
debian: only upload tarball whem building amd64

For some reason lenny32-packager includes binaries in
the 'make dist' tarball.  Lame.

15 years agologger: use proper format for s64
Sage Weil [Fri, 4 Dec 2009 19:27:07 +0000 (11:27 -0800)]
logger: use proper format for s64

15 years agoqa: put qa used files on ceph.newdream.net
Sage Weil [Fri, 4 Dec 2009 19:25:44 +0000 (11:25 -0800)]
qa: put qa used files on ceph.newdream.net

avoid hitting external servers if we can :)

15 years agov0.18 v0.18
Sage Weil [Fri, 4 Dec 2009 18:10:32 +0000 (10:10 -0800)]
v0.18

15 years agorados: move librados.h, rados_bencher.h
Sage Weil [Fri, 4 Dec 2009 18:03:49 +0000 (10:03 -0800)]
rados: move librados.h, rados_bencher.h

Also include rados_bencher.h in Makefile.am.

15 years agomds: avoid scatter writebehind from predirty_*
Sage Weil [Thu, 3 Dec 2009 23:16:08 +0000 (15:16 -0800)]
mds: avoid scatter writebehind from predirty_*

predirty_journal_parents does wrlock_start with
nowait=true.  Make sure we don't then simple_lock if
lock->is_updated(), as that will call scatter_writebehind,
which will barf if a log event is currently open (which
it is in this case).

15 years agocrush: fix whitespace
Sage Weil [Thu, 3 Dec 2009 22:58:58 +0000 (14:58 -0800)]
crush: fix whitespace

15 years agologger: s64, not long
Sage Weil [Thu, 3 Dec 2009 21:20:00 +0000 (13:20 -0800)]
logger: s64, not long

So we can log larger numbers.

15 years agobuffer: optional buffer debug output
Sage Weil [Thu, 3 Dec 2009 23:54:24 +0000 (15:54 -0800)]
buffer: optional buffer debug output

This interferes with the dout crap because we can't #include it, so you
need to turn all that output off to avoid getting jumbled output.  Or
better yet make sure you don't daemon() but still log dout to a file.

Fixed up the output parser to find leaks.

15 years agoceph: fix message leaks
Sage Weil [Thu, 3 Dec 2009 23:50:21 +0000 (15:50 -0800)]
ceph: fix message leaks

15 years agoinit-ceph: optionally copy executable to remote host before running it
Sage Weil [Thu, 3 Dec 2009 00:08:44 +0000 (16:08 -0800)]
init-ceph: optionally copy executable to remote host before running it

This both preserves the version of the binary that we ran (for interpreting
core files) and avoids any possibility of SIGBUS due to nfs lameness when
rarely used text pages get faulted back in.

15 years agomds: typos *sigh*
Greg Farnum [Thu, 3 Dec 2009 21:39:39 +0000 (13:39 -0800)]
mds: typos *sigh*

15 years agomds: Cleanup/doc updates
Greg Farnum [Thu, 3 Dec 2009 21:26:00 +0000 (13:26 -0800)]
mds: Cleanup/doc updates

15 years agomds: Add export killpoints
Greg Farnum [Thu, 3 Dec 2009 21:16:13 +0000 (13:16 -0800)]
mds: Add export killpoints

15 years agomds: Add killpoints for mds export
Greg Farnum [Thu, 3 Dec 2009 18:54:58 +0000 (10:54 -0800)]
mds: Add killpoints for mds export

15 years agomds: Add mds_kill_export_at asserts.
Greg Farnum [Thu, 3 Dec 2009 01:37:34 +0000 (17:37 -0800)]
mds: Add mds_kill_export_at asserts.
Create and begin documenting doc/killpoints.txt

15 years agoconfig: add kill arguments for mds import/export
Greg Farnum [Thu, 3 Dec 2009 01:25:03 +0000 (17:25 -0800)]
config: add kill arguments for mds import/export

15 years agomds: bracket mds journal events with {start,submit}_entry
Sage Weil [Thu, 3 Dec 2009 20:12:55 +0000 (12:12 -0800)]
mds: bracket mds journal events with {start,submit}_entry

This lets us catch nested journal events when they happen,
instead of down the line when dir/inode version numbers
look weird.

15 years agotodo
Sage Weil [Thu, 3 Dec 2009 00:57:07 +0000 (16:57 -0800)]
todo

snaprealm errors on kclient when ls -al .ceph/mds0/stray

15 years agodropped old aleung mds branch code
Sage Weil [Thu, 3 Dec 2009 00:56:07 +0000 (16:56 -0800)]
dropped old aleung mds branch code

See aleung_mds_security branch.

15 years agomon: fix allocation of low global_ids after mon restart
Sage Weil [Wed, 2 Dec 2009 23:03:50 +0000 (15:03 -0800)]
mon: fix allocation of low global_ids after mon restart

We need to set last_allocated in init().  Also avoid the
-1 casting and just use 0 instead.

15 years agotest_ioctls: print preferred_osd value from GET_LAYOUT ioctl
Sage Weil [Wed, 2 Dec 2009 22:46:13 +0000 (14:46 -0800)]
test_ioctls: print preferred_osd value from GET_LAYOUT ioctl

15 years agohash: fix whitespace
Sage Weil [Wed, 2 Dec 2009 20:03:53 +0000 (12:03 -0800)]
hash: fix whitespace

15 years agomds: set mdr->in[n] in rdlock_path_xlock_dentry
Sage Weil [Wed, 2 Dec 2009 20:00:19 +0000 (12:00 -0800)]
mds: set mdr->in[n] in rdlock_path_xlock_dentry

This keeps things consistent with what we'd get with
path_traverse.  Namely, it means that if done_locking gets
set to true, then a future call to rdlock_path_pin_ref can
bail out and return mdr->in[n] and get a correct value.

This fixes

 touch mnt/a
 ls mnt
 touch mnt/.ceph

mds hang on the create request.

15 years agomds: do not include /.ceph in readdir results
Sage Weil [Wed, 2 Dec 2009 19:26:24 +0000 (11:26 -0800)]
mds: do not include /.ceph in readdir results

15 years agolibrados: set id in messenger
Greg Farnum [Wed, 2 Dec 2009 01:31:18 +0000 (17:31 -0800)]
librados: set id in messenger

15 years agorados: read benchmark is asynchronous.
Greg Farnum [Tue, 1 Dec 2009 21:55:19 +0000 (13:55 -0800)]
rados: read benchmark is asynchronous.

15 years agoChange hump-backed variable names.
Greg Farnum [Tue, 1 Dec 2009 19:48:08 +0000 (11:48 -0800)]
Change hump-backed variable names.
Initialize data->in_flight!

15 years agorados: pull sequential benchmark into its own function
Greg Farnum [Sat, 21 Nov 2009 00:06:10 +0000 (16:06 -0800)]
rados: pull sequential benchmark into its own function

15 years agorados: remove iTime from object names for complete determinism
Greg Farnum [Fri, 20 Nov 2009 23:27:19 +0000 (15:27 -0800)]
rados: remove iTime from object names for complete determinism

15 years agorados: Handle errors slightly better
Greg Farnum [Fri, 20 Nov 2009 22:20:24 +0000 (14:20 -0800)]
rados: Handle errors slightly better

15 years agorados: split up function into more subfunctions
Greg Farnum [Fri, 20 Nov 2009 21:56:08 +0000 (13:56 -0800)]
rados: split up function into more subfunctions

15 years agorados: Deterministically fill data, reverse count:time order
Greg Farnum [Fri, 20 Nov 2009 18:48:18 +0000 (10:48 -0800)]
rados: Deterministically fill data, reverse count:time order

15 years agolibrados: minor comments
Greg Farnum [Fri, 20 Nov 2009 18:47:42 +0000 (10:47 -0800)]
librados: minor comments

15 years agorados: Move variables into data structure; rename to be generic
Greg Farnum [Fri, 20 Nov 2009 01:38:28 +0000 (17:38 -0800)]
rados: Move variables into data structure; rename to be generic

15 years agorados: Move benchmark functions into separate file
Greg Farnum [Thu, 19 Nov 2009 23:03:41 +0000 (15:03 -0800)]
rados: Move benchmark functions into separate file

15 years agoqa: Rename a file for future clarity.
Greg Farnum [Thu, 19 Nov 2009 23:02:58 +0000 (15:02 -0800)]
qa: Rename a file for future clarity.

15 years agoqa: specify test path as argument ot runallone.sh
Sage Weil [Wed, 2 Dec 2009 00:18:42 +0000 (16:18 -0800)]
qa: specify test path as argument ot runallone.sh

15 years agoconfig: preserve argv[0] if appropriate
Sage Weil [Wed, 2 Dec 2009 00:19:14 +0000 (16:19 -0800)]
config: preserve argv[0] if appropriate

This makes 'cfuse' show up in 'df' output.

15 years agoqa: test mdstable failures
Sage Weil [Wed, 2 Dec 2009 00:18:23 +0000 (16:18 -0800)]
qa: test mdstable failures

15 years agotodo
Sage Weil [Tue, 1 Dec 2009 22:59:57 +0000 (14:59 -0800)]
todo

the lockdep was probably due to the leak of request_mutex?

15 years agomds: inject mds failure during mdstable operations
Sage Weil [Tue, 1 Dec 2009 23:39:22 +0000 (15:39 -0800)]
mds: inject mds failure during mdstable operations

15 years agomds: log successful client reconnect
Sage Weil [Tue, 1 Dec 2009 22:47:52 +0000 (14:47 -0800)]
mds: log successful client reconnect

15 years agosepia: asdf
Sage Weil [Tue, 1 Dec 2009 22:45:14 +0000 (14:45 -0800)]
sepia: asdf

15 years agomds: journal/replay rollback on MDSTableServer
Sage Weil [Tue, 1 Dec 2009 22:43:07 +0000 (14:43 -0800)]
mds: journal/replay rollback on MDSTableServer

We journal prepare and commit; need to do rollback to!

15 years agomds: track _note_prepared/committed in normal path, too
Sage Weil [Tue, 1 Dec 2009 22:16:13 +0000 (14:16 -0800)]
mds: track _note_prepared/committed in normal path, too

This was broken by cd6f3817.

15 years agomds: pass do_eval through to adjsut_subtreeauth
Sage Weil [Tue, 1 Dec 2009 21:50:05 +0000 (13:50 -0800)]
mds: pass do_eval through to adjsut_subtreeauth

15 years agovstart: add [mds.a] section when no -x
Sage Weil [Tue, 1 Dec 2009 18:50:47 +0000 (10:50 -0800)]
vstart: add [mds.a] section when no -x

15 years agomds: drop requests on closed|closing|etc sessions
Sage Weil [Tue, 1 Dec 2009 18:38:47 +0000 (10:38 -0800)]
mds: drop requests on closed|closing|etc sessions

15 years agoceph.spec: mostly in line with .deb
Sage Weil [Thu, 26 Nov 2009 05:45:11 +0000 (21:45 -0800)]
ceph.spec: mostly in line with .deb

No packages for radosgw or libcrush/ceph/rados, though.

15 years agoobject: add missing include
Sage Weil [Thu, 26 Nov 2009 05:34:51 +0000 (21:34 -0800)]
object: add missing include

For sprintf().

15 years agomds: ignore reconnect if session state is closed
Sage Weil [Thu, 26 Nov 2009 05:23:57 +0000 (21:23 -0800)]
mds: ignore reconnect if session state is closed

On reconnect, if we didn't have a session from the journal, our Session
state will be 'closed'.  Act accordingly.

15 years agotodo
Sage Weil [Wed, 25 Nov 2009 03:01:54 +0000 (19:01 -0800)]
todo

15 years agomds: don't renew caps (or touch_session) on closed session
Sage Weil [Mon, 23 Nov 2009 23:55:35 +0000 (15:55 -0800)]
mds: don't renew caps (or touch_session) on closed session

Also assert that we're on the state list before touching.

15 years agomds: less --, more -
Sage Weil [Mon, 23 Nov 2009 23:44:28 +0000 (15:44 -0800)]
mds: less --, more -

15 years agomds: update pending_for_mds during table server replay
Sage Weil [Mon, 23 Nov 2009 23:43:36 +0000 (15:43 -0800)]
mds: update pending_for_mds during table server replay

Otherwise we our replay of AGREE after recovery is wrong; we just replay
what was saved, without taking additional journaled items into account.

15 years agomon: add 'mds set_state <gid> <stateid>'
Sage Weil [Mon, 23 Nov 2009 23:42:03 +0000 (15:42 -0800)]
mon: add 'mds set_state <gid> <stateid>'

For mdsmon disaster recovery :)

15 years agomon: avoid mds state update when clearing laggy flag
Sage Weil [Mon, 23 Nov 2009 22:45:00 +0000 (14:45 -0800)]
mon: avoid mds state update when clearing laggy flag

Do not clear laggy flag (or otherwise get into prepare_update) if the mds
hasn't seen the latest map.  Previously we could go to clear laggy and also
revert to an old mds state.

15 years agovstart.sh: fix -k for mds loading
Yehuda Sadeh [Mon, 23 Nov 2009 19:19:45 +0000 (11:19 -0800)]
vstart.sh: fix -k for mds loading

15 years agovstart.sh: fix -k (cmds init)
Yehuda Sadeh [Fri, 20 Nov 2009 23:55:13 +0000 (15:55 -0800)]
vstart.sh: fix -k (cmds init)

15 years agomsgr: fix bad unlock on tcp_write error
Sage Weil [Mon, 23 Nov 2009 22:23:13 +0000 (14:23 -0800)]
msgr: fix bad unlock on tcp_write error

15 years agomds: fix replay of hard links
Sage Weil [Mon, 23 Nov 2009 21:47:01 +0000 (13:47 -0800)]
mds: fix replay of hard links

Use dir->link_remote_inode, not raw function, so that the CDir accounting
gets set up.

15 years agomds: clear session before remove_session
Sage Weil [Sat, 21 Nov 2009 06:02:38 +0000 (22:02 -0800)]
mds: clear session before remove_session

remove_session may drop the last ref.