]> git.apps.os.sepia.ceph.com Git - ceph.git/log
ceph.git
11 years agoMerge pull request #943 from dachary/wip-formatter-newlines 716/head
Sage Weil [Sun, 15 Dec 2013 18:23:33 +0000 (10:23 -0800)]
Merge pull request #943 from dachary/wip-formatter-newlines

common: fix perf_counters unittests for trailing newline in m_pretty

11 years agocommon: fix perf_counters unittests for trailing newline in m_pretty 943/head
Loic Dachary [Sun, 15 Dec 2013 12:24:14 +0000 (13:24 +0100)]
common: fix perf_counters unittests for trailing newline in m_pretty

Signed-off-by: Loic Dachary <loic@dachary.org>
11 years agocommon/Formatter: add newline to flushed output if m_pretty
Sage Weil [Mon, 14 Oct 2013 23:02:30 +0000 (16:02 -0700)]
common/Formatter: add newline to flushed output if m_pretty

This applies to json-pretty and xml-pretty modes.

Signed-off-by: Sage Weil <sage@inktank.com>
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 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 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 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 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 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 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 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 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 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 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>
11 years agocommon, os: Perform xattr handling based on detected fs type 667/head
David Zafman [Mon, 30 Sep 2013 22:53:35 +0000 (15:53 -0700)]
common, os: Perform xattr handling based on detected fs type

In FileStore::_detect_fs() store discovered filesystem type in m_fs_type
Add per-filesystem filestore_max_inline_xattr_size_* variants
Add per-filesystem filestore_max_inline_xattrs_* variants
New function set_xattr_limits_via_conf()
  Set m_filestore_max_inline_xattr_size based on override or fs type
  Set m_filestore_max_inline_xattrs based on override or fs type
Handle conf change of any relevant value by calling set_xattr_limits_via_conf()
Change filestore_max_inline_xattr_size to override if non-zero
Change filestore_max_inline_xattrs to override if non-zero

Fixes: #6143
Signed-off-by: David Zafman <david.zafman@inktank.com>
11 years agoMerge pull request #692 from ceph/wip-5992-2
athanatos [Fri, 4 Oct 2013 21:04:41 +0000 (14:04 -0700)]
Merge pull request #692 from ceph/wip-5992-2

Wip 5992 2

Reviewed-by: Sage Weil <sage@inktank.com>
11 years agoReplicatedPG: lock snapdir obc during write 692/head
Samuel Just [Thu, 3 Oct 2013 01:00:04 +0000 (18:00 -0700)]
ReplicatedPG: lock snapdir obc during write

Otherwise, we won't block properly in prep_push_backfill_object.

Signed-off-by: Samuel Just <sam.just@inktank.com>
11 years agoPGLog: on split, leave log head alone
Samuel Just [Mon, 30 Sep 2013 22:54:27 +0000 (15:54 -0700)]
PGLog: on split, leave log head alone

This way last_update doesn't go backwards.

Fixes: 6447
Signed-off-by: Samuel Just <sam.just@inktank.com>
11 years agoFileStore: make _setattrs not return -ENOENT most of the time
Samuel Just [Fri, 27 Sep 2013 22:31:56 +0000 (15:31 -0700)]
FileStore: make _setattrs not return -ENOENT most of the time

Signed-off-by: Samuel Just <sam.just@inktank.com>
11 years agoReplicatedPG: add debugging in recover_replicas for objects added for backfill
Samuel Just [Fri, 20 Sep 2013 18:26:49 +0000 (11:26 -0700)]
ReplicatedPG: add debugging in recover_replicas for objects added for backfill

Signed-off-by: Samuel Just <sam.just@inktank.com>
11 years agoReplicatedPG,PG: use PGBackend methods for getattr
Samuel Just [Tue, 17 Sep 2013 17:35:47 +0000 (10:35 -0700)]
ReplicatedPG,PG: use PGBackend methods for getattr

Signed-off-by: Samuel Just <sam.just@inktank.com>
11 years agoReplicatedPG,PG: adapt collection_list* users to PGBackend interface
Samuel Just [Tue, 17 Sep 2013 17:12:11 +0000 (10:12 -0700)]
ReplicatedPG,PG: adapt collection_list* users to PGBackend interface

Signed-off-by: Samuel Just <sam.just@inktank.com>
11 years agoPG,ReplicatedPG: expose PGBackend to PG
Samuel Just [Tue, 17 Sep 2013 17:33:49 +0000 (10:33 -0700)]
PG,ReplicatedPG: expose PGBackend to PG

Signed-off-by: Samuel Just <sam.just@inktank.com>
11 years agoPG.cc: remove leading empty space
Samuel Just [Tue, 17 Sep 2013 17:18:57 +0000 (10:18 -0700)]
PG.cc: remove leading empty space

Signed-off-by: Samuel Just <sam.just@inktank.com>
11 years agoPGBackend,ReplicatedBackend: add interfaces for scanning the pg
Samuel Just [Tue, 17 Sep 2013 17:11:54 +0000 (10:11 -0700)]
PGBackend,ReplicatedBackend: add interfaces for scanning the pg

This will be important since the erasure coded pg will have a different
on-disk format than the replicated backend.

Signed-off-by: Samuel Just <sam.just@inktank.com>
11 years agoReplicatedPG: don't rescan the local collection if we can avoid it
Samuel Just [Tue, 17 Sep 2013 15:26:51 +0000 (08:26 -0700)]
ReplicatedPG: don't rescan the local collection if we can avoid it

Signed-off-by: Samuel Just <sam.just@inktank.com>
11 years agocommon/hobject: add is_degenerate method
Samuel Just [Thu, 26 Sep 2013 19:31:35 +0000 (12:31 -0700)]
common/hobject: add is_degenerate method

Signed-off-by: Samuel Just <sam.just@inktank.com>
11 years agoPGMap: calc_min_last_epoch_clean() will now also use osd_epochs
Samuel Just [Sat, 10 Aug 2013 00:59:25 +0000 (17:59 -0700)]
PGMap: calc_min_last_epoch_clean() will now also use osd_epochs

We don't want to trim past the current osd map for any up osd.
osd_epochs provides a lower bound for that epoch for each osd.

Fixes: 5869
Signed-off-by: Samuel Just <sam.just@inktank.com>
11 years agoPGMap,PGMonitor: maintain mapping of osd to recent stat epoch
Samuel Just [Fri, 4 Oct 2013 19:29:26 +0000 (12:29 -0700)]
PGMap,PGMonitor: maintain mapping of osd to recent stat epoch

Also, osd_stat will be empty for out osd.

When an osd is marked out, rather than remove it from osd_stat,
we instead 0 out the structure.

This patch also makes osd_stat_updates and osd_stat_rm private.
This should make it simpler to enforce invariants on these
mappings.

Each up osd will have a mapping since out osds are now included as
empty stats.

Signed-off-by: Samuel Just <sam.just@inktank.com>
11 years agov0.70 mark-v0.70-wip v0.70
Gary Lowell [Fri, 4 Oct 2013 20:12:24 +0000 (20:12 +0000)]
v0.70

11 years agoMerge pull request #690 from ceph/wip-fuse
Sage Weil [Fri, 4 Oct 2013 20:05:46 +0000 (13:05 -0700)]
Merge pull request #690 from ceph/wip-fuse

a few ceph-fuse fixes

Reviewed-by: Sage Weil <sage@inktank.com>
Reviewed-by: Yan, Zheng <zheng.z.yan@intel.com>
11 years agoReplicatedPG: copy: add op progression output 676/head
Greg Farnum [Fri, 4 Oct 2013 17:50:29 +0000 (10:50 -0700)]
ReplicatedPG: copy: add op progression output

Signed-off-by: Greg Farnum <greg@inktank.com>
11 years agoReplicatedPG: copy: don't leak a ctx on failed copy ops
Greg Farnum [Fri, 4 Oct 2013 16:47:54 +0000 (09:47 -0700)]
ReplicatedPG: copy: don't leak a ctx on failed copy ops

Signed-off-by: Greg Farnum <greg@inktank.com>
11 years agoReplicatedPG: assert that we have succeeded in do_osd_ops on copyfrom repeats
Greg Farnum [Fri, 4 Oct 2013 16:26:02 +0000 (09:26 -0700)]
ReplicatedPG: assert that we have succeeded in do_osd_ops on copyfrom repeats

Our callback is handling errors on its own at this point.

Signed-off-by: Greg Farnum <greg@inktank.com>
11 years agoReplicatedPG: copy: switch CopyCallback to use a GenContext
Greg Farnum [Fri, 4 Oct 2013 16:10:20 +0000 (09:10 -0700)]
ReplicatedPG: copy: switch CopyCallback to use a GenContext

Signed-off-by: Greg Farnum <greg@inktank.com>
11 years agocommon,os: Remove filestore_xattr_use_omap option
David Zafman [Fri, 27 Sep 2013 23:23:09 +0000 (16:23 -0700)]
common,os: Remove filestore_xattr_use_omap option

Now we operate just like when this was set to true

Fixes: #6143
Signed-off-by: David Zafman <david.zafman@inktank.com>
11 years agorgw: update cache atomically
Yehuda Sadeh [Fri, 4 Oct 2013 17:36:41 +0000 (10:36 -0700)]
rgw: update cache atomically

Use new lru_map::find_and_update() to update internal cache state.

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
11 years agolru_map: add find_and_update()
Yehuda Sadeh [Fri, 4 Oct 2013 17:36:13 +0000 (10:36 -0700)]
lru_map: add find_and_update()

A new find_and_update() call to make atomic changes.

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>