Commit Graph

32840 Commits

Author SHA1 Message Date
Yan, Zheng
d1967f3251 mds: treat cluster as degraded when there is clientreplay MDS
This forbids exporting subtrees and fragmenting dirfrags when there
is MDS in clientreplay state. During replaying client requests, the
MDS may need to authpin some remote objects. Exporting subtrees and
fragmenting dirfrags slow down replaying client requests.

Signed-off-by: Yan, Zheng <zheng.z.yan@intel.com>
2014-04-02 11:03:10 +08:00
Yan, Zheng
b65a818407 mds: don't start new segment while finishing disambiguate imports
This avoid inserting ESubtreeMap among EImportFinish events that
finish disambiguate imports. Because the ESubtreeMap reflects the
subtree state when all EImportFinish events are replayed.

Signed-off-by: Yan, Zheng <zheng.z.yan@intel.com>
2014-04-02 11:03:10 +08:00
Yan, Zheng
ff44a99a59 mds: trim non-auth subtree more aggressively
When a non-auth dirfrag is pinned by uncommitted slave update,
there still can be non-auth child dirfrags that are trimmable.

Signed-off-by: Yan, Zheng <zheng.z.yan@intel.com>
2014-04-02 11:03:00 +08:00
Sage Weil
e095b1d493 debian: make ceph-common own etc/ceph, var/log/ceph
Clients can make use of these directories, and ceph-common is required by
ceph, so nothing should break here.

Change the purge postrm script to be for ceph-common (it does nothing else).

Signed-off-by: Sage Weil <sage@inktank.com>
2014-04-01 14:42:30 -07:00
Sage Weil
d4d39a01ca osd/ReplicatedPG: mark_unrollbackable when _rollback_to head
We fell into the case in _rollback_to where we just set ctx->modify = true
and don't explicitly mark the ctx and unrollbackable.  Later, we screw up
in proc_replica_log as a result because we think we can rollback this
update to the head when in reality we cannot.

Fixes: #7907
Signed-off-by: Sage Weil <sage@inktank.com>
2014-04-01 14:27:31 -07:00
Samuel Just
f0978a823d Merge pull request #1578 from ceph/wip-7437
wip-7437

Reviewed-by: Samuel Just <sam.just@inktank.com>
2014-04-01 13:58:10 -07:00
Sage Weil
1acd547ad0 debian: move ceph-rest-api from ceph-common to ceph
ceph-rest-api is a 'server' thing that runs persistently; 'ceph' is a
better match.

Signed-off-by: Sage Weil <sage@inktank.com>
2014-04-01 13:07:56 -07:00
Josh Durgin
a926cd38a8 Merge pull request #1577 from ceph/wip-7935
rgw: reverse logic to identify next part

Reviewed-by: Josh Durgin <josh.durgin@inktank.com>
2014-04-01 12:38:46 -07:00
Samuel Just
a76a129f75 PG: set role for replicated even if role != shard
Fixes: #7939
Signed-off-by: Samuel Just <sam.just@inktank.com>
2014-04-01 12:19:57 -07:00
David Zafman
ef94fcd72e test: Add EC testing to ceph_test_rados_api_snaphots
Signed-off-by: David Zafman <david.zafman@inktank.com>
2014-04-01 11:53:51 -07:00
David Zafman
1871fe7970 test: Add EC testing to ceph_test_rados_api_lock
Signed-off-by: David Zafman <david.zafman@inktank.com>
2014-04-01 11:53:51 -07:00
David Zafman
759878c16d test: Add EC testing to ceph_test_rados_api_tier
Signed-off-by: David Zafman <david.zafman@inktank.com>
2014-04-01 11:53:51 -07:00
David Zafman
38b9fe7c9b test: Add EC to ceph_test_rados_api_watch_notify
Signed-off-by: David Zafman <david.zafman@inktank.com>
2014-04-01 11:53:50 -07:00
David Zafman
6cedfacd90 test: Add EC testing to ceph_test_rados_api_stat
Signed-off-by: David Zafman <david.zafman@inktank.com>
2014-04-01 11:53:50 -07:00
David Zafman
7ccf412988 test: Add EC testing to ceph_test_rados_api_list
Fixes: #7437

Signed-off-by: David Zafman <david.zafman@inktank.com>
2014-04-01 11:53:50 -07:00
David Zafman
ea26e13b6b test: Add EC testing to ceph_test_rados_api_io
Signed-off-by: David Zafman <david.zafman@inktank.com>
2014-04-01 11:53:50 -07:00
David Zafman
9bd5821aab test: Add EC test classes RadosTestEC and RadosTestECPP
Fixes: #7437

Signed-off-by: David Zafman <david.zafman@inktank.com>
2014-04-01 11:53:50 -07:00
David Zafman
a4da24d3bc test: Fix ceph_test_rados_list_parallel to clean up test pool
Signed-off-by: David Zafman <david.zafman@inktank.com>
2014-04-01 11:53:50 -07:00
David Zafman
966480b271 test: Fix ceph_test_rados_api_aio to clean up all test pools
Signed-off-by: David Zafman <david.zafman@inktank.com>
2014-04-01 11:53:50 -07:00
David Zafman
74ed4489d9 test: Cleanup pools when FlushWriteRaces is done
Signed-off-by: David Zafman <david.zafman@inktank.com>
2014-04-01 11:53:50 -07:00
David Zafman
c106976fce librados: Add missing C variants for alignment
Add rados_ioctx_pool_requires_alignment()
Add rados_ioctx_pool_required_alignment()

Signed-off-by: David Zafman <david.zafman@inktank.com>
2014-04-01 11:53:50 -07:00
David Zafman
2d7da1d5c0 librados: Add missing rados_wait_for_latest_osdmap()
Signed-off-by: David Zafman <david.zafman@inktank.com>
2014-04-01 11:53:50 -07:00
Sage Weil
dde1c91605 osd/ReplicatedPG: continue scrub logic when snapset.head_exists doesn't match
The 'continue' will cause more damange/noise than continuing because the
next_clone value won't be updated properly.

Signed-off-by: Sage Weil <sage@inktank.com>
2014-04-01 11:04:50 -07:00
Sage Weil
c2e5a42874 osd/ReplicatedPG: handle snapdir properly during scrub
Handle snapdir similarly to how head is treated when updating the
next_clone info.  Also, add a warning when we have a snapdir object and
head_exists == true (the converse of the existing check).

Fixes: #7937
Signed-off-by: Sage Weil <sage@inktank.com>
2014-04-01 11:04:47 -07:00
Yehuda Sadeh
ed5a5e0755 rgw: reverse logic to identify next part
Fixes: #7935
The check that identifies whether we need to move to the next part when
iterating over an object was reversed.

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
2014-04-01 10:52:06 -07:00
Samuel Just
48fbce98bd ReplicatedPG: improve get_object_context debugging
Signed-off-by: Samuel Just <sam.just@inktank.com>
2014-04-01 10:45:33 -07:00
Sage Weil
87b08b23c3 Merge pull request #1575 from jdurgin/wip-librbd-cp-sparse
librbd: skip zeroes when copying an image

Reviewed-by: Sage Weil <sage@inktank.com>
2014-03-31 18:15:12 -07:00
Sage Weil
5c9b8a2715 osd/PG: debug cached_removed_snaps changes
See #7915.

Signed-off-by: Sage Weil <sage@inktank.com>
2014-03-31 17:39:52 -07:00
Sage Weil
a4dc6f2bf8 Merge pull request #1574 from mikenel/master
Add ceph-client-debug and jerasure shared objects to RPM spec file.

Reviewed-by: Sage Weil <sage@inktank.com>
2014-03-31 15:19:57 -07:00
Josh Durgin
824da20296 librbd: skip zeroes when copying an image
This is the simple coarse-grained solution, but it works well in
common cases like a small base image resized with a bunch of empty
space at the end. Finer-grained sparseness can be copied by using rbd
{export,import}-diff.

Fixes: #6257
Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
2014-03-31 15:04:28 -07:00
Sage Weil
70d2e1353e Merge pull request #1573 from ceph/wip-7912
mon/PGMap: clear pool sum when last pg is deleted

Reviewed-by: Greg Farnum <greg@inktank.com>
2014-03-31 14:59:38 -07:00
Sage Weil
5132699145 Merge pull request #1556 from ceph/wip-7888
msgr: add new ping/ping reply to use in place of keepalive

Reviewed-by: Greg Farnum <greg@inktank.com>
2014-03-31 14:57:57 -07:00
Sage Weil
a8eb9b5fcd Merge pull request #1566 from ceph/wip-fuse-access
fuse: implement 'access' low level function

Reviewed-by: Sage Weil <sage@inktank.com>
2014-03-31 14:56:13 -07:00
Sage Weil
e44f85ce18 qa/workunits/cephtool/test.sh: test 'osd pg-temp ...'
Signed-off-by: Sage Weil <sage@inktank.com>
2014-03-31 14:12:51 -07:00
Sage Weil
2d4ec6a166 mon/OSDMonitor: clear primary_temp on osd pg_temp updates
Until the OSD and the MOSDPGTemp messages encode primary_temp updates,
assume that any pg_temp update will clear primary_temp.

Signed-off-by: Sage Weil <sage@inktank.com>
Reviewed-by: Samuel Just <sam.just@inktank.com>
Reviewed-by: Ilya Dryomov <ilya.dryomov@inktank.com>
2014-03-31 14:12:27 -07:00
Ilya Dryomov
255f84047e OSDMonitor: add 'mon osd allow primary temp' bool option
By default, we don't send out maps with primary_temp mappings because
there is no infrastructure in place that would make sure that the
entire cluster knows about primary_temp.  Add an option to allow
primary_temp mappings, for development purposes.

Signed-off-by: Ilya Dryomov <ilya.dryomov@inktank.com>
Reviewed-by: Sage Weil <sage@inktank.com>
2014-03-31 14:12:15 -07:00
Ilya Dryomov
63ac079302 OSDMonitor: add 'osd primary-temp ...' command
ceph osd primary-temp <pgid> [<osd>]

Examples:

ceph osd primary-temp 0.2 4 # set primary_temp mapping for 0.2 to osd4
ceph osd primary-temp 0.2   # remove primary_temp mapping for 0.2

Signed-off-by: Ilya Dryomov <ilya.dryomov@inktank.com>
Reviewed-by: Sage Weil <sage@inktank.com>
2014-03-31 14:12:00 -07:00
Ilya Dryomov
07dcffa1df OSDMonitor: add 'osd pg-temp ...' command
ceph osd pg-temp <pgid> [<osd1> [<osd2> ...]]

Examples:

ceph osd pg-temp 0.2 0 1 2 # set pg_temp mapping for 0.2 to osds [0,1,2]
ceph osd pg-temp 0.2 3     # set pg_temp mapping for 0.2 to osds [3]
ceph osd pg-temp 0.2       # remove pg_temp mapping for 0.2

Signed-off-by: Ilya Dryomov <ilya.dryomov@inktank.com>
Reviewed-by: Sage Weil <sage@inktank.com>
2014-03-31 14:11:45 -07:00
Greg Farnum
d3183e313b java/test: ceph.file.layout xattr is still not there now
b8ea65694f tried to fix this, but
missed a spot.

Signed-off-by: Greg Farnum <greg@inktank.com>
Reviewed-by: Sage Weil <sage@inktank.com>
2014-03-31 14:05:37 -07:00
Josh Durgin
880e6ea3fe Merge pull request #1567 from ceph/wip-7849
ceph-conf: don't create log files

Reviewed-by: Josh Durgin <josh.durgin@inktank.com>
2014-03-31 12:40:35 -07:00
Josh Durgin
d474332ef0 Merge pull request #1570 from dachary/wip-gitignore
.gitignore: add examples/librados files

Reviewed-by: Josh Durgin <josh.durgin@inktank.com>
2014-03-31 12:36:07 -07:00
Michael Nelson
cd1a9c496a Add ceph-client-debug and jerasure shared objects to RPM spec file. 2014-03-31 12:35:56 -07:00
Sage Weil
81853c618b mon/PGMap: clear pool sum when last pg is deleted
Use the x.0 pg as a sentinel for the existence of the pool.  Note that we
have to clean in up two paths: apply_incrmenetal (which is actually
deprecated) and the normal PGMonitor refresh.

Fixes: #7912
Signed-off-by: Sage Weil <sage@inktank.com>
2014-03-31 10:42:23 -07:00
Sage Weil
b3ffce8782 Merge pull request #1572 from ceph/wip-ec-profile-idempotent
mon: make 'ceph osd erasure-code-profile set ...' idempotent

Reviewed-by: Joao Eduardo Luis <joao.luis@inktank.com>
2014-03-31 10:18:58 -07:00
Sage Weil
8c761c4797 mon: make 'ceph osd erasure-code-profile set ...' idempotent
Signed-off-by: Sage Weil <sage@inktank.com>
2014-03-31 10:01:43 -07:00
Sage Weil
7d321d8aa6 qa/workunits/rados/test_alloc_hint: fix erasure syntax
This changed recently.

Signed-off-by: Sage Weil <sage@inktank.com>
2014-03-31 09:14:36 -07:00
Loic Dachary
995e055bd2 Merge pull request #1571 from kotnik/docufix
Small glossary typo fix

Reviewed-by: Loic Dachary <loic@dachary.org>
2014-03-31 16:27:43 +02:00
Nikola Kotur
2826fdad47 doc: fix typos in glossary 2014-03-31 16:24:28 +02:00
Loic Dachary
7fa025e365 .gitignore: add examples/librados files
Signed-off-by: Loic Dachary <loic@dachary.org>
2014-03-31 11:30:49 +02:00
Sage Weil
f89e992f7d Merge pull request #1564 from dachary/wip-erasure-code-doc
doc: updates to the erasure code development docs

Reviewed-by: Sage Weil <sage@inktank.com>
2014-03-30 09:20:58 -07:00