]> git.apps.os.sepia.ceph.com Git - ceph.git/log
ceph.git
9 years agoosd: Correct the object_info_t::decode() version 6234/head 6235/head
David Zafman [Mon, 12 Oct 2015 20:24:31 +0000 (13:24 -0700)]
osd: Correct the object_info_t::decode() version

Caused by: 13b9dc70

Fixes: #13462
Backport: Hammer, Firefly

Signed-off-by: David Zafman <dzafman@redhat.com>
9 years agoMerge pull request #6220 from dreamhost/wip-pybind-rados-omap-binary
Josh Durgin [Sat, 10 Oct 2015 00:02:17 +0000 (20:02 -0400)]
Merge pull request #6220 from dreamhost/wip-pybind-rados-omap-binary

pybind/rados: Fix binary omap values.

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
9 years agopybind/rados, get_omap_vals: Fix pydoc type. 6220/head
Robin H. Johnson [Fri, 9 Oct 2015 22:58:06 +0000 (15:58 -0700)]
pybind/rados, get_omap_vals: Fix pydoc type.

pydoc type for filter_prefix did not match code.

Signed-off-by: Robin H. Johnson <robin.johnson@dreamhost.com>
9 years agotest: pybind/test_rados: add binary data.
Robin H. Johnson [Fri, 9 Oct 2015 22:57:03 +0000 (15:57 -0700)]
test: pybind/test_rados: add binary data.

Signed-off-by: Robin H. Johnson <robin.johnson@dreamhost.com>
9 years agopybind/rados: Fix binary omap values.
Robin H. Johnson [Fri, 9 Oct 2015 21:59:01 +0000 (14:59 -0700)]
pybind/rados: Fix binary omap values.

The prior code caused binary omap values to be discarded. This fixes
them to use the same model as the xattr iterator, and correctly return
binary data as python strings, eg:
'object_prefix': '\x15\x00\x00\x00rbd_data.449d2ae8944a'

Signed-off-by: Robin H. Johnson <robin.johnson@dreamhost.com>
9 years agoMerge pull request #6193 from athanatos/wip-13240
Samuel Just [Fri, 9 Oct 2015 23:16:27 +0000 (16:16 -0700)]
Merge pull request #6193 from athanatos/wip-13240

ReplicatedPG::maybe_handle_cache: do not promote before checking full

Reviewed-by: Sage Weil <sage@redhat.com>
9 years agoMerge pull request #6190 from SUSE/wip-drop-my-conf-opt
Sage Weil [Fri, 9 Oct 2015 20:34:25 +0000 (16:34 -0400)]
Merge pull request #6190 from SUSE/wip-drop-my-conf-opt

ceph.spec.in: drop MY_CONF_OPTS

Reviewed-by: Ken Dreyer, <kdreyer@redhat.com>
Reviewed-by: Boris Ranto <branto@redhat.com>
9 years agoMerge pull request #6183 from ceph/wip-fix-selinux-man-page
Sage Weil [Fri, 9 Oct 2015 20:33:48 +0000 (16:33 -0400)]
Merge pull request #6183 from ceph/wip-fix-selinux-man-page

Fix selinux man page

Reviewed-by: Nathan Cutler <ncutler@suse.com>
9 years agoMerge pull request #6191 from SUSE/wip-concentrate-buildrequires
Sage Weil [Fri, 9 Oct 2015 20:33:14 +0000 (16:33 -0400)]
Merge pull request #6191 from SUSE/wip-concentrate-buildrequires

ceph.spec.in: move BuildRequires out of subpackages

Reviewed-by: Ken Dreyer <kdreyer@redhat.com>
9 years agoMerge pull request #6184 from dillaman/wip-13372-infernalis
Sage Weil [Fri, 9 Oct 2015 20:31:43 +0000 (16:31 -0400)]
Merge pull request #6184 from dillaman/wip-13372-infernalis

librbd: invalidate object map on error even w/o holding lock

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
9 years agorgw: fix wrong etag calculation during POST on S3 bucket.
Radoslaw Zarzynski [Mon, 21 Sep 2015 18:32:29 +0000 (20:32 +0200)]
rgw: fix wrong etag calculation during POST on S3 bucket.

Fixes: #11241
Backport: infernalis, hammer, firefly
Signed-off-by: Radoslaw Zarzynski <rzarzynski@mirantis.com>
(cherry picked from commit 742906ab5ee644d5932570bf95342697b673a498)

9 years agoLibRBD: Adjust correct op latency scope
Haomai Wang [Tue, 22 Sep 2015 09:43:07 +0000 (17:43 +0800)]
LibRBD: Adjust correct op latency scope

Op latency need to cover from queuing to finishing op.

Signed-off-by: Haomai Wang <haomai@xsky.com>
Reviewed-by: Jason Dillaman <jdillaman@redhat.com>
9 years agolibrados_test_stub: prevent interleaving of operations
Jason Dillaman [Mon, 5 Oct 2015 17:34:50 +0000 (13:34 -0400)]
librados_test_stub: prevent interleaving of operations

It was possible for unrelated ops to interleave within a different
transaction for a given object.

Fixes: #13313
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
Reviewed-by: Josh Durgin <jdurgin@redhat.com>
9 years agoMerge pull request #6044 from ceph/wip-12958
Casey Bodley [Fri, 9 Oct 2015 16:32:51 +0000 (12:32 -0400)]
Merge pull request #6044 from ceph/wip-12958

rgw: orphan tool shouldn't clean up head objects

Reviewed-by: Casey Bodley <cbodley@redhat.com>
9 years agorgw: orphan tool shouldn't clean up head objects
Yehuda Sadeh [Tue, 22 Sep 2015 22:49:27 +0000 (15:49 -0700)]
rgw: orphan tool shouldn't clean up head objects

Fixes: #12958
Head objects are mutable, so removing them can race with object removal
and a later recreation, so we might end up cleaning them up when we don't
need to.

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
9 years agoMerge pull request #6187 from SUSE/wip-13317-infernalis
Kefu Chai [Fri, 9 Oct 2015 07:48:49 +0000 (15:48 +0800)]
Merge pull request #6187 from SUSE/wip-13317-infernalis

doc: remove mention of --lazy-remove from radosgw-admin manpage

Reviewed-by: Kefu Chai <kchai@redhat.com>
9 years agoMerge pull request #6211 from SUSE/wip-dead-bool
Kefu Chai [Fri, 9 Oct 2015 06:47:40 +0000 (14:47 +0800)]
Merge pull request #6211 from SUSE/wip-dead-bool

CephxServiceHandler.cc: fix get_auth conditional

Reviewed-by: Kefu Chai <kchai@redhat.com>
9 years agoCephxServiceHandler.cc: fix get_auth conditional 6211/head
Nathan Cutler [Sun, 27 Sep 2015 19:55:00 +0000 (21:55 +0200)]
CephxServiceHandler.cc: fix get_auth conditional

The KeyServer class has a public method get_auth() that returns a boolean
value. This value is being checked here - fix the conditional so it triggers
when get_auth() returns false.

http://tracker.ceph.com/issues/9756 References: #9756

Signed-off-by: Nathan Cutler <ncutler@suse.com>
9 years agoMerge pull request #6194 from dillaman/wip-13220-infernalis
Josh Durgin [Thu, 8 Oct 2015 20:20:05 +0000 (16:20 -0400)]
Merge pull request #6194 from dillaman/wip-13220-infernalis

rbd-replay-prep and rbd-replay improvements

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
9 years agoReplicatedPG::maybe_handle_cache: do not promote before checking full 6193/head
Samuel Just [Thu, 8 Oct 2015 18:16:33 +0000 (11:16 -0700)]
ReplicatedPG::maybe_handle_cache: do not promote before checking full

Otherwise, ops with need_promote() can order past ops without it
causing an rgw write sequence like:

writefull 0~0
writefull 0~512kb
write 512kb~512kb

to reorder to

writefull 0~0 -- delayed: full
writefull 0~512kb -- delayed: full
write 512kb~512kb -- promote and execute
writefull 0~0 -- execute
writefull 0~512kb -- execute

Fixes: 13240
Signed-off-by: Samuel Just <sjust@redhat.com>
9 years agotests: removed obsolete rbd_replay test cases 6194/head
Jason Dillaman [Thu, 8 Oct 2015 17:28:04 +0000 (13:28 -0400)]
tests: removed obsolete rbd_replay test cases

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
9 years agoceph-dencoder: new rbd_replay trace file types
Jason Dillaman [Thu, 8 Oct 2015 17:26:42 +0000 (13:26 -0400)]
ceph-dencoder: new rbd_replay trace file types

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
9 years agorbd-replay: added version control to trace output file
Jason Dillaman [Thu, 8 Oct 2015 17:21:29 +0000 (13:21 -0400)]
rbd-replay: added version control to trace output file

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
9 years agoMerge pull request #6116 from jcsp/wip-cephfs-direntry
John Spray [Thu, 8 Oct 2015 11:08:31 +0000 (12:08 +0100)]
Merge pull request #6116 from jcsp/wip-cephfs-direntry

pybind/cephfs: fix DirEntry helpers

Reviewed-by: Kefu Chai <kchai@redhat.com>
9 years agoMerge pull request #6188 from liewegas/wip-13395
Sage Weil [Thu, 8 Oct 2015 04:07:43 +0000 (00:07 -0400)]
Merge pull request #6188 from liewegas/wip-13395

os/FileStore: kludge sloppy hammer temp objects into temp collection

Reviewed-by: David Zafman <dzafman@redhat.com>
Reviewed-by: Samuel Just <sjust@redhat.com>
9 years agorbd-replay-prep: added --verbose command line option
Jason Dillaman [Wed, 7 Oct 2015 19:39:18 +0000 (15:39 -0400)]
rbd-replay-prep: added --verbose command line option

This new command-line will dump all the processed events as they
are extracted from the trace file.

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
9 years agorbd-replay-prep: stream events to the prep file
Jason Dillaman [Wed, 7 Oct 2015 19:22:25 +0000 (15:22 -0400)]
rbd-replay-prep: stream events to the prep file

Avoid building the entire prep event history in memory before
attempting to write the prepped trace file.

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
9 years agorbd-replay-prep: simplify IO dependency calculation
Jason Dillaman [Wed, 7 Oct 2015 18:56:22 +0000 (14:56 -0400)]
rbd-replay-prep: simplify IO dependency calculation

Only track read-after-write and write-after-write IO dependencies
via the associated write completions.  All IO events after a write
completion are considered to be dependent and can be pruned down
to at most the number of concurrent IOs.  This reduces the prep
time from a simple 'rbd bench-write' from over 4 hrs down to seconds.

Fixes: #13378, #13384
Backport: hammer

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
9 years agorbd-replay: improve error messages
Jason Dillaman [Tue, 6 Oct 2015 17:16:51 +0000 (13:16 -0400)]
rbd-replay: improve error messages

Fixes: #13221
Backport: hammer
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
9 years agorbd-replay-prep: support new read/write APIs
Jason Dillaman [Tue, 6 Oct 2015 16:48:50 +0000 (12:48 -0400)]
rbd-replay-prep: support new read/write APIs

Added support for read2, write2, aio_read2, and aio_write2 APIs.

Fixes: 13325
Backport: hammer
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
9 years agorbd-replay-prep: avoid using assert statements on user inputs
Jason Dillaman [Mon, 5 Oct 2015 21:30:54 +0000 (17:30 -0400)]
rbd-replay-prep: avoid using assert statements on user inputs

Fixes: #13220
Backport: hammer
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
9 years agoMerge pull request #6170 from jcsp/wip-spurious-warning
Gregory Farnum [Wed, 7 Oct 2015 17:52:04 +0000 (10:52 -0700)]
Merge pull request #6170 from jcsp/wip-spurious-warning

mds: avoid emitting cap warnings before evicting session

Reviewed-by: Greg Farnum <gfarnum@redhat.com>
9 years agoMerge pull request #6128 from jcsp/wip-snapserver-crash
Gregory Farnum [Wed, 7 Oct 2015 17:51:39 +0000 (10:51 -0700)]
Merge pull request #6128 from jcsp/wip-snapserver-crash

mds: fix SnapServer crash on deleted pool

Reviewed-by: Greg Farnum <gfarnum@redhat.com>
9 years agoMerge branch 'wip-yrf-fix1' of git://github.com/H3C/ceph into infernalis
Greg Farnum [Wed, 7 Oct 2015 17:47:21 +0000 (10:47 -0700)]
Merge branch 'wip-yrf-fix1' of git://github.com/H3C/ceph into infernalis

Reviewed-by: Greg Farnum <gfarnum@redhat.com>
9 years agoMerge branch 'wip-13256' of git://github.com/ukernel/ceph into infernalis
Greg Farnum [Wed, 7 Oct 2015 17:45:36 +0000 (10:45 -0700)]
Merge branch 'wip-13256' of git://github.com/ukernel/ceph into infernalis

Reviewed-by: Greg Farnum <gfarnum@redhat.com>
9 years agoqa: avoid using sudo in fsstress
John Spray [Wed, 23 Sep 2015 11:58:46 +0000 (12:58 +0100)]
qa: avoid using sudo in fsstress

This test required root in order to copy its built
binary into /usr (presumably to avoid rebuilding it).

That's not really a good thing anyway because there's
no guarantee that a binary in that path is the binary
we wanted, so just run the thing straight out of /tmp.  The
build is really quick anyway.

Signed-off-by: John Spray <john.spray@redhat.com>
Reviewed-by: Greg Farnum <gfarnum@redhat.com>
9 years agoMerge pull request #6186 from ceph/wip-12913-2
Daniel Gryniewicz [Wed, 7 Oct 2015 17:09:59 +0000 (13:09 -0400)]
Merge pull request #6186 from ceph/wip-12913-2

cls_rgw: fix bucket listing when dealing with invisible entries

9 years agoos/FileStore: kludge sloppy hammer temp objects into temp collection 6188/head
Sage Weil [Wed, 7 Oct 2015 15:49:01 +0000 (11:49 -0400)]
os/FileStore: kludge sloppy hammer temp objects into temp collection

When we are running with a mixed hammer cluster, hammer primaries
will generate temp object names that are sloppy.  Make sure we still
put them into the temp collection.

Note that this isn't a problem on write because the primary (hammer)
OSD generated the transaction and explicitly specified a temp
collection; it's only transactions we do on our own with the sloppy
temp ghobject_t that trip over this.

Fixes: #13395
Signed-off-by: Sage Weil <sage@redhat.com>
9 years agoceph.spec.in: move python-sphinx BuildRequires to the right section 6191/head
Nathan Cutler [Tue, 29 Sep 2015 20:49:18 +0000 (22:49 +0200)]
ceph.spec.in: move python-sphinx BuildRequires to the right section

These belong in the section for distro-conditional dependencies.

Signed-off-by: Nathan Cutler <ncutler@suse.com>
9 years agoceph.spec.in: move BuildRequires out of subpackages
Nathan Cutler [Mon, 28 Sep 2015 19:59:20 +0000 (21:59 +0200)]
ceph.spec.in: move BuildRequires out of subpackages

Since the main package and all the subpackages are built in the
same environment, concentrate all the BuildRequires in the main
package.

Signed-off-by: Nathan Cutler <ncutler@suse.com>
9 years agoceph.spec.in: drop MY_CONF_OPTS 6190/head
Nathan Cutler [Wed, 7 Oct 2015 15:32:27 +0000 (17:32 +0200)]
ceph.spec.in: drop MY_CONF_OPTS

http://tracker.ceph.com/issues/13402 Fixes: #13402

Signed-off-by: Nathan Cutler <ncutler@suse.com>
9 years agoMerge pull request #6185 from liewegas/wip-13382
Sage Weil [Wed, 7 Oct 2015 15:06:09 +0000 (11:06 -0400)]
Merge pull request #6185 from liewegas/wip-13382

osd/PG: fix generate_past_intervals

Reviewed-by: David Zafman <dzafman@redhat.com>
9 years agoMerge pull request #6182 from liewegas/wip-13379
Sage Weil [Wed, 7 Oct 2015 00:51:33 +0000 (20:51 -0400)]
Merge pull request #6182 from liewegas/wip-13379

mon: do not remove proxied sessions

Reviewed-by: Joao Eduardo Luis <joao@suse.de>
9 years agodoc: remove mention of --lazy-remove from radosgw-admin manpage 6187/head
Nathan Cutler [Tue, 6 Oct 2015 19:42:04 +0000 (21:42 +0200)]
doc: remove mention of --lazy-remove from radosgw-admin manpage

"The --lazy-remove flag has been removed over 3 years ago. Docs need to be
updated."

http://tracker.ceph.com/issues/13317 Fixes: #13317

Signed-off-by: Nathan Cutler <ncutler@suse.com>
9 years agoosd/PG: fix generate_past_intervals 6185/head
Sage Weil [Tue, 6 Oct 2015 18:35:35 +0000 (14:35 -0400)]
osd/PG: fix generate_past_intervals

We may be only calculating older past intervals and have a valid
history.same_interval_since value, in which case the local
same_interval_since value will end at the newest old interval we had to
generate.

This was introduced by 70316541bbb115d9a35954bfba373cf1dc084b7e.

Signed-off-by: Sage Weil <sage@redhat.com>
9 years agolibrbd: invalidate object map on error even w/o holding lock 6184/head
Jason Dillaman [Tue, 6 Oct 2015 16:31:59 +0000 (12:31 -0400)]
librbd: invalidate object map on error even w/o holding lock

If there is a deep bug that prevents the object map from owning
the lock before objects are updated, flag the object map as invalid
regardless.

Fixes: #13372
Backport: hammer
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
9 years agoselinux: Fix man page location 6183/head
Boris Ranto [Tue, 6 Oct 2015 01:57:40 +0000 (21:57 -0400)]
selinux: Fix man page location

The SELinux man page was previously located in two places and the man
page that was supposed to be updated when rgw selinux changes were
proposed did not get updated properly. Fixing this by moving
selinux/ceph_selinux.8 to man/ceph_selinux.8. Also, populate EXTRA_DIST
with ceph_selinux.8.

Signed-off-by: Boris Ranto <branto@redhat.com>
9 years agoman/Makefile-server.am: conditionalize make ceph_selinux manpage
Nathan Cutler [Thu, 1 Oct 2015 18:27:40 +0000 (20:27 +0200)]
man/Makefile-server.am: conditionalize make ceph_selinux manpage

http://tracker.ceph.com/issues/13353 Fixes: #13353

Modified-by: Boris Ranto <branto@redhat.com>
Signed-off-by: Nathan Cutler <ncutler@suse.com>
9 years agoMerge pull request #6171 from SUSE/wip-infernalis-obs
branto1 [Tue, 6 Oct 2015 16:05:52 +0000 (18:05 +0200)]
Merge pull request #6171 from SUSE/wip-infernalis-obs

Get infernalis to build in openSUSE Build Service

Reviewed-by: Boris Ranto <branto@redhat.com>
9 years agomon: do not remove proxied sessions 6182/head
Sage Weil [Tue, 6 Oct 2015 14:54:50 +0000 (10:54 -0400)]
mon: do not remove proxied sessions

A proxied session (see handle_forward) isn't registered, so it doesn't
need remove_session.  Moreover, s->con is null, so it will crash in
remove_session.

Fixes: #13379
Signed-off-by: Sage Weil <sage@redhat.com>
9 years agoMerge pull request #6181 from athanatos/wip-13323
Sage Weil [Tue, 6 Oct 2015 14:44:44 +0000 (10:44 -0400)]
Merge pull request #6181 from athanatos/wip-13323

ReplicatedPG: consider IGNORE_CACHE for all maybe_handle_cache calls

Reviewed-by: Sage Weil <sage@redhat.com>
9 years agoceph.spec.in: remove comments regarding ceph UID/GID in SUSE 6171/head
Nathan Cutler [Tue, 6 Oct 2015 13:07:41 +0000 (15:07 +0200)]
ceph.spec.in: remove comments regarding ceph UID/GID in SUSE

It is possible that the ceph user/group will not have fixed UID/GID in SUSE.
Instead, it is possible that the ceph package will depend on a separate package
whose sole purpose will be to create the ceph user/group if they do not exist.

Signed-off-by: Nathan Cutler <ncutler@suse.com>
9 years agoceph.spec.in: enable OBS post-build-checks to find systemd-tmpfiles
Nathan Cutler [Tue, 6 Oct 2015 10:25:52 +0000 (12:25 +0200)]
ceph.spec.in: enable OBS post-build-checks to find systemd-tmpfiles

The openSUSE Build Service runs a number of "post-build checks" after the RPMs
have been generated. One of these tests the RPM scriptlets for idempotence.
Without this line in the specfile, the check fails on SLE_12 because it cannot
find the systemd-tmpfiles binary.

http://tracker.ceph.com/issues/13375 Fixes: #13375

Signed-off-by: Nathan Cutler <ncutler@suse.com>
9 years agoetc/sysconfig/ceph: add CEPH_AUTO_RESTART_ON_UPGRADE
Nathan Cutler [Sat, 3 Oct 2015 10:04:33 +0000 (12:04 +0200)]
etc/sysconfig/ceph: add CEPH_AUTO_RESTART_ON_UPGRADE

Signed-off-by: Nathan Cutler <ncutler@suse.com>
9 years agoceph.spec.in: Standardize systemd preun and postun scripts
Nathan Cutler [Tue, 8 Sep 2015 08:09:35 +0000 (10:09 +0200)]
ceph.spec.in: Standardize systemd preun and postun scripts

Currently, the main ceph package and the ceph-radosgw behave
differently on upgrade. This commit unifies their behavior
to the following:

On package removal, disable and stop all related systemd units.

On package upgrade, do nothing unless there is a file /etc/sysconfig/ceph
containing a parameter CEPH_AUTO_RESTART_ON_UPGRADE. If parameter is set
to "yes", restart the systemd units iff they are running.

Signed-off-by: Nathan Cutler <ncutler@suse.com>
9 years agoceph.spec.in: fix for out-of-memory errors in OBS
Nathan Cutler [Fri, 2 Oct 2015 10:15:08 +0000 (12:15 +0200)]
ceph.spec.in: fix for out-of-memory errors in OBS

Add "--param ggc-min-expand=20 --param ggc-min-heapsize=32768"
to RPM_OPT_FLAGS, ensuring gcc does not add debug symbols and is
more aggressive about garbage collection.

Thanks to Berthold Gunreben for debugging this issue.

http://tracker.ceph.com/issues/13352 Fixes: #13352

Signed-off-by: Nathan Cutler <ncutler@suse.com>
9 years agoceph.spec.in: Use _smp_mflags instead of _NPROCESSORS_ONLN
Nathan Cutler [Fri, 2 Oct 2015 13:30:41 +0000 (15:30 +0200)]
ceph.spec.in: Use _smp_mflags instead of _NPROCESSORS_ONLN

Signed-off-by: Nathan Cutler <ncutler@suse.com>
9 years agoRevert "install-deps.sh: use %bcond_with selinux on SLE/openSUSE"
Nathan Cutler [Sat, 3 Oct 2015 08:46:06 +0000 (10:46 +0200)]
Revert "install-deps.sh: use %bcond_with selinux on SLE/openSUSE"

This reverts commit 1df2cc2bf625a1f65ef4968d9cf313cc8ee9acc5.

9 years agoceph.spec.in: selinux by default on RHEL/Fedora, non-default on SUSE
Nathan Cutler [Sat, 3 Oct 2015 08:43:51 +0000 (10:43 +0200)]
ceph.spec.in: selinux by default on RHEL/Fedora, non-default on SUSE

Surround it with an appropriate conditional.

http://tracker.ceph.com/issues/13324 Fixes: #13324

Signed-off-by: Nathan Cutler <ncutler@suse.com>
9 years agoceph.spec.in: use %fillup_only macro in SLE/openSUSE
Nathan Cutler [Sat, 3 Oct 2015 07:05:03 +0000 (09:05 +0200)]
ceph.spec.in: use %fillup_only macro in SLE/openSUSE

SUSE does not allow /etc/sysconfig/ceph to be owned by the ceph
package.

Signed-off-by: Nathan Cutler <ncutler@suse.com>
9 years agoceph.spec.in: distro-conditional groupadd and useradd
Nathan Cutler [Fri, 2 Oct 2015 21:21:02 +0000 (23:21 +0200)]
ceph.spec.in: distro-conditional groupadd and useradd

The -o option to groupadd/useradd is not recognized in SLE12. For
SLE/openSUSE, follow the openSUSE packaging guidelines.

Signed-off-by: Nathan Cutler <ncutler@suse.com>
9 years agoceph.spec.in: move systemd-tmpfiles stuff to ceph-common
Nathan Cutler [Fri, 2 Oct 2015 21:23:17 +0000 (23:23 +0200)]
ceph.spec.in: move systemd-tmpfiles stuff to ceph-common

Since the ceph user and group are created in the ceph-common
%pre scriptlet, the systemd-tmpfiles --create command needs
to run in that package.

tracker.ceph.com/issues/13346 Fixes: #13346

Signed-off-by: Nathan Cutler <ncutler@suse.com>
9 years agoceph.spec.in: remove SUSE-specific curses hack
Nathan Cutler [Fri, 2 Oct 2015 09:01:44 +0000 (11:01 +0200)]
ceph.spec.in: remove SUSE-specific curses hack

Unclear what this was supposed to fix.

Signed-off-by: Nathan Cutler <ncutler@suse.com>
9 years agoceph.spec.in: lttng in SLES12 only
Nathan Cutler [Tue, 29 Sep 2015 08:39:16 +0000 (10:39 +0200)]
ceph.spec.in: lttng in SLES12 only

Over in the SUSE sector, we are trying to enable the SLE_12 and openSUSE_13.2
build targets. The lttng/babeltrace stuff is currently available only in
SLE_12.

Signed-off-by: Nathan Cutler <ncutler@suse.com>
9 years agoceph.spec.in: drop %insserv_prereq (obsoleted by systemd)
Nathan Cutler [Tue, 29 Sep 2015 22:08:04 +0000 (00:08 +0200)]
ceph.spec.in: drop %insserv_prereq (obsoleted by systemd)

The %post, etc. scriptlets are no longer calling %insserv, et al.

Signed-off-by: Nathan Cutler <ncutler@suse.com>
9 years agoceph.spec.in: fix boost-random build dependency for SLE/openSUSE
Nathan Cutler [Tue, 29 Sep 2015 08:42:39 +0000 (10:42 +0200)]
ceph.spec.in: fix boost-random build dependency for SLE/openSUSE

In Fedora, RHEL and CentOS there is a package called boost-random.
In SLE/openSUSE, there is no such package.

Signed-off-by: Nathan Cutler <ncutler@suse.com>
9 years agodoc/release-notes: initial v9.1.0 notes
Sage Weil [Tue, 6 Oct 2015 01:57:40 +0000 (21:57 -0400)]
doc/release-notes: initial v9.1.0 notes

Signed-off-by: Sage Weil <sage@redhat.com>
9 years agoMerge pull request #6110 from ceph/wip-13239-infernalis
Sage Weil [Mon, 5 Oct 2015 21:32:00 +0000 (17:32 -0400)]
Merge pull request #6110 from ceph/wip-13239-infernalis

rgw: set default value for env->get() call

Reviewed-by: Sage Weil <sage@redhat.com>
9 years agoMerge pull request #6142 from ceph/wip-13061
Sage Weil [Mon, 5 Oct 2015 20:12:57 +0000 (16:12 -0400)]
Merge pull request #6142 from ceph/wip-13061

ceph.spec.in: Do not always restart the daemons on upgrades/removal

Reviewed-by: Ken Dreyer <kdreyer@redhat.com>
9 years agoMerge pull request #6105 from liewegas/wip-13262
Sage Weil [Mon, 5 Oct 2015 20:09:03 +0000 (16:09 -0400)]
Merge pull request #6105 from liewegas/wip-13262

mon: ignore messages from disconnected clients; clean up session checks

Reviewed-by: Joao Eduardo Luis <joao@suse.de>
9 years agoMerge pull request #6176 from liewegas/wip-13283
Sage Weil [Mon, 5 Oct 2015 18:51:43 +0000 (14:51 -0400)]
Merge pull request #6176 from liewegas/wip-13283

osdc/Objecter: send FULL_TRY and FULL_FORCE ops despite full flag

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
9 years agoosdc/Objecter: send FULL_TRY and FULL_FORCE ops despite full flag 6176/head
Sage Weil [Mon, 5 Oct 2015 13:15:55 +0000 (09:15 -0400)]
osdc/Objecter: send FULL_TRY and FULL_FORCE ops despite full flag

If a request has the FULL_TRY or FULL_FORCE flag, send it despite a full
pool or cluster.

Signed-off-by: Sage Weil <sage@redhat.com>
9 years agomon: allow ping through despite synch/quorum status, with session 6105/head
Sage Weil [Wed, 30 Sep 2015 01:13:48 +0000 (21:13 -0400)]
mon: allow ping through despite synch/quorum status, with session

Attach sessions to ping messages, too.

Signed-off-by: Sage Weil <sage@redhat.com>
9 years agomon: drop ops on closed sessions early
Sage Weil [Tue, 29 Sep 2015 14:09:37 +0000 (10:09 -0400)]
mon: drop ops on closed sessions early

We will throw it out in dispatch_op() anyway.  Remove the ancient (~2009)
reuse_caps logic too, which doesn't make any sense nowadays anyway.

Signed-off-by: Sage Weil <sage@redhat.com>
9 years agomon: clean up _ms_dispatch
Sage Weil [Tue, 29 Sep 2015 14:09:04 +0000 (10:09 -0400)]
mon: clean up _ms_dispatch

Lots of cruft here.

Signed-off-by: Sage Weil <sage@redhat.com>
9 years agomon: all MonOpRequests have an attached Session
Sage Weil [Tue, 29 Sep 2015 12:48:51 +0000 (08:48 -0400)]
mon: all MonOpRequests have an attached Session

...except in dispatch, where we initially set it up.

Signed-off-by: Sage Weil <sage@redhat.com>
9 years agomon: drop any ops from closed sessions in dispatch_op
Sage Weil [Tue, 29 Sep 2015 12:50:16 +0000 (08:50 -0400)]
mon: drop any ops from closed sessions in dispatch_op

If we've closed the session we shouldn't waste our time on this op.

Fixes: #13262 (we should not add a subscription to a disconnected session)
Signed-off-by: Sage Weil <sage@redhat.com>
9 years agomon: always set up session; move waitlist logic
Sage Weil [Tue, 29 Sep 2015 13:49:50 +0000 (09:49 -0400)]
mon: always set up session; move waitlist logic

Unconditionally attach a Session, so that when we push an op back through
dispatch_op it isn't in a weird broken state.

Move the waitinglist check to the bottom.  Use s->global_id == 0 to tell
whether a client has authenticated, and zap sessions based on that.

Signed-off-by: Sage Weil <sage@redhat.com>
9 years agomds: avoid emitting cap warnings before evicting session 6170/head
John Spray [Fri, 2 Oct 2015 21:14:38 +0000 (22:14 +0100)]
mds: avoid emitting cap warnings before evicting session

In the case where a client dies, and another client immediately
tries to access a file locked by the dead client, we would
previously *sometimes* emit a "client.xyz isn't responding to
mclientcaps" warning to the cluster log, right before
evicting the stale session.  This was because the timeout
for the session eviction and the timeout for the
warning message are both 60s.

Fix this by checking the stale sessions before doing the
warning message check in Locker.  If a session is going
to get evicted in this tick, it will already be gone
by the time Locker thinks about emitting the warning
message.

Fixes: #13334
Signed-off-by: John Spray <john.spray@redhat.com>
9 years agomon: fix msg leak in resend_routed_requests
Sage Weil [Fri, 2 Oct 2015 21:43:22 +0000 (17:43 -0400)]
mon: fix msg leak in resend_routed_requests

MForward takes its own ref so we can drop ours.

Signed-off-by: Sage Weil <sage@redhat.com>
9 years agoMon: Fix decoded message leak when this monitor is leader
Haomai Wang [Fri, 2 Oct 2015 11:14:59 +0000 (19:14 +0800)]
Mon: Fix decoded message leak when this monitor is leader

Fix #13109
Signed-off-by: Haomai Wang <haomai@xsky.com>
Reviewed-by: Sage Weil <sage@redhat.com>
9 years agoMerge pull request #6139 from liewegas/wip-13283
Sage Weil [Sat, 3 Oct 2015 12:50:25 +0000 (08:50 -0400)]
Merge pull request #6139 from liewegas/wip-13283

librados: add FULL_TRY flag; EDQUOT != ENOSPC

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
9 years agolibrados: document new flag 6139/head
Sage Weil [Fri, 2 Oct 2015 21:47:54 +0000 (17:47 -0400)]
librados: document new flag

Signed-off-by: Sage Weil <sage@redhat.com>
9 years agoMerge pull request #6169 from rzarzynski/wip-13326
Yehuda Sadeh [Fri, 2 Oct 2015 21:17:42 +0000 (14:17 -0700)]
Merge pull request #6169 from rzarzynski/wip-13326

rgw: improve handling of already removed buckets in object expirer.

Reviewed-by: Yehuda Sadeh <yehuda@redhat.com>
9 years agoMerge pull request #6168 from SUSE/wip-13333-infernalis
Ken Dreyer [Fri, 2 Oct 2015 19:30:37 +0000 (13:30 -0600)]
Merge pull request #6168 from SUSE/wip-13333-infernalis

ceph.spec.in: correctly declare systemd dependency for SLE/openSUSE

Reviewed-by: Ken Dreyer <kdreyer@redhat.com>
9 years agoceph.spec.in: correctly declare systemd dependency for SLE/openSUSE 6168/head
Nathan Cutler [Tue, 29 Sep 2015 21:28:00 +0000 (23:28 +0200)]
ceph.spec.in: correctly declare systemd dependency for SLE/openSUSE

Signed-off-by: Nathan Cutler <ncutler@suse.com>
(cherry picked from commit 7b1882f87509092380d11ec68b504a7bc1f77830)

9 years agoosd/ReplicatedPG: exempt MDS from the failsafe check, too
Sage Weil [Fri, 2 Oct 2015 18:12:22 +0000 (14:12 -0400)]
osd/ReplicatedPG: exempt MDS from the failsafe check, too

This mimics the prior behavior.  We probably want to change this at some
point!

Signed-off-by: Sage Weil <sage@redhat.com>
9 years agorgw: improve handling of already removed buckets in object expirer. 6138/head 6169/head
Radoslaw Zarzynski [Thu, 1 Oct 2015 19:06:13 +0000 (21:06 +0200)]
rgw: improve handling of already removed buckets in object expirer.

Fixes: #13326
Backport: infernalis
Signed-off-by: Radoslaw Zarzynski <rzarzynski@github.com>
9 years agoMerge pull request #6096 from liewegas/wip-13260
Sage Weil [Fri, 2 Oct 2015 12:47:33 +0000 (08:47 -0400)]
Merge pull request #6096 from liewegas/wip-13260

osd/ReplicatedPG: preserve (some) flags when proxying reads

Reviewed-by: Samuel Just <sjust@redhat.com>
9 years agoMerge pull request #6136 from liewegas/wip-13114
Sage Weil [Fri, 2 Oct 2015 12:38:39 +0000 (08:38 -0400)]
Merge pull request #6136 from liewegas/wip-13114

osd/librados: fix notify completion race

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
9 years agoceph.spec.in: Do not always restart the daemons on removal 6142/head
Boris Ranto [Fri, 2 Oct 2015 08:37:04 +0000 (10:37 +0200)]
ceph.spec.in: Do not always restart the daemons on removal

There is no need to restart the daemons when removing ceph-selinux
package if SELinux is not enabled.

Fixes: #13061
Signed-off-by: Boris Ranto <branto@redhat.com>
9 years agoceph.spec.in: Do not always restart the daemons on upgrades
Boris Ranto [Fri, 2 Oct 2015 07:56:01 +0000 (09:56 +0200)]
ceph.spec.in: Do not always restart the daemons on upgrades

This patch minimizes the amount of daemon stop/start procedures when
upgrading ceph-selinux package. With this patch, the daemons get
restarted only if SELinux is enabled and the SELinux policy version
changed in the meantime.

Fixes: #13061
Signed-off-by: Boris Ranto <branto@redhat.com>
9 years agoMerge pull request #6137 from SUSE/wip-13324-infernalis
Loic Dachary [Thu, 1 Oct 2015 22:34:53 +0000 (00:34 +0200)]
Merge pull request #6137 from SUSE/wip-13324-infernalis

install-deps.sh: use %bcond_with selinux on SLE/openSUSE

Reviewed-by: Loic Dachary <ldachary@redhat.com>
9 years agoMerge remote-tracking branch 'jdurgin/wip-13281' into infernalis
Samuel Just [Thu, 1 Oct 2015 21:55:37 +0000 (14:55 -0700)]
Merge remote-tracking branch 'jdurgin/wip-13281' into infernalis

Reviewed-by: Sage Weil <sage@redhat.com>
Reviewed-by: Samuel Just <sjust@redhat.com>
9 years agoReplicatedPG: consider IGNORE_CACHE for all maybe_handle_cache calls 6181/head
Samuel Just [Thu, 1 Oct 2015 19:11:18 +0000 (12:11 -0700)]
ReplicatedPG: consider IGNORE_CACHE for all maybe_handle_cache calls

Otherwise, we could erroneously promote a snap after not promoting
the missing head for which we have a cached obc and ssc.

Fixes: #13323
Signed-off-by: Samuel Just <sjust@redhat.com>
9 years agoinstall-deps.sh: use %bcond_with selinux on SLE/openSUSE 6137/head
Nathan Cutler [Thu, 1 Oct 2015 19:04:29 +0000 (21:04 +0200)]
install-deps.sh: use %bcond_with selinux on SLE/openSUSE

http://tracker.ceph.com/issues/13324 Fixes: #13324

Signed-off-by: Nathan Cutler <ncutler@suse.com>
9 years agoceph_test_rados_api_aio: test pool full gets EDQUOT when FULL_TRY flag is set
Sage Weil [Thu, 1 Oct 2015 19:34:59 +0000 (15:34 -0400)]
ceph_test_rados_api_aio: test pool full gets EDQUOT when FULL_TRY flag is set

Signed-off-by: Sage Weil <sage@redhat.com>
9 years agolibrados: expose OPERATION_FULL_TRY flag
Sage Weil [Thu, 1 Oct 2015 19:03:22 +0000 (15:03 -0400)]
librados: expose OPERATION_FULL_TRY flag

Allow librados users to opt to receive ENOSPC or EDQUOT when they submit
an operation against a full cluster.  This should only be used if the
librados app can handle those errors gracefully (librbd, for example,
cannot).

Also note that this allows savvy librados users to send delete operations;
they will get either a success or EDQUOT, depending on whether the
operation results in a net drop in space utilization.

Signed-off-by: Sage Weil <sage@redhat.com>
9 years agoosd: return -EDQUOT instead of -ENOSPC if it is a pool quota
Sage Weil [Thu, 1 Oct 2015 19:01:59 +0000 (15:01 -0400)]
osd: return -EDQUOT instead of -ENOSPC if it is a pool quota

The pool quota error should return EDQUOT intead of ENOSPC.

Signed-off-by: Sage Weil <sage@redhat.com>
9 years agoosdc/Objecter: distinguish between multiple notify completions 6136/head
Sage Weil [Thu, 1 Oct 2015 18:50:34 +0000 (14:50 -0400)]
osdc/Objecter: distinguish between multiple notify completions

We may send a notify to the cluster multiple times due to OSDMap
changes.  In some cases, earlier notify attempts may complete with
an error, while later attempts succeed.  We need to only pay
attention to the most-recently send notify's completion.

Do this by making note of the notify_id in the initial ACK (only
present when talking to newer OSDs).  When we get a notify
completion, match it against our expected notify_id (if we have
one) or else discard it.

This is important because in some cases an early notify completion
may be an error while a later one succeeds.

Note that if we are talking to an old cluster we will simply not record a
notify_id and our behavior will be the same as before (we will trust any
notify completion we get).

Fixes: #13114
Signed-off-by: Sage Weil <sage@redhat.com>