Commit Graph

40284 Commits

Author SHA1 Message Date
Jason Dillaman
194fcfd04f librbd: retrieve image size at start of resize op
For the case where multiple resize requests were pending,
queued resizes should use the most recent value for the
current image size -- not the image size when the resize
was queued.

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2015-03-10 15:41:46 -07:00
Jason Dillaman
0212ae4651 librbd: do not invalidate oversized object map
If the object map is too large for the current image, it implies
that a resize operation was interrupted.  It should only be
considered invalid if the object map is smaller than the image,
which shouldn't be possible.

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2015-03-10 15:41:46 -07:00
Jason Dillaman
7f246b8962 librbd: avoid canceling object map / header updates
During a resize, reduce the possibility that the object map
and the header will get out-of-sync during a resize operation
that is canceled.

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2015-03-10 15:41:46 -07:00
Jason Dillaman
85737ab8c6 librbd: update size / parent overlap after resize completes
Update the in-memory image metadata for size and parent
overlap after updating the on-disk image metadata. Also
schedule an image refresh in case multiple resizes are
enqueued -- since ictx_refresh isn't async.

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2015-03-10 15:41:46 -07:00
Jason Dillaman
1d2989096e librbd: use image size and parent overlap from active shrink op
If a shrink operation is in progress, all operations should use
the new size and new parent overlap for IO operations.

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2015-03-10 15:41:46 -07:00
Jason Dillaman
9c5c665bc7 librbd: queue multiple resize requests
Only allow a single resize request to be executed concurrently.

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2015-03-10 15:41:46 -07:00
Jason Dillaman
6bc47eb900 xlist: add const versions of front / back
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2015-03-10 15:41:46 -07:00
Jason Dillaman
e7f9e3bdd9 librbd: use ImageCtx::get_parent_overlap helper function
Replace all direct references to ImageCtx::parent_md.overlap
with the helper method.

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2015-03-10 15:41:46 -07:00
Jason Dillaman
286b38527f librbd: resize/flatten should validate image is R/W
When proxying resize/flatten requests, the current image
R/W state is not validated.  Also ensure the proper locks
are held when reading image metadata.

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2015-03-10 15:41:46 -07:00
Jason Dillaman
9dcd517ff9 librbd: hold write snap_lock when refreshing object map
If the object map needs to be invalidated, a write lock on
snap_lock is required.

Fixes: #11067
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2015-03-10 15:41:45 -07:00
Sage Weil
5d5b510810 doc/release-notes: v0.80.8 and .9 changelogs
Signed-off-by: Sage Weil <sage@redhat.com>
2015-03-10 12:32:47 -07:00
Radoslaw Zarzynski
1660d86252 rgw: fix handling empty metadata items on Swift container.
Fixes: #11088
Backport: hammer
Signed-off-by: Radoslaw Zarzynski <rzarzynski@mirantis.com>
2015-03-10 19:57:47 +01:00
Ved-vampir
799e05d86a os, osd: add perf counters description
Sign-off-by: Alyona Kiseleva <akiselyova@mirantis.com>
2015-03-10 21:13:29 +03:00
Loic Dachary
af890731da tests: ceph-disk paritition creation and partition table in use
The kernel partition table notification (via partprobe, partx, etc.) may
behave differently when a partition is in use. Add a test case that
checks a new journal partition shows as expected, even if another
journal partition is in use.

http://tracker.ceph.com/issues/10987 Refs: #10987

Signed-off-by: Loic Dachary <ldachary@redhat.com>
2015-03-10 17:50:29 +01:00
Loic Dachary
da22e22e7f tests: ceph-disk.sh test for second journal partition
Create an OSD with data on a disk, journal on another
This will add a new partition to $journal, the previous
one will remain.

Add 200MB to the file supporting the pseudo disk exposed via the loop
device: as we create more OSDs, more 100MB partitions will be created
for journals.

Signed-off-by: Loic Dachary <ldachary@redhat.com>
2015-03-10 17:50:29 +01:00
Loic Dachary
1e462a4520 tests: ceph-disk.sh cosmetic changes and reduced verbosity
Signed-off-by: Loic Dachary <ldachary@redhat.com>
2015-03-10 17:50:29 +01:00
Loic Dachary
064a05e138 tests: do not use --journal-dio=true
Direct IO for the journal may cause subtle errors while running the
tests withing a container. Disable Direct IO for all ceph-disk.sh tests.

Signed-off-by: Loic Dachary <ldachary@redhat.com>
2015-03-10 17:50:29 +01:00
Loic Dachary
dda58cd4d8 tests: ceph-disk.sh may use uuidgen without PATH
Store the absolute path in a variable to find uuidgen even if PATH is
empty.

Signed-off-by: Loic Dachary <ldachary@redhat.com>
2015-03-10 17:50:29 +01:00
Loic Dachary
fbb6df525c tests: ceph-disk.sh can be confused if there are two OSDs
Replace the fragile extaction of the whoami file with an explicit uuid
set for a given OSD. It can conveniently be translated back into an osd
id with ceph osd create uuid if needed.

Signed-off-by: Loic Dachary <ldachary@redhat.com>
2015-03-10 17:50:29 +01:00
Loic Dachary
8d52dc185e tests: teardown on ceph-disk error
The activate_dev error must kill all process with teardown before
attempting to umount the devices when an error happens. Otherwise the
device fails to be unmounted and the loop devices are never freed.

Signed-off-by: Loic Dachary <ldachary@redhat.com>
2015-03-10 17:50:29 +01:00
Ken Dreyer
51f5feccac Merge pull request #3871 from dachary/wip-install-deps
tests: install-deps.sh install EPEL and RHEL Optional

Reviewed-by: Ken Dreyer <kdreyer@redhat.com>
2015-03-10 10:42:16 -06:00
Ken Dreyer
e6dcaa8688 rm old ceph-deploy reference
There's no need to refer to this old version of ceph-deploy. v1.1.3 is
circa June 2013, and since that time, we have shipped much newer version
of ceph-deploy (1.5.22 at the time of this writing). We should simply
state the behavior of modern ceph-deploys here.

Signed-off-by: Ken Dreyer <kdreyer@redhat.com>
2015-03-10 10:28:02 -06:00
Sage Weil
c35f422f74 Merge pull request #3923 from ceph/wip-11079
crush: fix get_weight and destroy for straw2 buckets

Reviewed-by: Loic Dachary <ldachary@redhat.com>
2015-03-10 08:44:31 -07:00
Kefu Chai
d2057bd6d9 Merge pull request #3887 from stiopaa1/feature10891
mon: add "osd pool get $pool all" command

Reviewed-by: Kefu Chai <kchai@redhat.com>
2015-03-10 22:16:29 +08:00
Sage Weil
ac527a2677 crushtool: improve straw2 compile/decompile test
This way it catches #11079.

Signed-off-by: Sage Weil <sage@redhat.com>
2015-03-10 06:46:56 -07:00
Sage Weil
6445d9ee72 crush: fix crush_get_bucket_item_weight and bucket destroy for straw2
Fixes: #11079
Signed-off-by: Sage Weil <sage@redhat.com>
2015-03-10 06:46:52 -07:00
Sage Weil
b686edae8c crushtool: fix straw2 cli test
Signed-off-by: Sage Weil <sage@redhat.com>
2015-03-10 06:46:49 -07:00
Sage Weil
faa1f2741c Merge remote-tracking branch 'gh/hammer'
Conflicts:
	src/gmock
2015-03-10 06:24:59 -07:00
Yan, Zheng
75bf4bec28 mds: fix assertion caused by system clock backwards
Fixes: #11053
Signed-off-by: Yan, Zheng <zyan@redhat.com>
2015-03-10 20:05:16 +08:00
Loic Dachary
830a4a1b6b tests: install-deps.sh install EPEL and RHEL Optional
On CentOS and RHEL, some dependencies come from EPEL.

Always enable RHEL Optional repository for RHEL as packages such as
packages such as libatomic_ops-devel or libedit-devel are only found
there in RHEL 6.5.

http://tracker.ceph.com/issues/11061 Refs: #11061

Signed-off-by: Loic Dachary <ldachary@redhat.com>
2015-03-10 11:39:52 +01:00
Danny Al-Gaaf
b17c3ebbdc Merge pull request #3901 from dachary/wip-10922-ceph-deploy-documentation
doc: preparing a device implies activate

Reviewed-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
2015-03-10 10:53:56 +01:00
Danny Al-Gaaf
01cee14271 Merge pull request #3907 from dachary/wip-test-delays
tests: increase the delay waiting for a cluster event

Reviewed-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
2015-03-10 10:51:05 +01:00
Danny Al-Gaaf
15d97794d0 Merge pull request #3914 from ktdreyer/wip-doc-rgw-apache-log-perms
doc: rm Apache log permissions instructions

Reviewed-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
2015-03-10 10:47:51 +01:00
Kefu Chai
9b4b350695 Merge pull request #3917 from dachary/wip-rhel6-doc
doc: rhel6.5 is rhel6

Reviewed-by: Kefu Chai <kchai@redhat.com>
2015-03-10 16:02:12 +08:00
Xiong Yiliang
5b58ef1569 osdc: fix a memory leak in C_TwoContexts
If an ObjectOperation op is cancelled, its destructor is
called and each Context object in out_handler is deleted.
A C_TwoContexts object can be one of these handlers. The
two contexts wrapped in C_TwoContexts must be deleted
as well.

Signed-off-by: Xiong Yiliang <xiongyiliang@xunlei.com>
(cherry picked from commit f33cdbe485)
2015-03-10 14:34:56 +08:00
Kefu Chai
23d2e5aade Merge pull request #3890 from XunleiGFS/fix_C_TwoContexts
osdc: fix a memory leak in C_TwoContexts

Reviewed-by: Kefu Chai <kchai@redhat.com>
2015-03-10 12:16:03 +08:00
Sage Weil
955bd114fc Merge pull request #3845 from ceph/wip-wn-rgw-hammer
Wip wn rgw hammer

Reviewed-by: Sage Weil <sage@redhat.com>
2015-03-09 19:49:21 -07:00
Sage Weil
5c73f1da25 Merge pull request #3913 from yuyuyu101/wip-async-fix-throttle-deadlock
Wip async fix throttle deadlock

Reviewed-by: Sage Weil <sage@redhat.com>
2015-03-09 19:48:11 -07:00
Sage Weil
05bb9c9870 Merge pull request #3911 from athanatos/wip-11057
ReplicatedPG: block write on degraded object if there are waiters

Reviewed-by: Sage Weil <sage@redhat.com>
2015-03-09 19:43:02 -07:00
Loic Dachary
e3616a5515 doc: rhel6.5 is rhel6
RHEL 6.5 is actually  http://ceph.com/rpm-giant/rhel6/

Signed-off-by: Loic Dachary <ldachary@redhat.com>
2015-03-10 02:06:10 +01:00
Loic Dachary
b780048c48 Merge pull request #3909 from dachary/wip-11068-debian-jessie
deb: add zlib1g-dev to Build-Depends for Debian/jessie

Reviewed-by: Yann Dupont <yann@objoo.org>
2015-03-09 23:40:04 +01:00
Michal Jarzabek
ea6192116c mon/OSDMonitor: refactor and new key "all" for osd pool get command
This will only output all the values applicable to a given type of pool.
So for example for a pool that is not a tier pool values like HIT_SET_TYPE,
HIT_SET_PERIOD, HIT_SET_COUNT etc. will be ignored.

Fixes: #10891
Signed-off-by: Michal Jarzabek <stiopa@gmail.com>
2015-03-09 19:44:26 +00:00
Ken Dreyer
9b5d79ee13 doc: rm Apache log permissions instructions
On all distros, Apache should be able to write to its own log directory.
If not, that is a severe distro bug that should be reported/fixed.

Remove the references to running "chown" on /var/log/httpd or
/var/log/apache2.

Signed-off-by: Ken Dreyer <kdreyer@redhat.com>
2015-03-09 13:12:25 -06:00
Sage Weil
a9c4edab1c doc/release-notes: update notes for v0.80.9
Signed-off-by: Sage Weil <sage@redhat.com>
2015-03-09 10:56:11 -07:00
Yehuda Sadeh
3b50da8332 Merge pull request #3608 from guangyy/wip-rgw-quota-threads
rgw: make quota/gc thread configurable for starting

Reviewed-by: Yehuda Sadeh <yehuda@redhat.com>
2015-03-09 09:39:58 -07:00
Yehuda Sadeh
a22a63d283 Merge pull request #3795 from rzarzynski/wip-10938
rgw: improve support for X-Timestamp header of Swift API

Reviewed-by: Yehuda Sadeh <yehuda@redhat.com>
2015-03-09 09:37:02 -07:00
Haomai Wang
76becb2c1e Event: Let external events ran without lock/unlock
Signed-off-by: Haomai Wang <haomaiwang@gmail.com>
2015-03-10 00:26:22 +08:00
Haomai Wang
1c92cb639d AsyncConnection: Don't block process when throttle is full
If this connection is blocking on throttler and another worker thread
try to acquire this connection's lock, it will deadlock.

Signed-off-by: Haomai Wang <haomaiwang@gmail.com>
2015-03-10 00:20:24 +08:00
Gregory Farnum
ea7fbdbdf8 Merge pull request #3668 from ceph/wip-compact-container
Optimize memory usage of MDS

Reviewed-by: John Spray <john.spray@redhat.com>
Reviewed-by: Greg Farnum <gfarnum@redhat.com>
2015-03-09 12:17:40 -04:00
Loic Dachary
cc0db22fff Merge pull request #3908 from gravitystorm/patch-2
fix typo

Reviewed-by: Loic Dachary <ldachary@redhat.com>
2015-03-09 16:35:28 +01:00