]> git.apps.os.sepia.ceph.com Git - ceph.git/log
ceph.git
15 years agoosd: order rmdir in remove_collection after deleting dir contents
Sage Weil [Mon, 8 Feb 2010 19:57:52 +0000 (11:57 -0800)]
osd: order rmdir in remove_collection after deleting dir contents

15 years agofilestore: fix old clobbering of commit_op_seq
Sage Weil [Mon, 8 Feb 2010 19:32:26 +0000 (11:32 -0800)]
filestore: fix old clobbering of commit_op_seq

Update only at commit.  And add a newline.

15 years agoosd: fix lock inversion with ondisk_write_unlock
Sage Weil [Mon, 8 Feb 2010 19:29:25 +0000 (11:29 -0800)]
osd: fix lock inversion with ondisk_write_unlock

Drop write lock before taking pg lock.

15 years agoosd: wait for readable on primary after pulling an object
Sage Weil [Sat, 6 Feb 2010 00:38:41 +0000 (16:38 -0800)]
osd: wait for readable on primary after pulling an object

Otherwise our attempt to push it back out again fail.

Note that currently this disables the previous push-right-after-
pull behavior.  We should either optimize the common case (full,
non-snapped object), or at least requeue the object so it's at
the front of the recovery queue so the fs cache will be hot.

15 years agomkcephfs: misc cephx fixes
Sage Weil [Fri, 5 Feb 2010 22:05:03 +0000 (14:05 -0800)]
mkcephfs: misc cephx fixes

15 years agofilestore: roll back to last clean snap on mount; clean up sanity checks
Sage Weil [Fri, 5 Feb 2010 21:14:08 +0000 (13:14 -0800)]
filestore: roll back to last clean snap on mount; clean up sanity checks

15 years agofilestore: fix up commit_op_seq
Sage Weil [Fri, 5 Feb 2010 19:32:48 +0000 (11:32 -0800)]
filestore: fix up commit_op_seq

Note that we now _only_ update commit_op_seq when doing a proper commit.
That means that any additional commit the fs does will be unknown to us. If
we have a journal, that's fine, we'll replay it.  If not, we're screwed.

So if there's no journal, we need to be using btrfs_snap mode, and roll
back to the last snap.

15 years agofilestore: use WorkQueue for ops (so we can have >1 thread issueing fs ops)
Sage Weil [Fri, 5 Feb 2010 19:23:42 +0000 (11:23 -0800)]
filestore: use WorkQueue for ops (so we can have >1 thread issueing fs ops)

15 years agoMerge branch 'unstable' into filestore
Sage Weil [Fri, 5 Feb 2010 18:14:51 +0000 (10:14 -0800)]
Merge branch 'unstable' into filestore

Conflicts:

src/authtool.cc
src/config.cc

15 years agospinlock: make lockdep optional; off by default
Sage Weil [Fri, 5 Feb 2010 17:42:00 +0000 (09:42 -0800)]
spinlock: make lockdep optional; off by default

Spinlock tend to be inner locks; not much value in lockdep checking on
them.

15 years agoosd: add uid to ceph_pg_pool; move encoding versions of rados.h
Sage Weil [Fri, 5 Feb 2010 00:18:43 +0000 (16:18 -0800)]
osd: add uid to ceph_pg_pool; move encoding versions of rados.h

15 years agomonclient: return authetnication error
Sage Weil [Thu, 4 Feb 2010 22:35:21 +0000 (14:35 -0800)]
monclient: return authetnication error

15 years agoauth: tolerate bad authenticator replies (retry instead of crashing)
Sage Weil [Thu, 4 Feb 2010 22:24:23 +0000 (14:24 -0800)]
auth: tolerate bad authenticator replies (retry instead of crashing)

15 years agomkcephfs: no scp -v
Sage Weil [Thu, 4 Feb 2010 21:49:42 +0000 (13:49 -0800)]
mkcephfs: no scp -v

15 years agoauth: fix KeyStore interface
Sage Weil [Thu, 4 Feb 2010 21:48:23 +0000 (13:48 -0800)]
auth: fix KeyStore interface

15 years agoauth: simplify KeyRing map type, authmon add/importing
Sage Weil [Thu, 4 Feb 2010 19:03:27 +0000 (11:03 -0800)]
auth: simplify KeyRing map type, authmon add/importing

15 years agocephx: separate KeyRing and RotatingKeyRing
Sage Weil [Thu, 4 Feb 2010 18:45:42 +0000 (10:45 -0800)]
cephx: separate KeyRing and RotatingKeyRing

KeyRing stores keys (on disk).

RotatingKeyRing mediates access to the in-memory pool of rotating secrets
for a single service.

15 years agocephx: add struct_v throughout. some cleanup.
Sage Weil [Thu, 4 Feb 2010 17:31:30 +0000 (09:31 -0800)]
cephx: add struct_v throughout.  some cleanup.

15 years agomkcephfs: generate cephx keys during mkfs
Sage Weil [Thu, 4 Feb 2010 00:39:54 +0000 (16:39 -0800)]
mkcephfs: generate cephx keys during mkfs

15 years agoauth: use KeyRing encode/decode
Sage Weil [Thu, 4 Feb 2010 00:12:17 +0000 (16:12 -0800)]
auth: use KeyRing encode/decode

15 years agotodo
Sage Weil [Wed, 3 Feb 2010 21:03:12 +0000 (13:03 -0800)]
todo

15 years agomount: set flags when getting -o sync
Yehuda Sadeh [Wed, 3 Feb 2010 23:54:32 +0000 (15:54 -0800)]
mount: set flags when getting -o sync

15 years agomds: fix dumpcache
Sage Weil [Wed, 3 Feb 2010 20:50:41 +0000 (12:50 -0800)]
mds: fix dumpcache

15 years agoauthtool: only create keyring if --create-keyring (or -c)
Sage Weil [Tue, 2 Feb 2010 23:45:33 +0000 (15:45 -0800)]
authtool: only create keyring if --create-keyring (or -c)

15 years agoconfig: rename 'keys file' to 'keyring'
Sage Weil [Wed, 3 Feb 2010 19:56:06 +0000 (11:56 -0800)]
config: rename 'keys file' to 'keyring'

15 years agofilestore: optionally checkpoint with snaps
Sage Weil [Wed, 3 Feb 2010 19:36:52 +0000 (11:36 -0800)]
filestore: optionally checkpoint with snaps

15 years agojournal: make sure max_size is multiple of block_size
Sage Weil [Wed, 3 Feb 2010 19:31:30 +0000 (11:31 -0800)]
journal: make sure max_size is multiple of block_size

15 years agomds: print setattr'd values with MClientRequest
Sage Weil [Wed, 3 Feb 2010 18:30:03 +0000 (10:30 -0800)]
mds: print setattr'd values with MClientRequest

15 years agomds: only set smaller flag in setattr completion if actually truncating
Sage Weil [Wed, 3 Feb 2010 18:28:01 +0000 (10:28 -0800)]
mds: only set smaller flag in setattr completion if actually truncating

Otherwise we can erroneously trigger the truncation code when another
setattr overlaps with an in-progress truncate.

15 years agoauthtool: only create keyring if --create-keyring (or -c)
Sage Weil [Tue, 2 Feb 2010 23:45:33 +0000 (15:45 -0800)]
authtool: only create keyring if --create-keyring (or -c)

15 years agofilestore: (try to) warn if not btrfs or ext3
Sage Weil [Tue, 2 Feb 2010 23:28:19 +0000 (15:28 -0800)]
filestore: (try to) warn if not btrfs or ext3

This can't distinguish between ext3 and ext4, still, and ext4 won't
work (because fsync(whatever) doesn't flush the whole journal).  Bleh.

15 years agovstart: writeahead journal by default
Sage Weil [Tue, 2 Feb 2010 23:12:04 +0000 (15:12 -0800)]
vstart: writeahead journal by default

15 years agofilestore: adjust default sync intervals
Sage Weil [Tue, 2 Feb 2010 23:09:36 +0000 (15:09 -0800)]
filestore: adjust default sync intervals

15 years agofilestore: warn on bad journaling, sync options
Sage Weil [Tue, 2 Feb 2010 23:04:50 +0000 (15:04 -0800)]
filestore: warn on bad journaling, sync options

15 years agojournal: throttle journal
Sage Weil [Tue, 2 Feb 2010 21:50:26 +0000 (13:50 -0800)]
journal: throttle journal

15 years agofilestore: throttle op queue
Sage Weil [Tue, 2 Feb 2010 21:29:56 +0000 (13:29 -0800)]
filestore: throttle op queue

15 years agotodo
Sage Weil [Tue, 2 Feb 2010 19:52:40 +0000 (11:52 -0800)]
todo

15 years agoosd: fix osd shutdown
Sage Weil [Tue, 2 Feb 2010 19:39:44 +0000 (11:39 -0800)]
osd: fix osd shutdown

15 years agojournal: fix mis-merge
Sage Weil [Tue, 2 Feb 2010 19:18:49 +0000 (11:18 -0800)]
journal: fix mis-merge

15 years agoMerge branch 'unstable' into filestore
Sage Weil [Tue, 2 Feb 2010 19:05:46 +0000 (11:05 -0800)]
Merge branch 'unstable' into filestore

Conflicts:

src/os/FileJournal.cc

15 years agomds: dump_cache even when debug_mds < 2
Sage Weil [Tue, 2 Feb 2010 18:56:14 +0000 (10:56 -0800)]
mds: dump_cache even when debug_mds < 2

Make output more readable.

15 years agojournal: allow journal seq #'s to jump
Sage Weil [Tue, 2 Feb 2010 00:24:37 +0000 (16:24 -0800)]
journal: allow journal seq #'s to jump

This happens when the regular store commits and we throw out now useless
journal entries.

15 years agojournal: make wrapping simpler
Sage Weil [Mon, 1 Feb 2010 23:44:26 +0000 (15:44 -0800)]
journal: make wrapping simpler

Take out weirdness that tries to keep journal items contiguous.  No reason
not to split them across the end/beginning of the journal.  In the general
case, this is the same # of seeks because we have to rewrite the header
anyway.

15 years agoosd: increase osdc protocol number
Yehuda Sadeh [Tue, 2 Feb 2010 00:10:04 +0000 (16:10 -0800)]
osd: increase osdc protocol number

15 years agotruncate: don't write beyong truncation with old trunc seq
Yehuda Sadeh [Tue, 2 Feb 2010 00:03:51 +0000 (16:03 -0800)]
truncate: don't write beyong truncation with old trunc seq

In a scenario where a truncation that followed a write got to
the osd before the preceding write, we shouldn't write beyond
that truncation when the write is handled in the osd.

15 years agotruncate: initialize truncate_seq, truncate_size
Yehuda Sadeh [Tue, 2 Feb 2010 00:02:01 +0000 (16:02 -0800)]
truncate: initialize truncate_seq, truncate_size

15 years agotruncate: truncate information sent on each read/write op
Yehuda Sadeh [Fri, 29 Jan 2010 19:41:42 +0000 (11:41 -0800)]
truncate: truncate information sent on each read/write op

This fixes cases in which preceding client read/write ops arrive the
osd after a later truncation that arrived through the mds

15 years agoosd: quiet down about request perms
Sage Weil [Mon, 1 Feb 2010 22:53:41 +0000 (14:53 -0800)]
osd: quiet down about request perms

15 years agolibrados: guard against double-release; clean up ref counting
Sage Weil [Mon, 1 Feb 2010 22:27:10 +0000 (14:27 -0800)]
librados: guard against double-release; clean up ref counting

15 years agorados: fix delete[] vs delete
Sage Weil [Mon, 1 Feb 2010 22:24:23 +0000 (14:24 -0800)]
rados: fix delete[] vs delete

15 years agolockdep: fix use after free; avoid register in unlocked() path
Sage Weil [Mon, 1 Feb 2010 22:24:08 +0000 (14:24 -0800)]
lockdep: fix use after free; avoid register in unlocked() path

15 years agouclient: fix uninitialized var
Sage Weil [Mon, 1 Feb 2010 21:41:21 +0000 (13:41 -0800)]
uclient: fix uninitialized var

15 years agofilestore: fix empty cond location
Sage Weil [Mon, 1 Feb 2010 21:34:38 +0000 (13:34 -0800)]
filestore: fix empty cond location

15 years agomount: fix compile errors
Sage Weil [Sat, 30 Jan 2010 00:37:30 +0000 (16:37 -0800)]
mount: fix compile errors

15 years agostreamtest: do concurrent ios; async commit AND ack
Sage Weil [Sat, 30 Jan 2010 00:36:10 +0000 (16:36 -0800)]
streamtest: do concurrent ios; async commit AND ack

15 years agoosd: add mutual exclusion while writes are applied
Sage Weil [Sat, 30 Jan 2010 00:35:04 +0000 (16:35 -0800)]
osd: add mutual exclusion while writes are applied

15 years agojournal: sync_file_range on bdev, fdatasync on file
Sage Weil [Mon, 1 Feb 2010 19:57:47 +0000 (11:57 -0800)]
journal: sync_file_range on bdev, fdatasync on file

15 years agojournal: warn if we detect disk write cache is on
Sage Weil [Mon, 1 Feb 2010 19:56:01 +0000 (11:56 -0800)]
journal: warn if we detect disk write cache is on

15 years agojournal: align (by default) even when !directio; directio by default; log latency
Sage Weil [Mon, 1 Feb 2010 19:24:02 +0000 (11:24 -0800)]
journal: align (by default) even when !directio; directio by default; log latency

15 years agojournal: group entries into single io in directio mode
Sage Weil [Sat, 30 Jan 2010 00:34:17 +0000 (16:34 -0800)]
journal: group entries into single io in directio mode

15 years agomon: fix auth restart decoding
Sage Weil [Mon, 1 Feb 2010 21:34:09 +0000 (13:34 -0800)]
mon: fix auth restart decoding

15 years agomon: fix osd tell *
Sage Weil [Mon, 1 Feb 2010 21:34:16 +0000 (13:34 -0800)]
mon: fix osd tell *

15 years agomount: fix compile errors
Sage Weil [Sat, 30 Jan 2010 00:37:30 +0000 (16:37 -0800)]
mount: fix compile errors

15 years agoMerge commit 'origin/unstable' into filestore
Sage Weil [Sat, 30 Jan 2010 00:24:39 +0000 (16:24 -0800)]
Merge commit 'origin/unstable' into filestore

15 years agoTODO: mark bugs completed
Greg Farnum [Fri, 29 Jan 2010 23:48:02 +0000 (15:48 -0800)]
TODO: mark bugs completed

15 years agomount: canonicalize path name for mtab
Greg Farnum [Fri, 29 Jan 2010 23:01:53 +0000 (15:01 -0800)]
mount: canonicalize path name for mtab

15 years agomon: possible fix for rare problem where osd boot messages are double-logged.
Greg Farnum [Fri, 29 Jan 2010 21:05:44 +0000 (13:05 -0800)]
mon: possible fix for rare problem where osd boot messages are double-logged.
From Sage.

15 years agomon: don't delete all laggy mds beacons, just the one's you've replaced
Greg Farnum [Fri, 29 Jan 2010 21:02:14 +0000 (13:02 -0800)]
mon: don't delete all laggy mds beacons, just the one's you've replaced

15 years agomon: print out proper address in debug log
Greg Farnum [Fri, 29 Jan 2010 18:15:48 +0000 (10:15 -0800)]
mon: print out proper address in debug log

15 years agomds: unify two if blocks with identical checks
Greg Farnum [Thu, 28 Jan 2010 20:21:46 +0000 (12:21 -0800)]
mds: unify two if blocks with identical checks

15 years agotodo: Slightly out of date
Greg Farnum [Wed, 27 Jan 2010 23:40:09 +0000 (15:40 -0800)]
todo: Slightly out of date

15 years agojournal: fix padding
Sage Weil [Fri, 29 Jan 2010 21:27:29 +0000 (13:27 -0800)]
journal: fix padding

15 years agoosd: streamline writing new maps to disk, somewhat
Sage Weil [Fri, 29 Jan 2010 19:38:01 +0000 (11:38 -0800)]
osd: streamline writing new maps to disk, somewhat

There is still an apply_transaction that should be replaced with a queue
if/when we are smarter about map caching so that a call to get_map on the
prior epoch won't need to go to disk.  Until then, the implicit flush
in apply_transaction is needed.

15 years agoosd: use flush, not sync_on_flush
Sage Weil [Fri, 29 Jan 2010 19:22:45 +0000 (11:22 -0800)]
osd: use flush, not sync_on_flush

15 years agofilestore: flush() will wait for queued transactions to be readable
Sage Weil [Fri, 29 Jan 2010 19:22:35 +0000 (11:22 -0800)]
filestore: flush() will wait for queued transactions to be readable

15 years agojournal: add flags field to header, entry_header
Sage Weil [Fri, 29 Jan 2010 18:17:39 +0000 (10:17 -0800)]
journal: add flags field to header, entry_header

15 years agojournal: allow pre and post padding for journal payload
Sage Weil [Thu, 28 Jan 2010 05:09:15 +0000 (21:09 -0800)]
journal: allow pre and post padding for journal payload

Replace the header.alignment fixups with an explicit post_pad.

15 years agodebian: use bash for debian build script
Sage Weil [Thu, 28 Jan 2010 04:22:18 +0000 (20:22 -0800)]
debian: use bash for debian build script

15 years agojournal: fix thread id printing
Sage Weil [Thu, 28 Jan 2010 18:55:10 +0000 (10:55 -0800)]
journal: fix thread id printing

15 years agofinisher: fix flushing, debug output
Sage Weil [Thu, 28 Jan 2010 18:33:04 +0000 (10:33 -0800)]
finisher: fix flushing, debug output

15 years agodout: print thread id hex (to match up with gdb)
Sage Weil [Thu, 28 Jan 2010 18:04:28 +0000 (10:04 -0800)]
dout: print thread id hex (to match up with gdb)

15 years agofilepath: add struct_v
Sage Weil [Wed, 27 Jan 2010 22:27:57 +0000 (14:27 -0800)]
filepath: add struct_v

15 years agocommon/include/rgw: Add versioning to structs without it.
Sage Weil [Wed, 27 Jan 2010 22:27:26 +0000 (14:27 -0800)]
common/include/rgw: Add versioning to structs without it.

15 years agomds: add v to encoded mds structs
Sage Weil [Wed, 27 Jan 2010 21:23:10 +0000 (13:23 -0800)]
mds: add v to encoded mds structs

mds: Begin auditing non-struct encodes

mds: add versioning to the events and Anchor.

mds fixes

15 years agorgw: struct_v in RGWObjEnt
Sage Weil [Wed, 27 Jan 2010 21:34:46 +0000 (13:34 -0800)]
rgw: struct_v in RGWObjEnt

15 years agojournaler: struct_v in structs
Sage Weil [Wed, 27 Jan 2010 21:34:27 +0000 (13:34 -0800)]
journaler: struct_v in structs

15 years agomds: remove unused _pad variable
Greg Farnum [Tue, 26 Jan 2010 23:08:12 +0000 (15:08 -0800)]
mds: remove unused _pad variable

15 years agoosd: add struct_v to most encoded structs that don't already have one
Sage Weil [Wed, 27 Jan 2010 21:33:02 +0000 (13:33 -0800)]
osd: add struct_v to most encoded structs that don't already have one

15 years agomsg: add type to ceph_entity_addr
Sage Weil [Wed, 27 Jan 2010 22:26:11 +0000 (14:26 -0800)]
msg: add type to ceph_entity_addr

15 years agoosd: set reqid for push/pull subops
Sage Weil [Wed, 27 Jan 2010 19:33:11 +0000 (11:33 -0800)]
osd: set reqid for push/pull subops

This just makes tracking down requests in the debug output easier.

15 years agofilestore: fix journal flush
Sage Weil [Wed, 27 Jan 2010 19:24:30 +0000 (11:24 -0800)]
filestore: fix journal flush

15 years agoosd: use queue_transaction throughout
Sage Weil [Wed, 27 Jan 2010 19:01:21 +0000 (11:01 -0800)]
osd: use queue_transaction throughout

Only apply_transaction in mkfs/mount/umount, and in handle_map.

15 years agofilestore: queue onreadable _after_ starting journal item
Sage Weil [Wed, 27 Jan 2010 18:49:48 +0000 (10:49 -0800)]
filestore: queue onreadable _after_ starting journal item

The onreadable is allowed to delete the Transaction

15 years agofilestore: queue_transaction and generic C_DeleteTransaction
Sage Weil [Wed, 27 Jan 2010 18:49:30 +0000 (10:49 -0800)]
filestore: queue_transaction and generic C_DeleteTransaction

15 years agoosd: reply with ACK if client doesn't ask for a COMMIT
Sage Weil [Wed, 27 Jan 2010 18:13:39 +0000 (10:13 -0800)]
osd: reply with ACK if client doesn't ask for a COMMIT

15 years agojournal: include a version field in header
Sage Weil [Wed, 27 Jan 2010 18:00:02 +0000 (10:00 -0800)]
journal: include a version field in header

For future ondisk format changes

15 years agoosd: simplify pg write mode transitions
Sage Weil [Wed, 27 Jan 2010 00:35:11 +0000 (16:35 -0800)]
osd: simplify pg write mode transitions

There is no reason to track client on the per-pg AccessMode, since we only
care about read/write races on a per-object state, and need to track that
per-object anyway due to the new async commit/apply model.  (Though this
is semi-broken even without that...)

Currently we will move from delayed to rmw, but there is no rmw->delayed
transition, since the logic for that is a bit more complex.. it'll be
difficult to determine when it is really a win.

In general, though, RMW is probably a better all around policy!

15 years agoosd: only use DELAYED if no journal or journal is writebehind
Sage Weil [Tue, 26 Jan 2010 23:26:26 +0000 (15:26 -0800)]
osd: only use DELAYED if no journal or journal is writebehind

15 years agoosd: make Transaction lifetime match RepModify (not stack)
Sage Weil [Tue, 26 Jan 2010 22:52:34 +0000 (14:52 -0800)]
osd: make Transaction lifetime match RepModify (not stack)

15 years agodout: print thread id hex (to match up with gdb)
Sage Weil [Tue, 26 Jan 2010 21:37:35 +0000 (13:37 -0800)]
dout: print thread id hex (to match up with gdb)