]>
git.apps.os.sepia.ceph.com Git - ceph.git/log
Sage Weil [Sun, 20 Jun 2010 16:45:05 +0000 (09:45 -0700)]
mkcephfs: push conf to remote machines
Signed-off-by: Fred Ar <ar.fred@yahoo.com>
Signed-off-by: Sage Weil <sage@newdream.net>
Sage Weil [Sun, 20 Jun 2010 16:44:37 +0000 (09:44 -0700)]
mon: allow 10ms clock drift before complaining
Fred Ar [Sat, 19 Jun 2010 15:40:55 +0000 (08:40 -0700)]
debian: include cclass
Fred Ar [Sat, 19 Jun 2010 15:40:00 +0000 (08:40 -0700)]
initscript: fix for dash
Signed-off-by: Fred Ar <ar.fred@yahoo.com>
Fred Ar [Sat, 19 Jun 2010 15:39:37 +0000 (08:39 -0700)]
cclass: fix for dash
Signed-off-by: Fred Ar <ar.fred@yahoo.com>
Sage Weil [Sat, 19 Jun 2010 04:26:41 +0000 (21:26 -0700)]
initscript: remove class loading for now
- only need to do it once, by connecting to a random monitor, not for
each monitor
- not sure we should try it every time we start the monitor for all time,
as opposed to once after mkfs, or whenever the admin chooses to load
new classes
Sage Weil [Sat, 19 Jun 2010 02:12:01 +0000 (19:12 -0700)]
vstart: only need to load classes once, not for each monitor
Sage Weil [Fri, 18 Jun 2010 23:32:10 +0000 (16:32 -0700)]
Merge branch 'rbd-class' into unstable
Sage Weil [Fri, 18 Jun 2010 23:31:38 +0000 (16:31 -0700)]
Revert "class: able to add classes when doing mkfs"
This reverts commit
65371482dd661c6dc3d251fb9fd4e01812bdaa0e .
Sage Weil [Fri, 18 Jun 2010 22:59:36 +0000 (15:59 -0700)]
filestore: op_start when op is _queued_, so that q is drained on commit
We need the store in a consistent state on commit, which means flushing
transactions such that we have all ops <= a given seq applied. That is
handled by the commit_start()/commit_started() pair, but will only include
ops in the FileStore queue if we op_start when it is initially queued.
Which is exactly what we want, because the queue can reorder things, so
stopping just currently-being-applied updates will only keep transactions
atomic but not ordered.
Yup!
Sage Weil [Fri, 18 Jun 2010 22:09:05 +0000 (15:09 -0700)]
journal: maintain applied_seq, use that value during the commit.
Track which seq's have successfully applied.
This fixes writeahead mode. Parallel mode is still broken...
Sage Weil [Fri, 18 Jun 2010 21:30:02 +0000 (14:30 -0700)]
buffer: fix includes for writev/iovec stuff in write_fd()
Sage Weil [Fri, 18 Jun 2010 21:09:15 +0000 (14:09 -0700)]
filestore: make sync() and friends actually sync!
Sage Weil [Fri, 18 Jun 2010 20:56:24 +0000 (13:56 -0700)]
initscripts: fix verbose output for root commands
Sage Weil [Fri, 18 Jun 2010 20:06:13 +0000 (13:06 -0700)]
filejournal: only pad to align for data segments above 64 KB
Sage Weil [Fri, 18 Jun 2010 20:00:23 +0000 (13:00 -0700)]
filejournal: make alignment optional (<0 == no preferred alignment)
Sage Weil [Fri, 18 Jun 2010 19:49:55 +0000 (12:49 -0700)]
Merge branch 'unstable' of ceph.newdream.net:git/ceph into unstable
Sage Weil [Fri, 18 Jun 2010 19:48:01 +0000 (12:48 -0700)]
buffer: remove debug cruft
Sage Weil [Fri, 18 Jun 2010 19:47:13 +0000 (12:47 -0700)]
filejournal: pad entries on disk based on preferred alignment
Adjust pre/post padding to align entry payload with it's preferred
alignment.
Sage Weil [Fri, 18 Jun 2010 19:46:23 +0000 (12:46 -0700)]
objectstore: track offset, alignment of largest data segment [encoding change]
Sage Weil [Fri, 18 Jun 2010 19:44:57 +0000 (12:44 -0700)]
buffer: list::rebuild_page_aligned()
Rebuild bufferlist such that all segments/ptrs are page sized/aligned.
(Avoids copying/reallocating segments that are already aligned.)
Greg Farnum [Thu, 17 Jun 2010 19:02:53 +0000 (12:02 -0700)]
client: if checking caps on a snap, return, don't assert
Sage Weil [Fri, 18 Jun 2010 17:10:53 +0000 (10:10 -0700)]
filejournal: use buffer::write_fd() instead of open coding
Avoid dup code, and also handle short writes.
Sage Weil [Fri, 18 Jun 2010 04:32:57 +0000 (21:32 -0700)]
osd: implement bench command
'bench [bsize] [total bytes]'
Result is reported via logclient.
Sage Weil [Fri, 18 Jun 2010 16:19:20 +0000 (09:19 -0700)]
msgr: avoid calculating data crc is peer didn't either
Otherwise we're just wasting CPU cycles!
Simone Gotti [Fri, 18 Jun 2010 15:34:14 +0000 (08:34 -0700)]
msgr: Fix crash in policy.throttler->get(message_size) when message_size == 0
Signed-off-by: Simone Gotti <simone.gotti@gmail.com>
Signed-off-by: Sage Weil <sage@newdream.net>
Sage Weil [Thu, 17 Jun 2010 20:44:12 +0000 (13:44 -0700)]
qa: another mds test fix... wait long enough for the previous death to trigger
Sage Weil [Thu, 17 Jun 2010 20:37:34 +0000 (13:37 -0700)]
msgr: ref count Pipe to avoid use after free
The Connection has a Pipe pointer to facilitate
send_message(Message, Connection)
but the reaper() clears that pointer when tearing down old pipes. This
leads to a race in which submit_message dereferences the old Pipe pointer.
Instead, make Pipe ref counted, and only submit_message() if we get a
valid Pipe reference. This fixes races between send_message() and
reaper() (as well as any use of the Connection after the pipe is closed).
Signed-off-by: Sage Weil <sage@newdream.net>
Sage Weil [Thu, 17 Jun 2010 20:09:22 +0000 (13:09 -0700)]
qa: fix mdstable failure tests
Sage Weil [Thu, 17 Jun 2010 17:51:40 +0000 (10:51 -0700)]
ceph: fix straggler header ifdef guards
Markus Elfring [Sat, 12 Jun 2010 13:04:11 +0000 (15:04 +0200)]
Bug #98: Unique names for include guards
A couple of preprocessor symbols for include guards tampered with the reserved namespace.
Signed-off-by: Markus Elfring <elfring@users.sourceforge.net>
Signed-off-by: Sage Weil <sage@newdream.net>
Sage Weil [Thu, 17 Jun 2010 17:36:39 +0000 (10:36 -0700)]
ceph: remove leading _ from macro
Reported-by: Markus Elfring <elfring@users.sourceforge.net>
Signed-off-by: Sage Weil <sage@newdream.net>
Markus Elfring [Sat, 12 Jun 2010 13:37:17 +0000 (15:37 +0200)]
Bug #98: Movement of an underscore for a data structure identifier
A leading underscore was moved to the back of a data structure identifier.
Signed-off-by: Markus Elfring <elfring@users.sourceforge.net>
Signed-off-by: Sage Weil <sage@newdream.net>
Sage Weil [Thu, 17 Jun 2010 17:04:20 +0000 (10:04 -0700)]
Merge branch 'unstable' of ssh://ceph.newdream.net/home/sage/ceph.newdream.net/git/ceph into unstable
Sage Weil [Wed, 16 Jun 2010 20:49:08 +0000 (13:49 -0700)]
Revert "mkcephfs: cosd mkfs as root, then chown"
This reverts commit
0383878c4f5133f43ec16067a8917d3080adc690 .
Sage Weil [Sat, 12 Jun 2010 05:06:38 +0000 (22:06 -0700)]
mds: fix cdir head/snap items/null accounting
We were mixing up primary vs remote, partly due to the weird placement of
the counter adjustments. Make those sane and clean things up a bit.
Sage Weil [Fri, 11 Jun 2010 18:07:32 +0000 (11:07 -0700)]
osd: make clean_up_local remove hardlinks from collection dirs
Sage Weil [Fri, 11 Jun 2010 17:36:07 +0000 (10:36 -0700)]
osd: don't requeue null OSDOp on apply_and_flush_repops
(this triggers during snap trimming)
Sage Weil [Fri, 11 Jun 2010 17:34:14 +0000 (10:34 -0700)]
osd: fix snap_trimmer AccessMode interaction
Recheck access mode every time we retake the pg lock (each object). Sleep
if necessary.
Sage Weil [Thu, 17 Jun 2010 16:29:12 +0000 (09:29 -0700)]
filejournal: journal write cache is safe on >= 2.6.33
Sage Weil [Thu, 17 Jun 2010 16:14:32 +0000 (09:14 -0700)]
mkcephfs: error out of journal dev is included in btrfs devs
Sage Weil [Fri, 11 Jun 2010 05:13:22 +0000 (22:13 -0700)]
osd: optionally periodically check pglog for corruption
...at least until we find this bug, periodically check pglog for corruption
and log it to the monitor when it happens.
Off by default.
Sage Weil [Fri, 11 Jun 2010 04:40:24 +0000 (21:40 -0700)]
logclient: clean up interaction with monclient, monitor
Use monclient where available. Otherwise, we are a monitor, so send to
ourselves.
Conflicts:
src/mon/MonmapMonitor.cc
Sage Weil [Wed, 16 Jun 2010 21:15:10 +0000 (14:15 -0700)]
filejournal: log if journal item is larger than journal
Yehuda Sadeh [Wed, 16 Jun 2010 17:53:08 +0000 (10:53 -0700)]
osd: warn when failing to mount journal on ENOTTY
suggest that the problem was due to journal size not configured
Yehuda Sadeh [Tue, 15 Jun 2010 21:13:13 +0000 (14:13 -0700)]
conf: can specify environment variables for substitution
Yehuda Sadeh [Tue, 15 Jun 2010 21:11:55 +0000 (14:11 -0700)]
conf: fix buffer initalization
This fixes a bug where we didn't initialize the variable
post processing buffer, which would sometimes lead to
garbage data.
Yehuda Sadeh [Tue, 15 Jun 2010 19:41:34 +0000 (12:41 -0700)]
osd: error out when failing to read journal header
This fixes bug #201.
Yehuda Sadeh [Mon, 14 Jun 2010 19:22:54 +0000 (12:22 -0700)]
osd: mkfs failures are colored red
Sage Weil [Fri, 11 Jun 2010 17:08:10 +0000 (10:08 -0700)]
mon: make send_reply always consume reply ref (even if not sent); fix caller hackery
Sage Weil [Wed, 9 Jun 2010 22:27:33 +0000 (15:27 -0700)]
mds: add force_wrlock to lock states; use for filemax changes
This lets us write out a max_size change when we revoke caps from a client
(thus excl->sync) and the client releases dirty caps.
Yehuda Sadeh [Thu, 10 Jun 2010 23:01:34 +0000 (16:01 -0700)]
rgw: put_obj uses write_full
Yehuda Sadeh [Thu, 10 Jun 2010 22:26:39 +0000 (15:26 -0700)]
cls_rbd: use write_full when writing image header
Yehuda Sadeh [Thu, 10 Jun 2010 22:26:08 +0000 (15:26 -0700)]
class: implement write_full interface
Yehuda Sadeh [Thu, 10 Jun 2010 18:52:05 +0000 (11:52 -0700)]
cls_rbd: fix snapshots seq number
Yehuda Sadeh [Fri, 4 Jun 2010 23:20:35 +0000 (16:20 -0700)]
osd: fix rollback when head points at the rolled back snapshot
Yehuda Sadeh [Thu, 3 Jun 2010 23:37:16 +0000 (16:37 -0700)]
cclass: add some options
Yehuda Sadeh [Thu, 3 Jun 2010 19:14:56 +0000 (12:14 -0700)]
class: modify startup scripts to add classes on mon startup
Yehuda Sadeh [Thu, 3 Jun 2010 06:12:44 +0000 (23:12 -0700)]
class: modify scripts, fix configuration
Yehuda Sadeh [Wed, 2 Jun 2010 23:56:31 +0000 (16:56 -0700)]
class: more flexible class loading, new cclass.sh script
Yehuda Sadeh [Wed, 2 Jun 2010 19:17:22 +0000 (12:17 -0700)]
class: able to add classes when doing mkfs
Yehuda Sadeh [Tue, 1 Jun 2010 19:57:54 +0000 (12:57 -0700)]
cclsinfo.sh: better architecture detection
Yehuda Sadeh [Sat, 29 May 2010 00:28:10 +0000 (17:28 -0700)]
cclsinfo.sh: shell script to dump class info
Yehuda Sadeh [Sat, 29 May 2010 00:05:24 +0000 (17:05 -0700)]
cls: export relevant functions
Yehuda Sadeh [Fri, 28 May 2010 23:07:55 +0000 (16:07 -0700)]
cclsinfo: replace error message
Yehuda Sadeh [Fri, 28 May 2010 22:32:52 +0000 (15:32 -0700)]
cclsinfo: some fixes
Yehuda Sadeh [Fri, 28 May 2010 22:18:07 +0000 (15:18 -0700)]
cclsinfo: utility to display class information
Yehuda Sadeh [Fri, 28 May 2010 00:12:01 +0000 (17:12 -0700)]
cls-rbd: some adjustments, debug info
Yehuda Sadeh [Thu, 27 May 2010 00:13:17 +0000 (17:13 -0700)]
rbd: snap revert header manipulation fixes
Yehuda Sadeh [Wed, 26 May 2010 20:57:38 +0000 (13:57 -0700)]
rbd: implement snap revert header manipulation via class
Yehuda Sadeh [Tue, 18 May 2010 18:01:56 +0000 (11:01 -0700)]
rbd: add snapshot creation via rbd class
Yehuda Sadeh [Tue, 18 May 2010 18:01:31 +0000 (11:01 -0700)]
class: add CLS_LOG macro
Yehuda Sadeh [Fri, 14 May 2010 23:47:22 +0000 (16:47 -0700)]
rbd: snapshots management via class mechanism
Greg Farnum [Wed, 19 May 2010 17:35:28 +0000 (10:35 -0700)]
rados: update documentation to mention mkpool and rmpool
Yehuda Sadeh [Thu, 10 Jun 2010 21:42:11 +0000 (14:42 -0700)]
testradospp: add a test for librados trunc
Yehuda Sadeh [Thu, 10 Jun 2010 21:41:53 +0000 (14:41 -0700)]
librados: add trunc operation
Yehuda Sadeh [Thu, 10 Jun 2010 21:12:20 +0000 (14:12 -0700)]
testradospp: update test, use write_full
Yehuda Sadeh [Thu, 10 Jun 2010 21:04:07 +0000 (14:04 -0700)]
librados: implement write_full
Yehuda Sadeh [Thu, 10 Jun 2010 18:54:23 +0000 (11:54 -0700)]
osd: fix null dereference in dout
Sage Weil [Thu, 10 Jun 2010 17:17:21 +0000 (10:17 -0700)]
mds: be extra careful
Probably implied by the refs == 0, but be explicit anyway.
Sage Weil [Thu, 10 Jun 2010 17:17:03 +0000 (10:17 -0700)]
mds: fix another instance of bad stray trimming code to use proper helper
Greg Farnum [Thu, 10 Jun 2010 16:10:34 +0000 (09:10 -0700)]
mds: remove erroneous return statement
Greg Farnum [Thu, 10 Jun 2010 16:05:29 +0000 (09:05 -0700)]
mds: a checker function like _is_dir_nonempty should only report results.
Remove the call to reply_request and fix up the callers that need it.
Sage Weil [Thu, 10 Jun 2010 05:17:22 +0000 (22:17 -0700)]
mds: handle dup anchorclient ACKs gracefully
One recovery scenario sees crisscrossing 'agree' and 'commit':
C->S --> commit1
S->C --> agree
C<-S <== agree
C->S --> commit2 .. client resends commit!
S<-C <== commit1
S->C --> ack .. server resends ack!
S<-C <== commit2
S->C --> ack .. server resends ack!
C<-S <== commit1
client journals ack
C<-S <== commit2
client should ignore dup ack ***
*** but doesn't, because the 'remove from committing list' bit above was
never in the code, even as far back as v0.4 (just the comment). Instead,
the map was getting fixed up in the _logged_ack() completion. Move it
up here instead, where it belongs!
Signed-off-by: Sage Weil <sage@newdream.net>
Sage Weil [Wed, 9 Jun 2010 21:43:32 +0000 (14:43 -0700)]
mds: fix export caps
Don't mangle sessionmap version by incrementing twice; pv is returned by
prepare_force_open_sessions().
Sage Weil [Wed, 9 Jun 2010 21:06:27 +0000 (14:06 -0700)]
mds: allow import caps pin from multiple replicas at once
e.g. on dentry unlink, replicas send their caps to the auth. There may
be multiple replicas.
Yehuda Sadeh [Wed, 9 Jun 2010 20:49:54 +0000 (13:49 -0700)]
osd: return EINVAL when snapc is invalid and trying to write
Sage Weil [Wed, 9 Jun 2010 20:30:30 +0000 (13:30 -0700)]
osd: don't clobber racing pg_info on active pg
Wido saw a pg go active, but an activate log+info update crossed paths with
a pg_notify info, and the primary overwrote it's updated shiny new info
with the stale old info from the replica. Don't do that. It causes
problems down the line. In this case, we got
osd/OSD.cc: In function 'void OSD::generate_backlog(PG*)':
osd/OSD.cc:3863: FAILED assert(!pg->is_active())
1: (ThreadPool::worker()+0x28f) [0x5b08ff]
2: (ThreadPool::WorkThread::entry()+0xd) [0x4edb8d]
3: (Thread::_entry_func(void*)+0xa) [0x46892a]
4: (()+0x69ca) [0x7f889ff249ca]
5: (clone()+0x6d) [0x7f889f1446cd]
on the replica because it was active but the primary was restarting peering
due to the bad info.
Sage Weil [Wed, 9 Jun 2010 19:29:03 +0000 (12:29 -0700)]
osd: refine SnapContext::is_valid()
Sage Weil [Wed, 9 Jun 2010 19:27:55 +0000 (12:27 -0700)]
osd: implement SnapContext::is_valid()
Sage Weil [Wed, 9 Jun 2010 17:56:17 +0000 (10:56 -0700)]
init-ceph: don't fail if we fail to umount
It may not be mounted to begin with.
Sage Weil [Wed, 9 Jun 2010 05:34:57 +0000 (22:34 -0700)]
osd: add --dump-pg-log command
Sage Weil [Wed, 9 Jun 2010 04:36:56 +0000 (21:36 -0700)]
osd: clear newly_removed_snaps on osdmap update if unchanged
We only want to apply _newly_ removed snaps once, or else we try to trim
the same snaps multiple times, and crash like so
./include/interval_set.h: In function 'void interval_set<T>::insert(T, T) [with T = snapid_t]':
./include/interval_set.h:202: FAILED assert(0)
1: (interval_set<snapid_t>::insert(snapid_t, snapid_t)+0x12c) [0x6b1728]
2: (interval_set<snapid_t>::insert(snapid_t)+0x2f) [0x6b195d]
3: (ReplicatedPG::snap_trimmer()+0x1c02) [0x66d5d6]
4: (OSD::SnapTrimWQ::_process(PG*)+0x24) [0x6dc2ac]
5: (ThreadPool::WorkQueue<PG>::_void_process(void*)+0x28) [0x6fa28a]
6: (ThreadPool::worker()+0x23a) [0x7f57a4]
7: (ThreadPool::WorkThread::entry()+0x19) [0x73e9b1]
8: (Thread::_entry_func(void*)+0x20) [0x6508a4]
9: /lib/libpthread.so.0 [0x7fa2707dc73a]
10: (clone()+0x6d) [0x7fa26fa0669d]
Signed-off-by: Sage Weil <sage@newdream.net>
Sage Weil [Tue, 8 Jun 2010 23:43:29 +0000 (16:43 -0700)]
mds: use helper to send message to client; fix send to null connection
Sometimes session->connection is NULL; use session->inst in that case.
Greg Farnum [Tue, 8 Jun 2010 23:33:59 +0000 (16:33 -0700)]
mds: remove erroneous bracket
Greg Farnum [Mon, 7 Jun 2010 17:04:33 +0000 (10:04 -0700)]
add checks for being a snapshot root to dir_is_nonempty
Sage Weil [Tue, 8 Jun 2010 22:36:55 +0000 (15:36 -0700)]
throttle: allow take(0)
Sage Weil [Tue, 8 Jun 2010 21:46:30 +0000 (14:46 -0700)]
mds: fix stale lease trimming xlist iterator abuse
Greg Farnum [Tue, 8 Jun 2010 19:10:47 +0000 (12:10 -0700)]
mon: fix memory-leaked messages
Greg Farnum [Mon, 7 Jun 2010 21:57:47 +0000 (14:57 -0700)]
buffer: fix padding distances