Commit Graph

23603 Commits

Author SHA1 Message Date
Sage Weil
4e29c95d6f mon: enforce reweight be between 0..1
Signed-off-by: Sage Weil <sage@inktank.com>
Reviewed-by: Joao Luis <joao.luis@inktank.com>
2013-02-04 09:14:39 -08:00
Sage Weil
b970d054ce qa: smalliobenchrbd workunit
Run a bunch of parallel smalliobenchrbd processes.

Signed-off-by: Sage Weil <sage@inktank.com>
2013-02-03 09:28:22 -08:00
Sage Weil
4be48a6e53 Merge remote-tracking branch 'gh/wip-rbd-bench'
Conflicts:
	ceph.spec.in
	debian/ceph-test.install
	src/.gitignore
2013-02-03 08:59:48 -08:00
Gary Lowell
606b5c1507 Merge branch 'wip-rpm-update3'
Patches to ceph.spec.in and addition of rbd-fuse package.
2013-02-01 23:26:21 -08:00
John Wilkins
04210c2652 Merge branch 'master' of https://github.com/ceph/ceph 2013-02-01 11:31:10 -08:00
John Wilkins
d050fe1ee7 doc: Minor edits.
Signed-off-by: John Wilkins <john.wilkins@inktank.com>
2013-02-01 11:30:30 -08:00
Yehuda Sadeh
0797be3f86 rgw: key indexes are only link to user info
Instead of keeping multiple copies of the user info,
we just treat the key index as a pointer to the actual
user info (indexed by uid). This helps with two issues:
first, it scales better as we don't need to update the
entire set of keys whenever we make any change. Second,
it helps with the uid index atomicity.
One point to keep in mind is that both the links and the
info can be cached, so effect on performance is minimal.

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
Reviewed-by: Sage Weil <sage@inktank.com>
Reviewed-by: caleb miles <caleb.miles@inktank.com>
2013-02-01 10:35:10 -08:00
Gary Lowell
fd1512fc89 Build: Add -n to files and description for rbd-fuse in ceph.sepc.in
Signed-off-by: Gary Lowell  <gary.lowell@inktank.com>
2013-01-31 21:51:44 -08:00
Gary Lowell
de01bddb3a Makefile: Install new rdb-fuse.8 man page
Signed-off-by: Gary Lowell  <gary.lowell@inktank.com>
2013-01-31 21:04:49 -08:00
Gary Lowell
16cf9dc67e build: Add new rbd-fuse package
rdb-fuse is a new facility to map ceph rdb images to files.

Signed-off-by: Gary Lowell  <gary.lowell@inktank.com>
2013-01-31 20:35:26 -08:00
Danny Al-Gaaf
7d1e825471 Revert "Don't install rbd-fuse binary"
This reverts commit 35e5d74e5c.

-> fix build instead
2013-01-31 20:32:07 -08:00
Dan Mick
334568e005 rbd-fuse: quick and dirty manpage
Signed-off-by: Dan Mick <dan.mick@inktank.com>
2013-01-31 19:29:26 -08:00
Dan Mick
91f8c3c859 rbd-fuse: quick and dirty manpage
Signed-off-by: Dan Mick <dan.mick@inktank.com>
2013-01-31 18:44:16 -08:00
Danny Al-Gaaf
340b1cfe9b ceph-filestore-dump.cc: don't use po::value<string>()->required()
Don't use po::value<string>()->required() since this breaks build on
RHEL/CentOs6. Check if the options are set as in the code of other
ceph parts.

Move some checks up in the code to validate options as soon
as possible. Remove printing 'help' twice, and check it first.

Fix type description.

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
Signed-off-by: David Zafman <david.zafman@inktank.com>
2013-01-31 16:52:40 -08:00
John Wilkins
1ee46c5e74 doc: Added more detail to SSD section. Links to performance blogs.
fixes: #3960

Signed-off-by: John Wilkins <john.wilkins@inktank.com>
2013-01-31 16:34:02 -08:00
Yehuda Sadeh
c6d26efc33 Merge pull request #37 from alram/master
Add important note in doc/radosgw/config.rst
2013-01-31 16:19:28 -08:00
Alexandre Marangone
2292fa6a30 Add important note in doc/radosgw/config.rst
For CentOS and similar, FastCgiWrapper is turned on by default.
This causes Apache to spawn radosgw processes.
2013-01-31 15:58:15 -08:00
Danny Al-Gaaf
129a660008 ceph-filestore-dump.cc: don't use po::value<string>()->required()
Don't use po::value<string>()->required() since this breaks build on
RHEL/CentOs6. Check if the options are set as in the code of other
ceph parts.

Move some checks up in the code to validate options as soon
as possible. Remove printing 'help' twice, and check it first.

Fix type description.

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
Signed-off-by: David Zafman <david.zafman@inktank.com>
2013-01-31 14:17:09 -08:00
Danny Al-Gaaf
9235271a05 ceph.spec.in: fix file section for ceph-resource-agents
Create needed dirs (/usr/lib/ocf/resource.d/ceph) for the ceph-resource-agents
subpackage.

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
2013-01-31 14:16:03 -08:00
Danny Al-Gaaf
6e09cb9ba5 ceph.spec.in: extend fix for libedit-devel on special SUSE versions
Extend fix for libedit-devel on special SUSE versions, use ncurses
also on src/ocf/Makefile and src/java/Makefile

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
2013-01-31 14:16:03 -08:00
Danny Al-Gaaf
4c1d8d088a ceph.spec.in: don't move libcephfs_jni files around
Don't move libcephfs_jni files around from %{_libdir} to /usr/lib/jni/
in the buildroot. They should be placed in %{_libdir} as all libs.

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
2013-01-31 14:16:03 -08:00
Danny Al-Gaaf
9b16036e3b ceph.spec.in: move libcephfs_jni.so to ceph-devel
Move libcephfs_jni.so to the ceph-devel package since so-files they
shouldn't be part of the library package.

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
2013-01-31 14:16:02 -08:00
Dan Mick
3f53c3f016 Validate format strings for CLS_ERR/CLS_LOG
cls_log needed __attribute__((format(printf..)) to allow the compiler
to crosscheck format strings and arguments.  After adding that, there
needed to be a bunch of fixups for %ll, and a few changes for missing
arguments, etc. uncovered by the checking.

Fixes: #3970
Signed-off-by: Dan Mick <dan.mick@inktank.com>
Reviewed-by: Yehuda Sadeh <yehuda@inktank.com>
2013-01-31 13:06:41 -08:00
Alex Elder
97c6619d3f qa: update the rbd/concurrent.sh workunit
A few changes, now that a few rbd problems have been fixed.
First, the more substantive changes:
    - Generate a source file, and compare what's read back from rbd
      devices with the content of that file.
    - Write to the rbd device such that the written data spans
      an (assumed 4 MB) rbd object boundary, as well as starting
      and ending on non-page-aligned offsets.
    - Perform multiple reads on rbd devices: entirely within a range
      before any written data; beginning before but ending within
      written data; the exact written data (and validating what's
      read); beginning within written data but ending after it;
      reading after written data but within a written rbd object;
      and reading from an unwritten rbd object.
    - Have the sleep between iterations provide a non-integer value
      to avoid zero (or quantized) delays.

Also, some a little less substantive (but possibly informative):
    - Don't run with "set -x".  It produces a ton of noise that is
      not useful for this test.  This is an exerciser, looking
      really for system crashes during concurrent activity, and
      knowing which commands were (concurrently) active isn't going
      to help much in diagnosis.
    - Create two more directories, used to track the degree of
      concurrency (more or less) and the highest rbd id consumed.
      Files whose names are numbers are touched in each, and the
      highest at the end is the highest during the run.  This gets
      around issues passing environment info from sub-shells to the
      top-level shell.  As a bonus, it offers a better chance of
      avoiding problems due to concurrent update.
    - NAMESDIR is renamed NAMES_DIR, and it (and the others) is
      set up in the setup() function.
    - Increase the concurrency and iteration counts.
    - Move the default definitions before the ceph secrets stuff

Signed-off-by: Alex Elder <elder@inktank.com>
2013-01-31 11:55:59 -06:00
David Zafman
0758fabaed Add ceph-filestore-dump to the packaging
Feature: #3890

Signed-off-by: David Zafman <david.zafman@inktank.com>
Reviewed-by: Dan Mick <dan.mick@inktank.com>
2013-01-30 22:50:41 -08:00
Sage Weil
ab778cb1cf doc: v0.56.2 release notes
Signed-off-by: Sage Weil <sage@inktank.com>
2013-01-30 15:41:55 -08:00
David Zafman
3c8d7d7847 osd: create tool to extract pg info and pg log from filestore
New application ceph-filestore-dump created that mounts filstore
and can dump info or log in JSON when an OSD is not running.

Feature: #3890

Signed-off-by: David Zafman <david.zafman@inktank.com>
Reviewed-by: Samuel Just <sam.just@inktank.com>
2013-01-30 14:21:47 -08:00
David Zafman
4a950aa94f Move read_log() function to prep for next commit
Signed-off-by: David Zafman <david.zafman@inktank.com>
Reviewed-by: Samuel Just <sam.just@inktank.com>
2013-01-30 14:21:47 -08:00
Danny Al-Gaaf
b571f8ee2d PGMap: fix -Wsign-compare warning
Fix -Wsign-compare compiler warning:

mon/PGMap.cc: In member function 'void PGMap::apply_incremental
 (CephContext*, const PGMap::Incremental&)':
mon/PGMap.cc:247:30: warning: comparison between signed and
 unsigned integer expressions [-Wsign-compare]

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
2013-01-30 11:50:29 -08:00
Sage Weil
b0d4dd21c7 test_libcephfs: fix xattr test
Ignore the ceph.*.layout xattrs.

Signed-off-by: Sage Weil <sage@inktank.com>
2013-01-30 11:32:23 -08:00
Sage Weil
c782d2ac53 qa: add test for rbd map and snapshots
This tests for the behavior reported in #3964.  It passes on the current
code, but fails on 3.2 in squeeze (and 32-bit?).

Signed-off-by: Sage Weil <sage@inktank.com>
2013-01-30 01:06:03 -08:00
Sage Weil
6b4935023d Merge remote-tracking branch 'gh/next' 2013-01-30 01:05:07 -08:00
Dan Mick
e253830aba cls_rbd, cls_rgw: use PRI*64 when printing/logging 64-bit values
caused segfaults in 32-bit build

Fixes: #3961
Signed-off-by: Dan Mick <dan.mick@inktank.com>
Reviewed-by: Sage Weil <sage@inktank.com>
2013-01-29 23:32:14 -08:00
Sage Weil
77f57411f5 mds: move lexical_cast and assert re-#include to the top
We should keep the re-#includes immediately following the offender, and
documented.

Signed-off-by: Sage Weil <sage@inktank.com>
2013-01-29 19:48:25 -08:00
Dan Mick
35e5d74e5c Don't install rbd-fuse binary
fixes packaging warnings

Signed-off-by: Dan Mick <dan.mick@inktank.com>
2013-01-29 19:00:47 -08:00
Dan Mick
23923ee955 mds/Server.cc: fix warring assert.h's
New include boost/lexical_cast.hpp apparently drags in the system
assert.h on quantal and squeeze at least, breaking our careful
assert.h; re-include our file to fix it back

Fixes: #3957
Signed-off-by: Dan Mick <dan.mick@inktank.com>
2013-01-29 18:43:30 -08:00
Sage Weil
25e9a0be63 mon: require name for 'auth add ...' command
Otherwise we interpret the empty string as 'unknown.'.

Fixes: #3956

Signed-off-by: Sage Weil <sage@inktank.com>
2013-01-29 18:42:00 -08:00
Greg Farnum
a731da9954 Merge remote-tracking branch 'origin/wip-fuse-create-fix'
Reviewed-by: Greg Farnum <greg@inktank.com>
2013-01-29 17:07:49 -08:00
Dan Mick
84a024b647 init-ceph: make ulimit -n be part of daemon command
ulimit -n from 'max open files' was being set only on the machine
running /etc/init.d/ceph.  It needs to be added to the commands to
start the daemons, and run both locally and remotely.

Verified by examining /proc/<pid>/limits on local and remote hosts

Fixes: #3900
Signed-off-by: Dan Mick <dan.mick@inktank.com>
Reviewed-by: Loïc Dachary <loic@dachary.org>
Reviewed-by: Gary Lowell <gary.lowell@inktank.com>
2013-01-29 16:48:17 -08:00
Sage Weil
c2e50e580d Merge remote-tracking branch 'gh/wip-recovery-stats-b'
Reviewed-by: Samuel Just <sam.just@inktank.com>
2013-01-29 16:34:21 -08:00
Sage Weil
1564c3a0a3 Merge branch 'wip-vxattr'
Reviewed-by: Sam Lang <sam.lang@inktank.com>
Reviewed-by: Greg Farnum <greg@inktank.com>
2013-01-29 16:26:57 -08:00
Sage Weil
61fbe27a52 qa: add layout_vxattrs.sh test script
Test virtual xattrs for file and directory layouts.

TODO: create a data pool, add it to the fs, and make sure we can use it.

Signed-off-by: Sage Weil <sage@inktank.com>
2013-01-29 16:25:05 -08:00
Sage Weil
db31a1f9f2 mds: allow dir layout/policy to be removed via removexattr on ceph.dir.layout
This lets a user remove a policy that was previously set on a dir.

Signed-off-by: Sage Weil <sage@inktank.com>
2013-01-29 16:25:05 -08:00
Sage Weil
ebebf72f09 mds: handle ceph.*.layout.* setxattr
Allow individual fields of file or dir layouts to be set via setxattr.

Signed-off-by: Sage Weil <sage@inktank.com>
2013-01-29 16:25:05 -08:00
Sage Weil
09f28541e3 mds: fix client view of dir layout when layout is removed
We weren't handling the case where the projected node has NULL for the
layout properly.  Fixes the client's view when we remove the dir layout.

Signed-off-by: Sage Weil <sage@inktank.com>
2013-01-29 16:25:05 -08:00
Sage Weil
84751489ca client: note presence of dir layout in inode operator<<
Signed-off-by: Sage Weil <sage@inktank.com>
2013-01-29 16:25:05 -08:00
Sage Weil
ba32ea9454 client: list only aggregate xattr, but allow setting subfield xattrs
Signed-off-by: Sage Weil <sage@inktank.com>
2013-01-29 16:25:05 -08:00
Sage Weil
3f82912a89 client: implement ceph.file.* and ceph.dir.* vxattrs
Display ceph.file.* vxattrs on any regular file, and ceph.dir.* vxattrs
on any directory that has a policy set.

Signed-off-by: Sage Weil <sage@inktank.com>
2013-01-29 16:24:45 -08:00
Sage Weil
febb965095 client: move xattr namespace enforcement into internal method
This captures libcephfs users now too.

Signed-off-by: Sage Weil <sage@inktank.com>
2013-01-29 16:24:45 -08:00
Sage Weil
ad7ebad70b client: allow ceph.* xattrs
Signed-off-by: Sage Weil <sage@inktank.com>
2013-01-29 16:24:45 -08:00