]> git.apps.os.sepia.ceph.com Git - ceph.git/log
ceph.git
11 years agoMerge pull request #542 from ceph/wip-6122
Sage Weil [Tue, 15 Oct 2013 20:46:25 +0000 (13:46 -0700)]
Merge pull request #542 from ceph/wip-6122

test/librados/cmd.cc: tolerate thrashing on pg_command tests

11 years agodoc: Update from user feedback. Needed to enable S3/Keystone.
John Wilkins [Tue, 15 Oct 2013 20:38:48 +0000 (13:38 -0700)]
doc: Update from user feedback. Needed to enable S3/Keystone.

Signed-off-by: John Wilkins <john.wilkins@inktank.com>
11 years agoos/FileStore: fix fiemap double-free(s)
Alan Somers [Tue, 15 Oct 2013 20:26:13 +0000 (13:26 -0700)]
os/FileStore: fix fiemap double-free(s)

If GenericFileStoreBackend::do_fiemap returns anything other than 0, then
fiemap will not be allocated. However,
GenericFileStoreBackend::detect_features will free fiemap regardless,
triggering an assertion in tcmalloc. The attached patch will fix the bug
by only freeing fiemap when necessary.

In my case, do_fiemap returns -ENOSYS because fiemap is not implemented
on FreeBSD. However, this bug could also happen on Linux when do_fiemap
returns -ENOMEM.

Fixes: #6504
Signed-off-by: Alan Somers <asomers@gmail.com>
Reviewed-by: Sage Weil <sage@inktank.com>
11 years agoceph-dencoder: select_generated() should properly validate its input
Alan Somers [Tue, 15 Oct 2013 20:06:06 +0000 (13:06 -0700)]
ceph-dencoder: select_generated() should properly validate its input

If m_list.size() == 0, then calling select_generated(0) will result in
uninitialized data being assigned to m_object, which will cause a segfault
down the road. This patch fixes that.

To Reproduce:
$ ceph-dencoder type MWatchNotify select_test 0 encode decode
Segmentation fault (core dumped)

After the patch:
$ ./ceph-dencoder type MWatchNotify select_test 0 encode decode
error: invalid id for generated object
$ echo $?
1

Fixes: #6510
Signed-off-by: Alan Somers <asomers@gmail.com>
11 years agovstart.sh: create dev/ automatically
Sage Weil [Tue, 15 Oct 2013 19:52:57 +0000 (12:52 -0700)]
vstart.sh: create dev/ automatically

Otherwise you have to explicitly create it on a new checkout.

Also mkdir -p for consistency, tho it's not needed if dev/ is already
there.

Signed-off-by: Sage Weil <sage@inktank.com>
11 years agoMerge pull request #706 from ceph/wip-6059
Sage Weil [Tue, 15 Oct 2013 17:27:56 +0000 (10:27 -0700)]
Merge pull request #706 from ceph/wip-6059

Wip 6059

Partly-reviewed-by: Greg Farnum <greg@inktank.com>
Partly-reviewed-by: Sage Weil <sage@inktank.com>
11 years agoMerge pull request #717 from dachary/master
Sage Weil [Tue, 15 Oct 2013 17:12:07 +0000 (10:12 -0700)]
Merge pull request #717 from dachary/master

mon: osd pool set syntax relaxed, modify unit tests

Reviewed-by: Sage Weil <sage@inktank.com>
11 years agomon: osd pool set syntax relaxed, modify unit tests 717/head
Loic Dachary [Tue, 15 Oct 2013 17:03:25 +0000 (19:03 +0200)]
mon: osd pool set syntax relaxed, modify unit tests

The argument is no longer restricted to a numerical value. Another
variable was added ( hashpspool ) check that it is a valid variable.

Signed-off-by: Loic Dachary <loic@dachary.org>
11 years agoMerge remote-tracking branch 'gh/next'
Sage Weil [Tue, 15 Oct 2013 00:06:13 +0000 (17:06 -0700)]
Merge remote-tracking branch 'gh/next'

11 years agoceph.spec.in: do not list ceph-rest-api twice; add missing cls_hello files
huangjun [Tue, 15 Oct 2013 00:02:23 +0000 (17:02 -0700)]
ceph.spec.in: do not list ceph-rest-api twice; add missing cls_hello files

Reported-by: hjwsm1989@gmail.com
Signed-off-by: Sage Weil <sage@inktank.com>
11 years agoMerge pull request #712 from ceph/wip-mon-pool-set
Sage Weil [Mon, 14 Oct 2013 23:56:41 +0000 (16:56 -0700)]
Merge pull request #712 from ceph/wip-mon-pool-set

rework ceph osd pool set <pool> <field> <val>

Reviewed-by: Sage Weil <sage@inktank.com>
11 years agoosd/osd_types: generalize pg_pool_t::get_flags_string() 712/head
Sage Weil [Mon, 14 Oct 2013 23:54:07 +0000 (16:54 -0700)]
osd/osd_types: generalize pg_pool_t::get_flags_string()

This way the method doesn't have to be modified when new flags are added.

Signed-off-by: Sage Weil <sage@inktank.com>
11 years agoMerge pull request #694 from grosskur/fix-rpm-junit4
Sage Weil [Mon, 14 Oct 2013 23:48:17 +0000 (16:48 -0700)]
Merge pull request #694 from grosskur/fix-rpm-junit4

ceph.spec.in: Always depend on junit4 (fixes bug #6216)

Reviewed-by: Loic Dachary <loic@dachary.org>
11 years agoMerge branch 'wip-rgw-quota'
Yehuda Sadeh [Mon, 14 Oct 2013 21:14:17 +0000 (14:14 -0700)]
Merge branch 'wip-rgw-quota'

Conflicts:
src/test/cli/radosgw-admin/help.t

Reviewed-by: Josh Durgin <josh.durgin@inktank.com>
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
11 years agorgw: swift update obj metadata also add generic attrs
Yehuda Sadeh [Fri, 4 Oct 2013 20:00:26 +0000 (13:00 -0700)]
rgw: swift update obj metadata also add generic attrs

Fixes: #6462
We were missing the generic attributes when we updated the object
metadata (operation that only exists in the swift api).

Reviewed-by: Josh Durgin <josh.durgin@inktank.com>
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
11 years agoMerge pull request #711 from ceph/wip-objecter-errors
Gregory Farnum [Mon, 14 Oct 2013 18:22:53 +0000 (11:22 -0700)]
Merge pull request #711 from ceph/wip-objecter-errors

These two patches fix several completion Contexts which are inappropriately setting the Op rval to zero.

Reviewed-by: Greg Farnum <greg@inktank.com>
11 years agoSignalHandler: fix infinite loop on BSD systems
Alan Somers [Tue, 8 Oct 2013 22:24:00 +0000 (15:24 -0700)]
SignalHandler: fix infinite loop on BSD systems

SignalHandler::entry shouldn't poll for POLLOUT, because it never actually
writes to the pipes in question. Polling for POLLOUT causes poll(2) to
immediately return, so the function spins the CPU and never blocks. Remove
the POLLOUT flag, unnecessarily introduced in commit
8e4a78f169eda716c7d6811cb6db5c757dc67207 when switching from select() to poll().

This fixes the problem on FreeBSD and doesn't break anything (AFAICT) on
Linux. Tested on FreeBSD 9.1 amd64 and Ubuntu Server 13.04 amd64.

Fixes: #6492
Signed-off-by: Alan Somers <asomers@gmail.com>
Reviewed-by: Greg Farnum <greg@inktank.com>
11 years agodoc: Removed underscore for consistency.
John Wilkins [Mon, 14 Oct 2013 17:31:51 +0000 (10:31 -0700)]
doc: Removed underscore for consistency.

Signed-off-by: John Wilkins <john.wilkins@inktank.com>
11 years agoMerge pull request #713 from dachary/master
John Wilkins [Mon, 14 Oct 2013 17:27:52 +0000 (10:27 -0700)]
Merge pull request #713 from dachary/master

doc: disable cephx requires auth_supported = none

11 years agoradosgw-admin: add --quota-scope param to usage 707/head
Yehuda Sadeh [Mon, 14 Oct 2013 17:26:49 +0000 (10:26 -0700)]
radosgw-admin: add --quota-scope param to usage

and also look at it when setting quota on a bucket.

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
11 years agoMerge pull request #708 from ceph/wip-truncate2
Gregory Farnum [Mon, 14 Oct 2013 16:32:53 +0000 (09:32 -0700)]
Merge pull request #708 from ceph/wip-truncate2

Reviewed-by: Greg Farnum <greg@inktank.com>
11 years agoMerge pull request #715 from ceph/wip-5025
Gregory Farnum [Mon, 14 Oct 2013 16:28:52 +0000 (09:28 -0700)]
Merge pull request #715 from ceph/wip-5025

Reviewed-by: Greg Farnum <greg@inktank.com>
11 years agomds: flock: fix F_GETLK 715/head
Yan, Zheng [Mon, 14 Oct 2013 08:34:26 +0000 (16:34 +0800)]
mds: flock: fix F_GETLK

fixes #5025
Signed-off-by: Yan, Zheng <zheng.z.yan@intel.com>
11 years agoReplicatedPG.h: while there cannot be a read in progress, there may be a read blocked 706/head
Samuel Just [Sun, 13 Oct 2013 16:47:58 +0000 (09:47 -0700)]
ReplicatedPG.h: while there cannot be a read in progress, there may be a read blocked

Signed-off-by: Samuel Just <sam.just@inktank.com>
11 years agodoc: disable cephx requires auth_supported = none 713/head
Loic Dachary [Sun, 13 Oct 2013 09:14:14 +0000 (11:14 +0200)]
doc: disable cephx requires auth_supported = none

    auth cluster required = none
    auth service required = none
    auth client required = none

is not enough to disable cephx if there is a

    auth_supported = cephx

line in the [global] section. It will produce the following error

    # ceph --id myself auth list
    2013-10-13 11:05:00.368638 7f812aea3700  0 librados: client.myself authentication error (1) Operation not permitted
    Error connecting to cluster: PermissionError

Changing the line to

    auth_supported = none

fixes the problem.

Signed-off-by: Loic Dachary <loic@dachary.org>
11 years agorgw: switch out param to a pointer instead of reference
Yehuda Sadeh [Sat, 12 Oct 2013 00:21:21 +0000 (17:21 -0700)]
rgw: switch out param to a pointer instead of reference

following code review

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
11 years agotest: update cli test for radosgw-admin
Yehuda Sadeh [Sat, 12 Oct 2013 00:08:06 +0000 (17:08 -0700)]
test: update cli test for radosgw-admin

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
11 years agoradosgw-admin: clarify --max-size param
Yehuda Sadeh [Sat, 12 Oct 2013 00:07:38 +0000 (17:07 -0700)]
radosgw-admin: clarify --max-size param

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
11 years agoformatter: dump_bool dumps unquoted strings
Yehuda Sadeh [Fri, 11 Oct 2013 23:56:46 +0000 (16:56 -0700)]
formatter: dump_bool dumps unquoted strings

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
11 years agorgw_quoa.{h,cc}: add copyright notice
Yehuda Sadeh [Fri, 11 Oct 2013 23:43:00 +0000 (16:43 -0700)]
rgw_quoa.{h,cc}: add copyright notice

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
11 years agoMerge branch 'wip-6444' into next
Yehuda Sadeh [Fri, 11 Oct 2013 22:44:00 +0000 (15:44 -0700)]
Merge branch 'wip-6444' into next

Reviewed-by: Josh Durgin <josh.durgin@inktank.com>
11 years agodoc: Created new index to incorporate side-by-side deb/rpm installs.
John Wilkins [Fri, 11 Oct 2013 22:08:22 +0000 (15:08 -0700)]
doc: Created new index to incorporate side-by-side deb/rpm installs.

Signed-off-by: John Wilkins <john.wilkins@inktank.com>
11 years agodoc: Created installation doc for Yum priorities. Ceph-specific packages need it.
John Wilkins [Fri, 11 Oct 2013 22:07:40 +0000 (15:07 -0700)]
doc: Created installation doc for Yum priorities. Ceph-specific packages need it.

Signed-off-by: John Wilkins <john.wilkins@inktank.com>
11 years agodoc: Created new QEMU install for RPMs with provision for Ceph-specific packages.
John Wilkins [Fri, 11 Oct 2013 22:07:08 +0000 (15:07 -0700)]
doc: Created new QEMU install for RPMs with provision for Ceph-specific packages.

Signed-off-by: John Wilkins <john.wilkins@inktank.com>
11 years agodoc: Created new QEMU install for debian.
John Wilkins [Fri, 11 Oct 2013 22:06:30 +0000 (15:06 -0700)]
doc: Created new QEMU install for debian.

Signed-off-by: John Wilkins <john.wilkins@inktank.com>
11 years agodoc: Added new libvirt install for RPM.
John Wilkins [Fri, 11 Oct 2013 22:06:02 +0000 (15:06 -0700)]
doc: Added new libvirt install for RPM.

Signed-off-by: John Wilkins <john.wilkins@inktank.com>
11 years agodoc: Created new libvirt install for debian/ubuntu.
John Wilkins [Fri, 11 Oct 2013 22:05:36 +0000 (15:05 -0700)]
doc: Created new libvirt install for debian/ubuntu.

Signed-off-by: John Wilkins <john.wilkins@inktank.com>
11 years agodoc: Removed Gatway from Ceph Object Storage. Added Yum repo information.
John Wilkins [Fri, 11 Oct 2013 22:05:08 +0000 (15:05 -0700)]
doc: Removed Gatway from Ceph Object Storage. Added Yum repo information.

Signed-off-by: John Wilkins <john.wilkins@inktank.com>
11 years agodoc: Moved installation portion to the installation section.
John Wilkins [Fri, 11 Oct 2013 22:03:34 +0000 (15:03 -0700)]
doc: Moved installation portion to the installation section.

Signed-off-by: John Wilkins <john.wilkins@inktank.com>
11 years agodoc: Moved installation portion to the installation section.
John Wilkins [Fri, 11 Oct 2013 22:02:38 +0000 (15:02 -0700)]
doc: Moved installation portion to the installation section.

Signed-off-by: John Wilkins <john.wilkins@inktank.com>
11 years agolibrados: add some clarifying comments
Yehuda Sadeh [Fri, 11 Oct 2013 21:52:13 +0000 (14:52 -0700)]
librados: add some clarifying comments

about async pool operation handle

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
11 years agolibrados: drop reference to completion in container destructor
Yehuda Sadeh [Thu, 3 Oct 2013 18:49:33 +0000 (11:49 -0700)]
librados: drop reference to completion in container destructor

Move the PoolAsyncCompletionImpl reference drop from
C_PoolAsync_Safe::finish() to ~C_PoolAsyncSafe(), as finish() is only
called when the async request is actually sent.

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
Reviewed-by: Josh Durgin <josh.durgin@inktank.com>
11 years agodoc: Fixed hyperlinks. Cleanup of old references to Chef.
John Wilkins [Fri, 11 Oct 2013 21:04:36 +0000 (14:04 -0700)]
doc: Fixed hyperlinks. Cleanup of old references to Chef.

fixes: #6493

Signed-off-by: John Wilkins <john.wilkins@inktank.com>
11 years agoosd: osd_types: Output pool's flag names during dump
Joao Eduardo Luis [Fri, 11 Oct 2013 16:50:16 +0000 (17:50 +0100)]
osd: osd_types: Output pool's flag names during dump

Signed-off-by: Joao Eduardo Luis <joao.luis@inktank.com>
11 years agoosdc/Objecter: clean up completion handlers that set *prval=0 711/head
Sage Weil [Thu, 10 Oct 2013 14:10:16 +0000 (07:10 -0700)]
osdc/Objecter: clean up completion handlers that set *prval=0

If the OSD operations returns 0, these are unnecessary.  If it does not,
then these are misleading.  In both cases here, the OSD sets the result to
zero, so this has no client-visible change.r

Signed-off-by: Sage Weil <sage@inktank.com>
11 years agoosdc/Objecter: only make handlers set *prval if EIO
Sage Weil [Thu, 10 Oct 2013 14:05:46 +0000 (07:05 -0700)]
osdc/Objecter: only make handlers set *prval if EIO

The normal Objecter handlers set *prval for each operation; we only need to
(re)set it if we have a special reason (like a decoding error).

Signed-off-by: Sage Weil <sage@inktank.com>
11 years agomon: OSDMonitor: allow (un)setting 'hashpspool' flag via 'osd pool set'
Joao Eduardo Luis [Fri, 11 Oct 2013 00:43:48 +0000 (17:43 -0700)]
mon: OSDMonitor: allow (un)setting 'hashpspool' flag via 'osd pool set'

Signed-off-by: Joao Eduardo Luis <joao.luis@inktank.com>
11 years agomon: OSDMonitor: split 'osd pool set' out of 'prepare_command'
Joao Eduardo Luis [Thu, 10 Oct 2013 22:34:06 +0000 (15:34 -0700)]
mon: OSDMonitor: split 'osd pool set' out of 'prepare_command'

We should start doing this across the whole 'prepare_command' function.
Makes it prettier to the reader, and easier to add new code.

Change the command to send a string instead of an int to allow us to have
non-integer pool paramters that can be modified.  Support input json with
both int and string values so that we work with all flavors of client.

Signed-off-by: Joao Eduardo Luis <joao.luis@inktank.com>
11 years agotest/filestore/run_seed_to_range.sh: fix -d syntax
Sage Weil [Thu, 10 Oct 2013 10:29:37 +0000 (03:29 -0700)]
test/filestore/run_seed_to_range.sh: fix -d syntax

Signed-off-by: Sage Weil <sage@inktank.com>
11 years agoMerge pull request #702 from ceph/wip-4405
Sage Weil [Fri, 11 Oct 2013 14:33:35 +0000 (07:33 -0700)]
Merge pull request #702 from ceph/wip-4405

mds: fix infinite loop of MDCache::populate_mydir().

Reviewed-by: Greg Farnum <greg@inktank.com>
Reviewed-by: Sage Weil <sage@inktank.com>
11 years agomds: avoid leaking objects when purging file. 708/head
Yan, Zheng [Fri, 11 Oct 2013 06:03:13 +0000 (14:03 +0800)]
mds: avoid leaking objects when purging file.

The filer implementation does not delete stripe objects that are truncated
to zero. When purging a deleted file, we need to purge stripe objects up to
the max size the file has ever been.

Signed-off-by: Yan, Zheng <zheng.z.yan@intel.com>
11 years agoradosgw-admin: limit user bucket-level quota
Yehuda Sadeh [Fri, 11 Oct 2013 04:04:39 +0000 (21:04 -0700)]
radosgw-admin: limit user bucket-level quota

We only allow it if --quota-scope=bucket is specified. This is done in
order to avoid confusion with the future user level quota command.

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
11 years agoReplicatedPG: remove unused RWTracker::ObjState::clear
Samuel Just [Thu, 10 Oct 2013 23:23:02 +0000 (16:23 -0700)]
ReplicatedPG: remove unused RWTracker::ObjState::clear

Signed-off-by: Samuel Just <sam.just@inktank.com>
11 years agoradosgw-admin: can set user's bucket quota
Yehuda Sadeh [Thu, 10 Oct 2013 21:45:46 +0000 (14:45 -0700)]
radosgw-admin: can set user's bucket quota

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
11 years agodoc: Minor correction.
John Wilkins [Thu, 10 Oct 2013 21:31:37 +0000 (14:31 -0700)]
doc: Minor correction.

Signed-off-by: John Wilkins <john.wilkins@inktank.com>
11 years agorgw: bucket quota threshold
Yehuda Sadeh [Thu, 10 Oct 2013 17:50:39 +0000 (10:50 -0700)]
rgw: bucket quota threshold

Add bucket quota threshold so that when we're passed that value we
reread the bucket stats before every write and not rely on cached value.

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
11 years agorgw: configurable bucket quota size
Yehuda Sadeh [Tue, 8 Oct 2013 21:32:37 +0000 (14:32 -0700)]
rgw: configurable bucket quota size

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
11 years agorgw: protect against concurrent async quota updates
Yehuda Sadeh [Tue, 8 Oct 2013 21:05:59 +0000 (14:05 -0700)]
rgw: protect against concurrent async quota updates

Leverage the cache lru_map locking for making sure that we don't end
up with more than a single concurrent async update on the same bucket
within the same update window.

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
11 years agorgw: async quota update
Yehuda Sadeh [Tue, 8 Oct 2013 03:22:51 +0000 (20:22 -0700)]
rgw: async quota update

Asynchronously update bucket stats when a period passed, but bucket
stats are within the ttl window.

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
11 years agodoc: Merge cleanup.
John Wilkins [Thu, 10 Oct 2013 19:21:34 +0000 (12:21 -0700)]
doc: Merge cleanup.

Signed-off-by: John Wilkins <john.wilkins@inktank.com>
11 years agodoc: minor clean up.
John Wilkins [Thu, 10 Oct 2013 19:20:37 +0000 (12:20 -0700)]
doc: minor clean up.

Signed-off-by: John Wilkins <john.wilkins@inktank.com>
11 years agodoc: Update from wip-doc-quickstart branch.
John Wilkins [Thu, 10 Oct 2013 18:47:56 +0000 (11:47 -0700)]
doc: Update from wip-doc-quickstart branch.

Signed-off-by: John Wilkins <john.wilkins@inktank.com>
11 years agomds: fix infinite loop of MDCache::populate_mydir(). 702/head
Yan, Zheng [Thu, 10 Oct 2013 02:35:48 +0000 (10:35 +0800)]
mds: fix infinite loop of MDCache::populate_mydir().

make MDCache::populate_mydir() only fetch bare-bone stray dirs.
After all stray dirs are populated, call MDCache::scan_stray_dir(),
it fetches incomplete stray dirs.

Fixes: #4405
Signed-off-by: Yan, Zheng <zheng.z.yan@intel.com>
11 years agoReplicatedPG: remove the other backfill related flushes
Samuel Just [Fri, 4 Oct 2013 05:00:46 +0000 (22:00 -0700)]
ReplicatedPG: remove the other backfill related flushes

Signed-off-by: Samuel Just <sam.just@inktank.com>
11 years agoRadosModel: send racing read on write
Samuel Just [Tue, 8 Oct 2013 02:03:23 +0000 (19:03 -0700)]
RadosModel: send racing read on write

Signed-off-by: Samuel Just <sam.just@inktank.com>
11 years agoReplicatedPG: block reads on an object until the write is committed
Samuel Just [Fri, 4 Oct 2013 06:20:07 +0000 (23:20 -0700)]
ReplicatedPG: block reads on an object until the write is committed

Signed-off-by: Samuel Just <sam.just@inktank.com>
11 years agorgw: rearrange includes
Yehuda Sadeh [Tue, 8 Oct 2013 18:20:56 +0000 (11:20 -0700)]
rgw: rearrange includes

Need to have ceph_json.h first due to some boost weirdness.

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
11 years agoGo back to $PWD in fsstress.sh if compiling from source.
Sandon Van Ness [Tue, 8 Oct 2013 18:58:57 +0000 (11:58 -0700)]
Go back to $PWD in fsstress.sh if compiling from source.

Although fsstress was being called with a static path the directory
it was writing to was in the current directory so doing a cd to the
source directory that is made in /tmp and then removing it later
caused it to be unable to write the files in a non-existent dir.

This change gets the current path first and cd's back into it after
it is done compiling fsstress.

Issue #6479.

Signed-off-by: Sandon Van Ness <sandon@inktank.com>
Reviewed-by: Alfredo Deza <alfredo.deza@inktank.com>
11 years agoGo back to $PWD in fsstress.sh if compiling from source.
Sandon Van Ness [Tue, 8 Oct 2013 18:58:57 +0000 (11:58 -0700)]
Go back to $PWD in fsstress.sh if compiling from source.

Although fsstress was being called with a static path the directory
it was writing to was in the current directory so doing a cd to the
source directory that is made in /tmp and then removing it later
caused it to be unable to write the files in a non-existent dir.

This change gets the current path first and cd's back into it after
it is done compiling fsstress.

Issue #6479.

Signed-off-by: Sandon Van Ness <sandon@inktank.com>
Reviewed-by: Alfredo Deza <alfredo.deza@inktank.com>
11 years agoMerge pull request #700 from dachary/master
Sage Weil [Tue, 8 Oct 2013 14:52:42 +0000 (07:52 -0700)]
Merge pull request #700 from dachary/master

doc: fix openstack rbd installation command

11 years agodoc: fix openstack rbd installation command 700/head
Loic Dachary [Tue, 8 Oct 2013 10:02:44 +0000 (12:02 +0200)]
doc: fix openstack rbd installation command

This cannot work because client.volumes.key is not a command

   ssh {your-compute-host} client.volumes.key

replace with a tee to allow for copy/paste as well as using the

   cat client.volumes.key

in the following lines.

Signed-off-by: Loic Dachary <loic@dachary.org>
11 years agoMerge pull request #699 from dachary/wip-ghobject-assert
David Zafman [Tue, 8 Oct 2013 00:05:01 +0000 (17:05 -0700)]
Merge pull request #699 from dachary/wip-ghobject-assert

os: stronger assert on FileStore::lfn_open

Reviewed-by: David Zafman <david.zafman@inktank.com>
11 years agoos: stronger assert on FileStore::lfn_open 699/head
Loic Dachary [Mon, 7 Oct 2013 23:15:41 +0000 (01:15 +0200)]
os: stronger assert on FileStore::lfn_open

Signed-off-by: Loic Dachary <loic@dachary.org>
11 years agoMerge branch 'next'
Greg Farnum [Mon, 7 Oct 2013 21:40:42 +0000 (14:40 -0700)]
Merge branch 'next'

11 years agoMerge pull request #697 from dachary/master
Gregory Farnum [Mon, 7 Oct 2013 21:15:19 +0000 (14:15 -0700)]
Merge pull request #697 from dachary/master

This lets "make check" pass, so I like it.
Reviewed-by: Greg Farnum <greg@inktank.com>
11 years agocommon: unintended use of the wrong bloom_filter prototype 697/head
Loic Dachary [Mon, 7 Oct 2013 21:05:01 +0000 (23:05 +0200)]
common: unintended use of the wrong bloom_filter prototype

For encoding/decoding test purposes. The generate_test_instances should
be improved to cover more encoding/decoding cases.

Signed-off-by: Loic Dachary <loic@dachary.org>
11 years agoReplicatedPG: copy: use aggregate return code instead of individual Op return
Greg Farnum [Mon, 7 Oct 2013 20:11:21 +0000 (13:11 -0700)]
ReplicatedPG: copy: use aggregate return code instead of individual Op return

It appears that the OSD is not filling in the individual return codes, and they
should be equivalent for all purposes we care about here (the only Op we are
doing is the copy-get, and if it fails we are getting its failure code).

Reported-by: Sage Weil <sage@inktank.com>
Signed-off-by: Greg Farnum <greg@inktank.com>
Reviewed-by: Samuel Just <sam.just@inktank.com>
11 years agoos/FileStore: fix ENOENT error code for getattrs()
Sage Weil [Mon, 7 Oct 2013 12:22:20 +0000 (05:22 -0700)]
os/FileStore: fix ENOENT error code for getattrs()

In commit dc0dfb9e01d593afdd430ca776cf4da2c2240a20 the omap xattrs code
moved up a block and r was no longer local to the block.  Translate
ENOENT -> 0 to compensate.

Fix the same error in _rmattrs().

Signed-off-by: Sage Weil <sage@inktank.com>
Reviewed-by: Greg Farnum <greg@inktank.com>
Reviewed-by: Samuel Just <sam.just@inktank.com>
11 years agoMerge pull request #610 from ceph/wip-optracker
Gregory Farnum [Mon, 7 Oct 2013 15:56:46 +0000 (08:56 -0700)]
Merge pull request #610 from ceph/wip-optracker

Reviewed-by: Samuel Just <sam.just@inktank.com>
11 years agoMerge remote-tracking branch 'gh/next'
Sage Weil [Mon, 7 Oct 2013 11:37:20 +0000 (04:37 -0700)]
Merge remote-tracking branch 'gh/next'

11 years agoMerge pull request #695 from ceph/wip-mon-auth
João Eduardo Luís [Mon, 7 Oct 2013 11:31:36 +0000 (04:31 -0700)]
Merge pull request #695 from ceph/wip-mon-auth

fix mon double-free when dropping unhandled messages, and allow "get monmap" messages to go through without authenticating for MonCliente::get_monmap_privately()

Reviewed-by: Joao Eduardo Luis <joao.luis@inktank.com>
11 years agoMerge pull request #693 from ceph/wip-bloom
Sage Weil [Mon, 7 Oct 2013 07:28:35 +0000 (00:28 -0700)]
Merge pull request #693 from ceph/wip-bloom

bloom_filter improvements, cleanups

Reviewed-by: Loic Dachary <loic@dachary.org>
11 years agomon: allow MMonGetMap without authentication 695/head
Sage Weil [Sun, 6 Oct 2013 22:17:19 +0000 (15:17 -0700)]
mon: allow MMonGetMap without authentication

This is used by the MonClient::get_monmap_privately() helper.

Signed-off-by: Sage Weil <sage@inktank.com>
11 years agomon: do not put() unhandle message
Sage Weil [Sun, 6 Oct 2013 22:12:57 +0000 (15:12 -0700)]
mon: do not put() unhandle message

If we return false because we aren't handling a message, we should not put
the ref.  This fixes a double-free.

Signed-off-by: Sage Weil <sage@inktank.com>
11 years agocommon/bloom_filter: add a few assertions and checks for bit_table_ == NULL 693/head
Sage Weil [Sun, 6 Oct 2013 17:28:20 +0000 (10:28 -0700)]
common/bloom_filter: add a few assertions and checks for bit_table_ == NULL

Signed-off-by: Sage Weil <sage@inktank.com>
11 years agocommon/bloom_filter: simplify compressible_bloom_filter encode/decode/dump
Sage Weil [Sun, 6 Oct 2013 17:22:41 +0000 (10:22 -0700)]
common/bloom_filter: simplify compressible_bloom_filter encode/decode/dump

Re-use bloom_filter for this, as per Loic's suggestion.  Much nicer!

Signed-off-by: Sage Weil <sage@inktank.com>
11 years agocommon/bloom_filter: fix compress; improve argument
Sage Weil [Sat, 5 Oct 2013 05:49:41 +0000 (22:49 -0700)]
common/bloom_filter: fix compress; improve argument

Fix bug in compress() when compressing to less than .5 or original.

Make the argument have sane units (target size relative to current size;
not a precentage reduction).

Signed-off-by: Sage Weil <sage@inktank.com>
11 years agocommon/bloom_filter: fix estimated element count for compressed filters
Sage Weil [Sun, 6 Oct 2013 17:18:30 +0000 (10:18 -0700)]
common/bloom_filter: fix estimated element count for compressed filters

We need to compensate for the fact that there are fewer bits than there
used to be.

This is a crappy adjustment; it is non-linear.  It's clone enough for now,
though.

Signed-off-by: Sage Weil <sage@inktank.com>
11 years agoceph.spec.in: Always depend on junit4 (fixes bug #6216) 694/head
Alan Grosskurth [Sun, 6 Oct 2013 06:52:16 +0000 (23:52 -0700)]
ceph.spec.in: Always depend on junit4 (fixes bug #6216)

The RPM spec file currently lists `junit` as a dependency on all
platforms except recent versions of OpenSUSE. This is problematic
because `junit` refers to version 3.x, which doesn't satisfy the check
in the configure script:

    configure: Cannot find junit4.jar (apt-get install junit4)

As a result, rpmbuild doesn't build `libcephfs-test.jar` and fails:

    http://tracker.ceph.com/issues/6216

So let's depend on `junit4` in all cases. This package is provided by
all supported platforms (el6, fc17, fc18, fc19, opensuse12.2,
opensuse12, sles11), and my testing on CentOS 6 shows that rpmbuild
now succeeds and produces the expected `libcephfs_jni1` RPM.

11 years agodoc/release-notes: v0.70
Sage Weil [Sun, 6 Oct 2013 04:08:44 +0000 (21:08 -0700)]
doc/release-notes: v0.70

Note that a bunch of stuff we thought would go in 0.70 is actually in 0.69,
so the update/release notes were adjusted accordingly.

Signed-off-by: Sage Weil <sage@inktank.com>
11 years agocommon/bloom_filter: methods for density, approx unique element counts
Sage Weil [Sat, 5 Oct 2013 05:50:58 +0000 (22:50 -0700)]
common/bloom_filter: methods for density, approx unique element counts

Signed-off-by: Sage Weil <sage@inktank.com>
11 years agocommon/bloom_filter: remember original target size
Sage Weil [Sat, 5 Oct 2013 05:50:30 +0000 (22:50 -0700)]
common/bloom_filter: remember original target size

This isn't strictly needed for core functionality, but it is convenient to
know.

Signed-off-by: Sage Weil <sage@inktank.com>
11 years agocommon/bloom_filter: drop raw_table_size_ member
Sage Weil [Thu, 3 Oct 2013 23:30:29 +0000 (16:30 -0700)]
common/bloom_filter: drop raw_table_size_ member

We were storing table_size_ and raw_table_size_, where one is the size in
bits and the other is the size in bytes.  This is silly.  Store only the
size in bytes.

Also, bytes are always 8 bits, so use bit shifts and drop some of that
silliness too.

Move the member declarations to the top of the class so you read them
before the methods.

Fix some annoying whitespace.

Avoid allocating a 0-length array.

Mark the encoding incompatible with v1.

Signed-off-by: Sage Weil <sage@inktank.com>
11 years agocommon/bloom_filter: make compressible_bloom_filter encodable
Sage Weil [Thu, 3 Oct 2013 21:39:47 +0000 (14:39 -0700)]
common/bloom_filter: make compressible_bloom_filter encodable

Signed-off-by: Sage Weil <sage@inktank.com>
11 years agomon/PGMap: make generated test instances obey new invariant
Sage Weil [Sat, 5 Oct 2013 05:06:04 +0000 (22:06 -0700)]
mon/PGMap: make generated test instances obey new invariant

As of 091809b8149c7595cbcca439c5b8b75a0c42efe1 we keep an osd_map epoch
for any osd_stat update, and assert as much.

Signed-off-by: Sage Weil <sage@inktank.com>
11 years agoMerge branch 'next'
Gary Lowell [Sat, 5 Oct 2013 02:11:36 +0000 (02:11 +0000)]
Merge branch 'next'

11 years agodoc/release-notes: v0.67.4
Sage Weil [Fri, 4 Oct 2013 23:49:41 +0000 (16:49 -0700)]
doc/release-notes: v0.67.4

Signed-off-by: Sage Weil <sage@inktank.com>
11 years agoMakefile: add include/histogram.h to noinst_HEADERS 610/head
Greg Farnum [Fri, 4 Oct 2013 23:45:38 +0000 (16:45 -0700)]
Makefile: add include/histogram.h to noinst_HEADERS

Signed-off-by: Greg Farnum <greg@inktank.com>
11 years agoMerge pull request #676 from ceph/wip-start-copy
Gregory Farnum [Fri, 4 Oct 2013 22:58:50 +0000 (15:58 -0700)]
Merge pull request #676 from ceph/wip-start-copy

Reviewed-by: Samuel Just <sam.just@inktank.com>
11 years agoMerge pull request #667 from ceph/wip-6143
David Zafman [Fri, 4 Oct 2013 21:59:11 +0000 (14:59 -0700)]
Merge pull request #667 from ceph/wip-6143

Reviewed-by: Sage Weil <sage@inktank.com>