Commit Graph

10401 Commits

Author SHA1 Message Date
Sage Weil
920b2d8974 qa: fix mdstable failure tests 2010-06-17 13:09:22 -07:00
Sage Weil
4d66a72a5a ceph: fix straggler header ifdef guards 2010-06-17 10:51:40 -07:00
Markus Elfring
f4b9d9d847 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>
2010-06-17 10:47:37 -07:00
Sage Weil
6de2dde762 ceph: remove leading _ from macro
Reported-by: Markus Elfring <elfring@users.sourceforge.net>
Signed-off-by: Sage Weil <sage@newdream.net>
2010-06-17 10:36:39 -07:00
Markus Elfring
9013832c5d 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>
2010-06-17 10:34:11 -07:00
Sage Weil
f6501564a9 Merge branch 'unstable' of ssh://ceph.newdream.net/home/sage/ceph.newdream.net/git/ceph into unstable 2010-06-17 10:04:20 -07:00
Sage Weil
57d79aaa5f Revert "mkcephfs: cosd mkfs as root, then chown"
This reverts commit 0383878c4f.
2010-06-17 10:13:04 -07:00
Sage Weil
081bbe15a5 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.
2010-06-17 10:13:04 -07:00
Sage Weil
e6b033acbc osd: make clean_up_local remove hardlinks from collection dirs 2010-06-17 10:13:04 -07:00
Sage Weil
af2d023caa osd: don't requeue null OSDOp on apply_and_flush_repops
(this triggers during snap trimming)
2010-06-17 10:13:04 -07:00
Sage Weil
8c5ee65b21 osd: fix snap_trimmer AccessMode interaction
Recheck access mode every time we retake the pg lock (each object). Sleep
if necessary.
2010-06-17 10:13:04 -07:00
Sage Weil
f976bbdcf7 filejournal: journal write cache is safe on >= 2.6.33 2010-06-17 09:29:36 -07:00
Sage Weil
583f9f4296 mkcephfs: error out of journal dev is included in btrfs devs 2010-06-17 09:29:36 -07:00
Sage Weil
b472722940 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.
2010-06-17 09:29:36 -07:00
Sage Weil
b30ff1710a 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
2010-06-17 09:29:36 -07:00
Sage Weil
d7b9f39d9a filejournal: log if journal item is larger than journal 2010-06-16 14:15:10 -07:00
Yehuda Sadeh
5dfc4119fc osd: warn when failing to mount journal on ENOTTY
suggest that the problem was due to journal size not configured
2010-06-16 10:53:08 -07:00
Yehuda Sadeh
5c001f4e5c conf: can specify environment variables for substitution 2010-06-16 10:14:20 -07:00
Yehuda Sadeh
d5995661ea 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.
2010-06-16 10:14:20 -07:00
Yehuda Sadeh
ce909c2c31 osd: error out when failing to read journal header
This fixes bug #201.
2010-06-16 10:13:59 -07:00
Yehuda Sadeh
d971bb06f5 osd: mkfs failures are colored red 2010-06-14 12:22:54 -07:00
Sage Weil
658d51dae1 mon: make send_reply always consume reply ref (even if not sent); fix caller hackery 2010-06-11 10:12:24 -07:00
Sage Weil
e5ff518946 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.
2010-06-11 10:12:24 -07:00
Yehuda Sadeh
3336d9d0fa rgw: put_obj uses write_full 2010-06-10 16:01:34 -07:00
Yehuda Sadeh
7739cafb84 testradospp: add a test for librados trunc 2010-06-10 14:42:11 -07:00
Yehuda Sadeh
42ff45b4ee librados: add trunc operation 2010-06-10 14:41:53 -07:00
Yehuda Sadeh
3de397fc3d testradospp: update test, use write_full 2010-06-10 14:12:20 -07:00
Yehuda Sadeh
d1c779c96a librados: implement write_full 2010-06-10 14:04:07 -07:00
Yehuda Sadeh
92f2ecd353 osd: fix null dereference in dout 2010-06-10 11:55:32 -07:00
Sage Weil
effe5db33d mds: be extra careful
Probably implied by the refs == 0, but be explicit anyway.
2010-06-10 10:17:21 -07:00
Sage Weil
607ba5dd14 mds: fix another instance of bad stray trimming code to use proper helper 2010-06-10 10:17:03 -07:00
Greg Farnum
673fdc7aa2 mds: remove erroneous return statement 2010-06-10 09:10:34 -07:00
Greg Farnum
8be5b029d6 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.
2010-06-10 09:06:37 -07:00
Sage Weil
214a42798b 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>
2010-06-09 22:17:22 -07:00
Sage Weil
c35cb2946d mds: fix export caps
Don't mangle sessionmap version by incrementing twice; pv is returned by
prepare_force_open_sessions().
2010-06-09 14:43:32 -07:00
Sage Weil
0349c789fe 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.
2010-06-09 14:19:37 -07:00
Yehuda Sadeh
1a3fac44f2 osd: return EINVAL when snapc is invalid and trying to write 2010-06-09 13:50:39 -07:00
Sage Weil
e74250d82c 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.
2010-06-09 13:30:30 -07:00
Sage Weil
42738093ff osd: refine SnapContext::is_valid() 2010-06-09 12:29:03 -07:00
Sage Weil
2648e40333 osd: implement SnapContext::is_valid() 2010-06-09 12:27:55 -07:00
Sage Weil
7c780592f9 init-ceph: don't fail if we fail to umount
It may not be mounted to begin with.
2010-06-09 10:56:17 -07:00
Sage Weil
12798de371 osd: add --dump-pg-log command 2010-06-08 22:34:57 -07:00
Sage Weil
fb1c3b92b3 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>
2010-06-08 21:36:56 -07:00
Sage Weil
15a7a83925 mds: use helper to send message to client; fix send to null connection
Sometimes session->connection is NULL; use session->inst in that case.
2010-06-08 16:43:48 -07:00
Greg Farnum
c992d02021 mds: remove erroneous bracket 2010-06-08 16:33:59 -07:00
Greg Farnum
2a88e2e54e add checks for being a snapshot root to dir_is_nonempty 2010-06-08 16:25:04 -07:00
Sage Weil
26a4d0eacf throttle: allow take(0) 2010-06-08 15:37:36 -07:00
Sage Weil
0dc9569557 mds: fix stale lease trimming xlist iterator abuse 2010-06-08 15:37:36 -07:00
Greg Farnum
7c85646240 mon: fix memory-leaked messages 2010-06-08 15:13:37 -07:00
Greg Farnum
76fb75e988 buffer: fix padding distances 2010-06-08 15:13:37 -07:00