]> git.apps.os.sepia.ceph.com Git - ceph.git/log
ceph.git
12 years agoUnit tests for chain_xattr.cc 40/head
Loic Dachary [Thu, 7 Feb 2013 23:59:43 +0000 (00:59 +0100)]
Unit tests for chain_xattr.cc

Create a new test file covering most (> 97%) of src/os/chain_xattr.{cc,h}
lines of code. The following functions are tested:

int chain_getxattr(const char *fn, const char *name, void *val, size_t size);
int chain_fgetxattr(int fd, const char *name, void *val, size_t size);
int chain_setxattr(const char *fn, const char *name, const void *val, size_t size);
int chain_fsetxattr(int fd, const char *name, const void *val, size_t size);
int chain_listxattr(const char *fn, char *names, size_t len);
int chain_flistxattr(int fd, char *names, size_t len);
int chain_removexattr(const char *fn, const char *name);
int chain_fremovexattr(int fd, const char *name);

The function translate_raw_name substitutes @@ into @. When the trailing
character is a @, it breaks. However, such an occurence cannot be created by
chain_setxattr because it always create pairs of @. Instead of silently
breaking the loop, the function should probably return on error so that the
caller can ignore it.

The function chain_fgetxattr_len may return on error if fgetxattr
returns on error. However, it is only called after another attr function
returned success and the tests cannot create the conditions under which
it would fail.

The function chain_fsetxattr may leak attributes when used to override
an existing attribute. This leak is not tested or fixed, it is just
discussed in http://marc.info/?l=ceph-devel&m=136027076615853&w=4

If the file system in which the tests are run does not support extended
attributes, the tests are not run. The detection uses the same logic as
the one implemented in FileStore::_detect_fs

The output of the tests are silenced to reduce the output when testing
assertions ( except for the dout_emergency function which cannot be
controlled).

12 years agorgw: get bucket_owner from policy
Yehuda Sadeh [Thu, 7 Feb 2013 22:41:24 +0000 (14:41 -0800)]
rgw: get bucket_owner from policy

We already read the bucket policy, we can get the bucket
owner from there.

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
12 years agorgw: fix bucket_owner assignment
Yehuda Sadeh [Thu, 7 Feb 2013 22:40:11 +0000 (14:40 -0800)]
rgw: fix bucket_owner assignment

s->bucket_acl may be null, so reverting to old behavior.

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
12 years agoFeature 3667: Support extra canned acls.
caleb miles [Tue, 5 Feb 2013 19:10:03 +0000 (14:10 -0500)]
Feature 3667: Support extra canned acls.

Support the bucket-owner-read and bucket-owner-full
canned acls.

Signed-off-by caleb miles <caleb.miles@inktank.com>
Reviewed-by: Yehuda Sadeh <yehuda@inktank.com>
12 years agomodified the script to run on both argonaut and bobtail.
tamil [Thu, 7 Feb 2013 19:47:06 +0000 (11:47 -0800)]
modified the script to run on both argonaut and bobtail.
Signed-off-by: tamil <tamil.muthamizhan@inktank.com>
12 years agomds: rename mds_traceless_replies to mds_inject_traceless_reply_probability
Greg Farnum [Thu, 7 Feb 2013 18:25:33 +0000 (10:25 -0800)]
mds: rename mds_traceless_replies to mds_inject_traceless_reply_probability

Sage pointed out we should try for consistent naming on these debug
options, and this option is like our other inject_[x] stuff.
While we're here, make the config option comment a bit clearer.

08b82b3ef6b43283e35fd4e56eb5c78651345bea

12 years agoqa: fix iogen script
Sage Weil [Thu, 7 Feb 2013 06:01:24 +0000 (22:01 -0800)]
qa: fix iogen script

Wait 10 minutes and then stop.

Signed-off-by: Sage Weil <sage@inktank.com>
12 years agoclient: trigger the completion in _flush when short-cutting
Greg Farnum [Thu, 7 Feb 2013 00:35:49 +0000 (16:35 -0800)]
client: trigger the completion in _flush when short-cutting

We missed a shortcut return from _flush() when doing
e9a6694d0151b79c3a3b44cee5df8e3d4dcbfc2c, so _fsync() calls
were failing. To fix, if _flush discovers there's nothing to flush,
trigger the completion by calling onfinish->finish().

Fixes #4038

Signed-off-by: Greg Farnum <greg@inktank.com>
Reviewed-by: Sage Weil <sage@inktank.com>
12 years agomds: add "mds traceless replies" debug option
Greg Farnum [Wed, 6 Feb 2013 21:32:53 +0000 (13:32 -0800)]
mds: add "mds traceless replies" debug option

This option specifies (in the range 0-1) the percentage of modifying
operations that should be responded to without including a trace
for the dentries.
In order to implement it, we add a "modify" parameter to
set_trace_dist(), and the callers fill that with
mdr->req->may_write().

Signed-off-by: Greg Farnum <greg@inktank.com>
Reviewed-by: Sam Lang <sam.lang@inktank.com>
12 years agologrotate.conf: Silence rgw logrotate some more
Gary Lowell [Wed, 6 Feb 2013 19:45:30 +0000 (11:45 -0800)]
logrotate.conf: Silence rgw logrotate some more

Apply the same change as commit d02340d90c9d30d44c962bea7171db3fe3bfba8e to
the radosgw logrotate.conf.

Signed-off-by: Gary Lowell <gary.lowell@inktank.com>
12 years agosilence logrotate some more
Alexandre Oliva [Wed, 6 Feb 2013 17:27:13 +0000 (15:27 -0200)]
silence logrotate some more

I was getting email with logrotate error output from “which invoke-rc.d”
on systems without an invoke-rc.d.  This patch silences it.

Silence stderr from which when running logrotate

From: Alexandre Oliva <oliva@gnu.org>

Signed-off-by: Alexandre Oliva <oliva@gnu.org>
12 years agoMerge remote-tracking branch 'gh/wip-danny-cleanups'
Sage Weil [Wed, 6 Feb 2013 18:43:29 +0000 (10:43 -0800)]
Merge remote-tracking branch 'gh/wip-danny-cleanups'

Reviewed-by: Sage Weil <sage@inktank.com>
12 years agoMerge remote-tracking branch 'gh/wip-3768'
Sage Weil [Wed, 6 Feb 2013 18:38:08 +0000 (10:38 -0800)]
Merge remote-tracking branch 'gh/wip-3768'

12 years agotest: fix Throttle unit test.
Greg Farnum [Wed, 6 Feb 2013 18:22:06 +0000 (10:22 -0800)]
test: fix Throttle unit test.

A bunch of these are slightly racy so they're enclosed in loops. This
particular one, though, changes the Throttle state in ways that
invalidate the asserts. To fix, reset the state before commencing a
rerun.

Signed-off-by: Greg Farnum <greg@inktank.com>
12 years agoosd: do not spam system log on successful read_log
Sage Weil [Wed, 6 Feb 2013 17:02:54 +0000 (09:02 -0800)]
osd: do not spam system log on successful read_log

Signed-off-by: Sage Weil <sage@inktank.com>
12 years agorbd-fuse: fix for loop in open_rbd_image()
Danny Al-Gaaf [Wed, 6 Feb 2013 11:17:02 +0000 (12:17 +0100)]
rbd-fuse: fix for loop in open_rbd_image()

Remove uninitialized usage of 'int i' as i++ from 'for' loop.
The variale 'i' is never used in this loop and initialized
before the next use with 0.

Related warning from clang++:

rbd_fuse/rbd-fuse.c:141:36: warning: variable 'i' is uninitialized
when used here [-Wuninitialized]
        for (im = rbd_images; im != NULL; i++, im = im->next) {

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
12 years agomsg/Message.h: fix C-style pointer casting
Danny Al-Gaaf [Wed, 6 Feb 2013 11:02:51 +0000 (12:02 +0100)]
msg/Message.h: fix C-style pointer casting

Replace C-style pointer casting with correct static_cast<>().

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
12 years agomessages/MOSDRepScrub.h: initialize member variable in constructor
Danny Al-Gaaf [Wed, 6 Feb 2013 11:02:50 +0000 (12:02 +0100)]
messages/MOSDRepScrub.h: initialize member variable in constructor

Initialize chunky and deep bool member variables in the constructor
with false.

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
12 years agoinclude/xlist.h: fix C-style pointer casting
Danny Al-Gaaf [Wed, 6 Feb 2013 11:02:49 +0000 (12:02 +0100)]
include/xlist.h: fix C-style pointer casting

Replace C-style pointer casting with correct static_cast<>().

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
12 years agoinclude/types.h: change operator<< function parameter
Danny Al-Gaaf [Wed, 6 Feb 2013 11:02:48 +0000 (12:02 +0100)]
include/types.h: change operator<< function parameter

Fix "Function parameter 'v' should be passed by reference." from cppchecker.
Use 'const pair<A,B>& v' similar to the other operator<< in this file.

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
12 years agoinclude/buffer.h: fix operator=
Danny Al-Gaaf [Wed, 6 Feb 2013 11:02:47 +0000 (12:02 +0100)]
include/buffer.h: fix operator=

Fix operator=: return "iterator&" instead of 'iterator'. Check if 'this'
equals 'other' before set anything.

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
12 years agoobj_bencher.cc: use vector instead of VLA's
Danny Al-Gaaf [Wed, 6 Feb 2013 11:02:46 +0000 (12:02 +0100)]
obj_bencher.cc: use vector instead of VLA's

Fix "variable length array of non-POD element type" error. (-Wvla)

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
12 years agoceph_crypto.cc: remove unused shutdown() outside crypto ifdef's
Danny Al-Gaaf [Wed, 6 Feb 2013 11:02:45 +0000 (12:02 +0100)]
ceph_crypto.cc: remove unused shutdown() outside crypto ifdef's

Fix "out-of-line declaration of a member must be a definition
[-Wout-of-line-declaration]". Remove ceph::crypto::shutdown() outside
the crypto related ifdef's. Without nss or cryptopp configure will
fail anyways.

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
12 years agoWorkQueue.h: fix cast
Danny Al-Gaaf [Wed, 6 Feb 2013 11:02:44 +0000 (12:02 +0100)]
WorkQueue.h: fix cast

Replace C-style pointer casting with correct static_cast<>().

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
12 years agoMerge remote-tracking branch 'gh/wip-osd-commands'
Sage Weil [Wed, 6 Feb 2013 01:31:48 +0000 (17:31 -0800)]
Merge remote-tracking branch 'gh/wip-osd-commands'

Reviewed-by: Dan Mick <dan.mick@inktank.com>
Reviewed-by: Joao Luis <joao.luis@inktank.com>
12 years agomon: move list_rules into CrushWrapper method
Sage Weil [Wed, 6 Feb 2013 00:35:55 +0000 (16:35 -0800)]
mon: move list_rules into CrushWrapper method

Signed-off-by: Sage Weil <sage@inktank.com>
12 years agocrush: add list_rules() method
Sage Weil [Wed, 6 Feb 2013 00:35:43 +0000 (16:35 -0800)]
crush: add list_rules() method

Signed-off-by: Sage Weil <sage@inktank.com>
12 years agoMakefile: Add rgw/logrotate.conf source tarball
Gary Lowell [Wed, 6 Feb 2013 00:14:10 +0000 (16:14 -0800)]
Makefile:  Add rgw/logrotate.conf source tarball

Signed-off-by: Gary Lowell <gary.lowell@inktank.com>
12 years agologrotate.conf: Remove unneeded loop and update new rgw version.
Gary Lowell [Tue, 5 Feb 2013 23:20:43 +0000 (15:20 -0800)]
logrotate.conf:  Remove unneeded loop and update new rgw version.

Remove an unneeded for loop from the ceph logrotate.conf, and
update the new rgw logrotate.conf to reload the radosgw serivce.

Signed-off-by: Gary Lowell <gary.lowell@inktank.com>
12 years agorgw: create a separate logrotate file for radosgw
Yehuda Sadeh [Thu, 17 Jan 2013 21:06:14 +0000 (13:06 -0800)]
rgw: create a separate logrotate file for radosgw

Fixes: #3813
Since radosgw package is separate from the ceph package,
it also needs to have a separate logrotate. The default
path for radosgw log is changed to /var/log/radosgw,
and it now has a different logrotate script.
Updating both deb and rpm packaging.

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
12 years agoqa: add workunits/mon/crush_ops.sh
Sage Weil [Wed, 30 Jan 2013 09:04:54 +0000 (01:04 -0800)]
qa: add workunits/mon/crush_ops.sh

Test creating, listing, removing crush rules via the mon.

Signed-off-by: Sage Weil <sage@inktank.com>
12 years agomon: 'osd crush rule rm <name>'
Sage Weil [Wed, 30 Jan 2013 09:00:59 +0000 (01:00 -0800)]
mon: 'osd crush rule rm <name>'

Signed-off-by: Sage Weil <sage@inktank.com>
12 years agoosdmap: method to check if a crush ruleset is in use
Sage Weil [Wed, 30 Jan 2013 08:51:49 +0000 (00:51 -0800)]
osdmap: method to check if a crush ruleset is in use

Signed-off-by: Sage Weil <sage@inktank.com>
12 years agocrush: remove_rule() method
Sage Weil [Wed, 30 Jan 2013 08:50:33 +0000 (00:50 -0800)]
crush: remove_rule() method

Signed-off-by: Sage Weil <sage@inktank.com>
12 years agocrush: factor out (trivial) crush_destroy_rule()
Sage Weil [Wed, 30 Jan 2013 08:50:21 +0000 (00:50 -0800)]
crush: factor out (trivial) crush_destroy_rule()

Signed-off-by: Sage Weil <sage@inktank.com>
12 years agomon: 'osd crush rules list|ls'
Sage Weil [Tue, 5 Feb 2013 22:31:10 +0000 (14:31 -0800)]
mon: 'osd crush rules list|ls'

Signed-off-by: Sage Weil <sage@inktank.com>
12 years agomon: 'osd crush dump'
Sage Weil [Wed, 30 Jan 2013 08:29:18 +0000 (00:29 -0800)]
mon: 'osd crush dump'

Signed-off-by: Sage Weil <sage@inktank.com>
12 years agocrush: factor out dump_rules from dump
Sage Weil [Wed, 30 Jan 2013 08:29:04 +0000 (00:29 -0800)]
crush: factor out dump_rules from dump

Signed-off-by: Sage Weil <sage@inktank.com>
12 years agomon: 'osd crush rule create-simple <name> <root> <failure_domain_type>'
Sage Weil [Tue, 5 Feb 2013 22:30:34 +0000 (14:30 -0800)]
mon: 'osd crush rule create-simple <name> <root> <failure_domain_type>'

Simple command to create simple rules.

Signed-off-by: Sage Weil <sage@inktank.com>
12 years agocrush: add_simple_rule() command
Sage Weil [Wed, 30 Jan 2013 08:00:47 +0000 (00:00 -0800)]
crush: add_simple_rule() command

Method to create a very generic rule the distributes objects across the
specified failure domain type underneath the given root.

Signed-off-by: Sage Weil <sage@inktank.com>
12 years agocrush: fix get_rule_id() return value
Sage Weil [Wed, 30 Jan 2013 07:52:28 +0000 (23:52 -0800)]
crush: fix get_rule_id() return value

There are 0 callers, yay!

Signed-off-by: Sage Weil <sage@inktank.com>
12 years agocrush: add rule_exists()
Sage Weil [Wed, 30 Jan 2013 07:51:15 +0000 (23:51 -0800)]
crush: add rule_exists()

Signed-off-by: Sage Weil <sage@inktank.com>
12 years agomon: 'osd find <osd-id>' command
Sage Weil [Tue, 29 Jan 2013 23:55:17 +0000 (15:55 -0800)]
mon: 'osd find <osd-id>' command

Simple command to find the ip, host, rack, etc. for an OSD.  This is better
than 'ceph osd dump | grep ^osd.NNN\ '.

Signed-off-by: Sage Weil <sage@inktank.com>
12 years agoMerge branch 'wip-2753-fsync-errors'
Greg Farnum [Tue, 5 Feb 2013 21:48:49 +0000 (13:48 -0800)]
Merge branch 'wip-2753-fsync-errors'

Reviewed-by: Sage Weil <sage@inktank.com>
12 years agoMerge pull request #39 from dachary/master
Gregory Farnum [Tue, 5 Feb 2013 19:13:49 +0000 (11:13 -0800)]
Merge pull request #39 from dachary/master

Relax Throttle::_reset_max conditions and associated unit tests

12 years agoRelax Throttle::_reset_max conditions and associated unit tests 39/head
Loic Dachary [Sun, 20 Jan 2013 11:35:10 +0000 (11:35 +0000)]
Relax Throttle::_reset_max conditions and associated unit tests

Removes a condition in Throttle::_reset_max by which the waiting queue is only
Signal()ed if the new maximum is lower than the current maximum.
There is no evidence of a use case where such a restriction would be
useful. In addition waking up a thread when the maximum increases
gives it a chance to immediately continue the suspended process
instead of waiting for the next put().

Create a new test file covering 100% of src/Throttle.{cc,h} lines of code.
The following methods are tested:

* Throttle::Throttle with and without a maximum
* Throttle::~Throttle when each pending Cond is deleted
* Throttle::take
* Throttle::get when updating the maximum ( lower or higher ),
  when going to sleep waiting for the count to lower under
  the maximum, when going to sleep because another thread is
  already asleep waiting
* Throttle::get_or_fail when there is no maximum,
  when requesting a count that is larger than the maximum, either
  when the current value is under the maximum or above the maximum.
* Throttle::wait when used to reset the maximum and wake up
  another thread asleep waiting

All asserts checking the arguments sanity are exercised ( negative argument
for Throttle::take etc. ).
Adds the LGPLv2+ licensing terms to COPYING along with the others.
Adds a Contributors section to the AUTHORS file.

Notes:
Testing asserts outputs verbose error messages that should be silenced
but it does not seem possible.

Signed-off-by: Loic Dachary <loic@dachary.org>
12 years agoos: default to 'journal aio = true'
Sage Weil [Tue, 5 Feb 2013 18:29:11 +0000 (10:29 -0800)]
os: default to 'journal aio = true'

Hooray, testing indicates this is a win!

Signed-off-by: Sage Weil <sage@inktank.com>
12 years agoMerge pull request #36 from cmello/master
Gregory Farnum [Tue, 5 Feb 2013 18:20:18 +0000 (10:20 -0800)]
Merge pull request #36 from cmello/master

libexpat dependency

12 years agoMerge pull request #38 from alram/master
John Wilkins [Tue, 5 Feb 2013 17:57:32 +0000 (09:57 -0800)]
Merge pull request #38 from alram/master

Fixes in ./docs/radosgw/config.rst

12 years agoEdit endpoint-create in ./doc/radosgw/config.rst 38/head
Alexandre Marangone [Tue, 5 Feb 2013 05:20:07 +0000 (21:20 -0800)]
Edit endpoint-create in ./doc/radosgw/config.rst

internalurl and adminurl are mandatory. Typo in publicurl.

12 years agoEdit rgw keystone url in ./doc/radosgw/config.rst
Alexandre Marangone [Tue, 5 Feb 2013 05:14:54 +0000 (21:14 -0800)]
Edit rgw keystone url in ./doc/radosgw/config.rst

Won't work with the public port, it needs to be the admin port.

12 years agoNote on host in ./doc/radosgw/config.rst
Alexandre Marangone [Tue, 5 Feb 2013 05:09:37 +0000 (21:09 -0800)]
Note on host in ./doc/radosgw/config.rst

Some people have configured host with a FQDN or an IP
which prevents /etc/init.d/radosgw start to launch the daemon.

12 years agodoc: Updated to note bobtail supports RGW + Keystone.
John Wilkins [Tue, 5 Feb 2013 00:42:03 +0000 (16:42 -0800)]
doc: Updated to note bobtail supports RGW + Keystone.

Signed-off-by: John Wilkins <john.wilkins@inktank.com>
12 years agocli test: add pg deep-scrub option to test
Gary Lowell [Mon, 4 Feb 2013 22:14:45 +0000 (14:14 -0800)]
cli test: add pg deep-scrub option to test

Signed-off-by: Gary Lowell <gary.lowell@inktank.com>
12 years agocli test: add pg deep-scrub option to test
Gary Lowell [Mon, 4 Feb 2013 22:14:45 +0000 (14:14 -0800)]
cli test: add pg deep-scrub option to test

Signed-off-by: Gary Lowell <gary.lowell@inktank.com>
12 years agoinstall: remove perl dependency
Gary Lowell [Mon, 4 Feb 2013 20:56:01 +0000 (12:56 -0800)]
install:  remove perl dependency

Change the filter in logrotate to use sed instead of perl, and remove the
package dependency on perl.

Signed-off-by: Gary Lowell <gary.lowell@inktank.com>
12 years agoAdd "pg deep-scrub..." missing from ceph usage output
David Zafman [Mon, 4 Feb 2013 19:45:49 +0000 (11:45 -0800)]
Add "pg deep-scrub..." missing from ceph usage output

Signed-off-by: David Zafman <david.zafman@inktank.com>
Reviewed-by: Samuel Just <sam.just@inktank.com>
12 years agorgw: fix setting of NULL to string
Yehuda Sadeh [Fri, 1 Feb 2013 18:56:11 +0000 (10:56 -0800)]
rgw: fix setting of NULL to string

Fixes: #3777
s->env->get() returns char * and not string and can return NULL.
Also, remove some old unused code.

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
Reviewed-by: Greg Farnum <greg@inktank.com>
12 years agoxattr_bench.cc: remove twice included <time.h>
Danny Al-Gaaf [Mon, 4 Feb 2013 16:54:09 +0000 (17:54 +0100)]
xattr_bench.cc: remove twice included <time.h>

Cleanup includes, remove twice included <time.h>.

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
12 years agoceph-filestore-dump.cc: remove twice included <iostream>
Danny Al-Gaaf [Mon, 4 Feb 2013 16:54:08 +0000 (17:54 +0100)]
ceph-filestore-dump.cc: remove twice included <iostream>

Cleanup includes, remove twice included <iostream>.

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
12 years agotestmsgr.cc: remove twice included <sys/stat.h>
Danny Al-Gaaf [Mon, 4 Feb 2013 16:54:07 +0000 (17:54 +0100)]
testmsgr.cc: remove twice included <sys/stat.h>

Cleanup includes, remove twice included <sys/stat.h>.

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
12 years agoperf_counters.cc: remove twice included header files
Danny Al-Gaaf [Mon, 4 Feb 2013 16:54:06 +0000 (17:54 +0100)]
perf_counters.cc: remove twice included header files

Cleanup includes, remove twice included "global/global_init.h" and
"common/ceph_context.h".

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
12 years agotestxattr.cc: remove twice included <iostream>
Danny Al-Gaaf [Mon, 4 Feb 2013 16:54:05 +0000 (17:54 +0100)]
testxattr.cc: remove twice included <iostream>

Cleanup includes, remove twice included <iostream>.

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
12 years agoworkload_generator.cc: remove twice included "common/debug.h"
Danny Al-Gaaf [Mon, 4 Feb 2013 16:54:04 +0000 (17:54 +0100)]
workload_generator.cc: remove twice included "common/debug.h"

Cleanup includes, remove twice included "common/debug.h"

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
12 years agotest_idempotent.cc: remove twice included "os/FileStore.h"
Danny Al-Gaaf [Mon, 4 Feb 2013 16:54:03 +0000 (17:54 +0100)]
test_idempotent.cc: remove twice included "os/FileStore.h"

Cleanup includes, remove twice included "os/FileStore.h".

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
12 years agotp_bench.cc: remove twice included <iostream>
Danny Al-Gaaf [Mon, 4 Feb 2013 16:54:02 +0000 (17:54 +0100)]
tp_bench.cc: remove twice included <iostream>

Cleanup includes, remove twice included <iostream>.

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
12 years agosmall_io_bench*.cc: remove twice included <iostream>
Danny Al-Gaaf [Mon, 4 Feb 2013 16:54:01 +0000 (17:54 +0100)]
small_io_bench*.cc: remove twice included <iostream>

Cleanup includes, remove twice included <iostream>.

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
12 years agoMDS.cc: remove twice included common/errno.h
Danny Al-Gaaf [Mon, 4 Feb 2013 16:54:00 +0000 (17:54 +0100)]
MDS.cc: remove twice included common/errno.h

Cleanup includes, remove twice included common/errno.h.

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
12 years agomon: enforce reweight be between 0..1
Sage Weil [Mon, 4 Feb 2013 17:14:39 +0000 (09:14 -0800)]
mon: enforce reweight be between 0..1

Signed-off-by: Sage Weil <sage@inktank.com>
Reviewed-by: Joao Luis <joao.luis@inktank.com>
12 years agoqa: smalliobenchrbd workunit
Sage Weil [Sun, 3 Feb 2013 17:28:22 +0000 (09:28 -0800)]
qa: smalliobenchrbd workunit

Run a bunch of parallel smalliobenchrbd processes.

Signed-off-by: Sage Weil <sage@inktank.com>
12 years agoMerge remote-tracking branch 'gh/wip-rbd-bench'
Sage Weil [Sun, 3 Feb 2013 16:59:48 +0000 (08:59 -0800)]
Merge remote-tracking branch 'gh/wip-rbd-bench'

Conflicts:
ceph.spec.in
debian/ceph-test.install
src/.gitignore

12 years agoMerge branch 'wip-rpm-update3'
Gary Lowell [Sat, 2 Feb 2013 07:26:21 +0000 (23:26 -0800)]
Merge branch 'wip-rpm-update3'

Patches to ceph.spec.in and addition of rbd-fuse package.

12 years agoMerge branch 'master' of https://github.com/ceph/ceph
John Wilkins [Fri, 1 Feb 2013 19:31:10 +0000 (11:31 -0800)]
Merge branch 'master' of https://github.com/ceph/ceph

12 years agodoc: Minor edits.
John Wilkins [Fri, 1 Feb 2013 19:30:30 +0000 (11:30 -0800)]
doc: Minor edits.

Signed-off-by: John Wilkins <john.wilkins@inktank.com>
12 years agorgw: key indexes are only link to user info
Yehuda Sadeh [Thu, 13 Dec 2012 23:52:34 +0000 (15:52 -0800)]
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>
12 years agoBuild: Add -n to files and description for rbd-fuse in ceph.sepc.in
Gary Lowell [Fri, 1 Feb 2013 05:51:44 +0000 (21:51 -0800)]
Build:  Add -n to files and description for rbd-fuse in ceph.sepc.in

Signed-off-by: Gary Lowell <gary.lowell@inktank.com>
12 years agoMakefile: Install new rdb-fuse.8 man page
Gary Lowell [Fri, 1 Feb 2013 05:04:49 +0000 (21:04 -0800)]
Makefile:  Install new rdb-fuse.8 man page

Signed-off-by: Gary Lowell <gary.lowell@inktank.com>
12 years agobuild: Add new rbd-fuse package
Gary Lowell [Fri, 1 Feb 2013 04:35:26 +0000 (20:35 -0800)]
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>
12 years agoRevert "Don't install rbd-fuse binary"
Danny Al-Gaaf [Wed, 30 Jan 2013 18:00:40 +0000 (19:00 +0100)]
Revert "Don't install rbd-fuse binary"

This reverts commit 35e5d74e5c5786bc91df5dc10b5c08c77305df4e.

-> fix build instead

12 years agorbd-fuse: quick and dirty manpage
Dan Mick [Fri, 1 Feb 2013 02:43:29 +0000 (18:43 -0800)]
rbd-fuse: quick and dirty manpage

Signed-off-by: Dan Mick <dan.mick@inktank.com>
12 years agorbd-fuse: quick and dirty manpage
Dan Mick [Fri, 1 Feb 2013 02:43:29 +0000 (18:43 -0800)]
rbd-fuse: quick and dirty manpage

Signed-off-by: Dan Mick <dan.mick@inktank.com>
12 years agoceph-filestore-dump.cc: don't use po::value<string>()->required()
Danny Al-Gaaf [Thu, 31 Jan 2013 14:41:19 +0000 (15:41 +0100)]
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>
12 years agodoc: Added more detail to SSD section. Links to performance blogs.
John Wilkins [Fri, 1 Feb 2013 00:34:02 +0000 (16:34 -0800)]
doc: Added more detail to SSD section. Links to performance blogs.

fixes: #3960

Signed-off-by: John Wilkins <john.wilkins@inktank.com>
12 years agoMerge pull request #37 from alram/master
Yehuda Sadeh [Fri, 1 Feb 2013 00:19:28 +0000 (16:19 -0800)]
Merge pull request #37 from alram/master

Add important note in doc/radosgw/config.rst

12 years agoAdd important note in doc/radosgw/config.rst 37/head
Alexandre Marangone [Thu, 31 Jan 2013 23:58:15 +0000 (15:58 -0800)]
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.

12 years agoceph-filestore-dump.cc: don't use po::value<string>()->required()
Danny Al-Gaaf [Thu, 31 Jan 2013 14:41:19 +0000 (15:41 +0100)]
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>
12 years agoceph.spec.in: fix file section for ceph-resource-agents
Danny Al-Gaaf [Wed, 30 Jan 2013 18:00:45 +0000 (19:00 +0100)]
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>
12 years agoceph.spec.in: extend fix for libedit-devel on special SUSE versions
Danny Al-Gaaf [Wed, 30 Jan 2013 18:00:44 +0000 (19:00 +0100)]
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>
12 years agoceph.spec.in: don't move libcephfs_jni files around
Danny Al-Gaaf [Wed, 30 Jan 2013 18:00:43 +0000 (19:00 +0100)]
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>
12 years agoceph.spec.in: move libcephfs_jni.so to ceph-devel
Danny Al-Gaaf [Wed, 30 Jan 2013 18:00:42 +0000 (19:00 +0100)]
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>
12 years agoValidate format strings for CLS_ERR/CLS_LOG
Dan Mick [Thu, 31 Jan 2013 01:33:09 +0000 (17:33 -0800)]
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>
12 years agoqa: update the rbd/concurrent.sh workunit
Alex Elder [Thu, 31 Jan 2013 12:47:59 +0000 (06:47 -0600)]
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>
12 years agoAdd ceph-filestore-dump to the packaging
David Zafman [Thu, 31 Jan 2013 02:50:07 +0000 (18:50 -0800)]
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>
12 years agodoc: v0.56.2 release notes
Sage Weil [Wed, 30 Jan 2013 23:41:39 +0000 (15:41 -0800)]
doc: v0.56.2 release notes

Signed-off-by: Sage Weil <sage@inktank.com>
12 years agoosd: create tool to extract pg info and pg log from filestore
David Zafman [Wed, 30 Jan 2013 02:21:51 +0000 (18:21 -0800)]
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>
12 years agoMove read_log() function to prep for next commit
David Zafman [Wed, 30 Jan 2013 01:59:45 +0000 (17:59 -0800)]
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>
12 years agoPGMap: fix -Wsign-compare warning
Danny Al-Gaaf [Wed, 30 Jan 2013 17:52:24 +0000 (18:52 +0100)]
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>
12 years agotest_libcephfs: fix xattr test
Sage Weil [Wed, 30 Jan 2013 19:32:23 +0000 (11:32 -0800)]
test_libcephfs: fix xattr test

Ignore the ceph.*.layout xattrs.

Signed-off-by: Sage Weil <sage@inktank.com>
12 years agoqa: add test for rbd map and snapshots
Sage Weil [Wed, 30 Jan 2013 09:06:03 +0000 (01:06 -0800)]
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>
12 years agoMerge remote-tracking branch 'gh/next'
Sage Weil [Wed, 30 Jan 2013 09:05:07 +0000 (01:05 -0800)]
Merge remote-tracking branch 'gh/next'