Commit Graph

15750 Commits

Author SHA1 Message Date
Sage Weil
46645936c5 Merge commit 'v0.33' 2011-08-17 10:47:02 -07:00
Sage Weil
340b4348bf v0.33 2011-08-17 09:16:27 -07:00
Sage Weil
89eeb34e65 osd: pg_stat_t: throw exception on unknown encoding
This is better then decoding nonsense, eating ram, etc.

Signed-off-by: Sage Weil <sage@newdream.net>
2011-08-17 09:16:27 -07:00
Sage Weil
ce00564049 qa: test rename into snapped dir
Tests fix for #1399.

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
2011-08-17 09:07:08 -07:00
Sage Weil
e98669ea69 mds: mark newly created snaprealms as open
Fixes: #1399
Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
2011-08-17 09:07:06 -07:00
Colin Patrick McCabe
8072bdcaa4 Fix bug in turning off logging. Remove log_dir.
Fix a bug that made it impossible to turn off logging to a file.

Remove the old "log_dir" setting. It has been deprecated for a long
time, and it adds a lot of complexity to the code.

heap_profiler: use the directory that log_file is in to construct a
profiler output file name. Don't use log_dir.

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
2011-08-15 20:58:23 -07:00
Sage Weil
e7de7cba9d Merge branch 'next' 2011-08-15 16:34:04 -07:00
Sage Weil
77c780df54 osd: fix heartbeats after bad markdown
The heartbeat start message comes from hbin messenger, which has no port
and a nonce of the pid (at startup).  When we mark ourselves down/up, and
then resend a start, the peer will send a RESETSESSION and the stat
message will get lost, and then we'll miss heartbeats.

Mark down all connections, so that when we reconnect, our start message
is not lost.

Signed-off-by: Sage Weil <sage@newdream.net>
2011-08-15 16:33:57 -07:00
Sage Weil
44d3193afa monmaptool: don't inc bool
Coverity cid 22

Signed-off-by: Sage Weil <sage@newdream.net>
2011-08-15 16:33:40 -07:00
Sage Weil
915aa41282 crushtool: don't inc bool
Coverity cid 21

Signed-off-by: Sage Weil <sage@newdream.net>
2011-08-15 16:33:40 -07:00
Sage Weil
8df56b5064 mds: break #include recursion
CInode.h -> SessionMap.h -> CInode.h

Coverity cid 14

Signed-off-by: Sage Weil <sage@newdream.net>
2011-08-15 16:33:40 -07:00
Yehuda Sadeh
3e66b8079c rgw: some encoding fixes 2011-08-15 14:15:35 -07:00
Yehuda Sadeh
3b9fbcfee2 rgw: handle zero and invalid max_keys 2011-08-15 14:15:35 -07:00
Yehuda Sadeh
b10b3a39fc rgw: create CommonPrefixes section for each prefix 2011-08-15 14:15:35 -07:00
Yehuda Sadeh
19ec8d0fa8 rgw: adjust returned error when got invalid auth request 2011-08-15 14:15:35 -07:00
Colin Patrick McCabe
80dfc981a0 obsync: add SRC_SECURE, DST_SECURE
Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
2011-08-12 17:44:45 -07:00
Sage Weil
2f7e371581 Merge branch 'next' 2011-08-12 10:33:42 -07:00
Josh Durgin
361997af37 librbd: output copy progress
Signed-off-by: Josh Durgin <josh.durgin@dreamhost.com>
2011-08-12 10:48:00 -07:00
Sage Weil
8c5e7dcf8c mds: avoid issue_caps on snapped inodes
Only head inodes have caps.  Don't set need_issue if it's not a head inode.

This is cleaner than bailing out of issue_caps(); we shouldn't get to that
point. The places that set need_issue = true usually set gather++ too,
which also shouldn't happen on a snapped inode.

Fixes: #1390
Reported-by: Damien Churchill <damoxc@gmail.com>
Signed-off-by: Sage Weil <sage@newdream.net>
2011-08-12 10:33:19 -07:00
Sage Weil
de681da0d2 client: use localized ldout macro
Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
2011-08-11 13:15:16 -07:00
Sage Weil
fc5923a9c0 mon: dump mdsmap in json
Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
2011-08-11 13:02:18 -07:00
Sage Weil
009968efa5 mds: don't wait for lock 'flushing' flag on replicas
If we are a replica, the 'flushing' means that we had dirty scatterlock
data and are waiting for it to get flushed out to the auth copy (by
cycling from MIX->LOCK, normally).  If we end up with 'flushing' set
while in the MIX state, we can't wait for it to clear before responding
to a lock request from the primary or we'll deadlock.

On the auth, flushing means flushing to the log, which makes sense; that
will always make progress despite scatterlock activity.

This fixes a hang from 3-mds fsstress with thrashing exports.  (Strangely
I never hit this on fatty.)

Signed-off-by: Sage Weil <sage@newdream.net>
2011-08-11 10:06:27 -07:00
Josh Durgin
bbd4a26a27 librbd: deduplicate sparse read interpretation
AioBlockCompletions and read_iterate each had their own copy of this
code, leading to bugs when only one was changed. Move this to a
separate function, handle_sparse_read.

Signed-off-by: Josh Durgin <josh.durgin@dreamhost.com>
2011-08-11 10:06:14 -07:00
Josh Durgin
4bf6f6a677 librbd: make read_iterate mirror AioCompletion::complete
This makes testlibrbd and testlibrbdpp pass again, and
now both I/O paths have the same logic.

Signed-off-by: Josh Durgin <josh.durgin@dreamhost.com>
2011-08-11 10:06:10 -07:00
Josh Durgin
30c97d50b6 testlibrbd: remove useless print statements
Signed-off-by: Josh Durgin <josh.durgin@dreamhost.com>
2011-08-11 10:06:07 -07:00
Josh Durgin
a631c464a4 testlibrbd: NUL-terminate orig_data
Signed-off-by: Josh Durgin <josh.durgin@dreamhost.com>
2011-08-11 10:06:04 -07:00
Josh Durgin
ac0c4d8dc2 testlibrbd(pp): accept standard command line arguments
Signed-off-by: Josh Durgin <josh.durgin@dreamhost.com>
2011-08-11 10:06:00 -07:00
Sage Weil
9d4f7487a7 osd: don't request heartbeats from down peers
We try to add sources for anything in peer_info, which can include down
OSDs.  Skip them.

Signed-off-by: Sage Weil <sage@newdream.net>
2011-08-11 10:04:39 -07:00
Sage Weil
d745572800 cfuse: properly invalidate page cache data via callback
The Client has a cache, but it is actually usually duplicating
what the kernel has in the page cache.  Use the Client callback to do a
libfuse upcall to invalidate the kernel page cache when appropriate.

Usually people didn't notice this because we were invalidating the page
cache on every file open. Stop doing that.

This gives us:
 - consistent multi-client semantics for open files
 - fewer read calls because the kernel can (re)use the page cache more
   effectively.

We are still double-caching.  We probably want to be aggressive about not
caching any clean file data in Client from cfuse since the page cache does
a better job than we do.

Signed-off-by: Sage Weil <sage@newdream.net>
2011-08-11 09:58:39 -07:00
Sage Weil
5d40ed4cac client: add callback for cache invalidate
This will get called any time an inode's cached file data is invalidated.
cfuse will use it.

Signed-off-by: Sage Weil <sage@newdream.net>
2011-08-11 09:53:53 -07:00
Sage Weil
2a0a5b546d client: use helper to invalidate/truncate cached file data
We invalidate cached file data in several places; use a common helper.

Signed-off-by: Sage Weil <sage@newdream.net>
2011-08-11 09:49:59 -07:00
Sage Weil
9e8f3482f8 client: fix cached file data truncation
We want to truncate our cached data when the file size changes, not
when truncate_size does.  This aligns us with the kernel implementation,
and it works when overwriting a file from multiple clients.

Signed-off-by: Sage Weil <sage@newdream.net>
2011-08-11 09:37:25 -07:00
Sage Weil
e643e4e7c7 fuse: enable atomic_o_trunc
The MDS does this atomically.

Signed-off-by: Sage Weil <sage@newdream.net>
2011-08-10 17:10:21 -07:00
Sage Weil
49a89c9785 fuse: allow big writes
Easiest 500% performance improvement ever!

Signed-off-by: Sage Weil <sage@newdream.net>
2011-08-10 17:10:21 -07:00
Greg Farnum
97a77c1cbc Merge branch 'wip-pg-creation' 2011-08-10 16:44:04 -07:00
Sage Weil
d1728003fd librados: implement/document tmap_{get,put}
These aren't strictly necessary now (you can just read the raw object or
do a writefull and get the same thing) but this way we document the format
and can change the backend to be smarter in the future without changing up
the interface.

Signed-off-by: Sage Weil <sage@newdream.net>
2011-08-10 16:07:33 -07:00
Sage Weil
287b0a12cb radosgw_admin: fix clitest
Signed-off-by: Sage Weil <sage@newdream.net>
2011-08-10 15:40:56 -07:00
Sage Weil
fb774ca3f3 mds: don't wait for lock 'flushing' flag on replicas
If we are a replica, the 'flushing' means that we had dirty scatterlock
data and are waiting for it to get flushed out to the auth copy (by
cycling from MIX->LOCK, normally).  If we end up with 'flushing' set
while in the MIX state, we can't wait for it to clear before responding
to a lock request from the primary or we'll deadlock.

On the auth, flushing means flushing to the log, which makes sense; that
will always make progress despite scatterlock activity.

This fixes a hang from 3-mds fsstress with thrashing exports.  (Strangely
I never hit this on fatty.)

Signed-off-by: Sage Weil <sage@newdream.net>
2011-08-10 15:38:42 -07:00
Yehuda Sadeh
4a960e4d56 rgw: can specify time for intent log purging 2011-08-10 15:28:17 -07:00
Yehuda Sadeh
762e3e11f4 rgw: reduce intent log obj name time resolution 2011-08-10 14:40:08 -07:00
Yehuda Sadeh
75e673180a rgw: add 'temp remove' tool for rgw_admin 2011-08-10 14:30:58 -07:00
Sage Weil
47ab2bab4f qa/fsstress: be verbose
Signed-off-by: Sage Weil <sage@newdream.net>
2011-08-10 14:01:06 -07:00
Sage Weil
c635c46449 librados: document tmap_update
Signed-off-by: Sage Weil <sage@newdream.net>
2011-08-10 13:54:20 -07:00
Sage Weil
ba3ac0faa4 librados: document rados_pool_list
Not sure exactly where this API markup comes from, but it seems as good
as any.

Signed-off-by: Sage Weil <sage@newdream.net>
2011-08-10 13:54:20 -07:00
Yehuda Sadeh
e9d9201322 rgw: update radosgw man page 2011-08-10 13:43:02 -07:00
Josh Durgin
48a2aa1977 Merge branch 'wip-librbd-read' 2011-08-10 13:46:55 -07:00
Yehuda Sadeh
32711fc8f9 rgw: remove original object in put_obj, instead of truncate 2011-08-10 12:14:35 -07:00
Yehuda Sadeh
68bd54d118 librados: support op flags 2011-08-10 12:14:35 -07:00
Sage Weil
07837c9bfb osd: don't request heartbeats from down peers
We try to add sources for anything in peer_info, which can include down
OSDs.  Skip them.

Signed-off-by: Sage Weil <sage@newdream.net>
2011-08-10 12:05:07 -07:00
Sage Weil
3e4a9f2341 Makefile: add rule for building coverity build bundle
As per http://scan.coverity.com/self-build/

Signed-off-by: Sage Weil <sage@newdream.net>
2011-08-10 10:50:10 -07:00