Commit Graph

33068 Commits

Author SHA1 Message Date
Michael Riederer
27ec495a00 Added Java Example 2014-04-28 09:07:54 +02:00
Loic Dachary
9b37398d65 Merge pull request #1717 from dachary/wip-auid
mon: add ceph osd pool set <pool> auid

Reviewed-by: Greg Farnum <greg@inktank.com>
2014-04-24 22:42:09 +02:00
wusui
e8b13f71ca Merge pull request #1724 from ceph/wip-uselocalgithubforqemu-wusui
Use new git mirror for qemu-iotests
2014-04-24 13:27:40 -07:00
Warren Usui
ddf37d903f Use new git mirror for qemu-iotests
Fixes: 8191
Signed-off-by: Warren Usui <warren.usui@inktank.com>
2014-04-24 12:55:26 -07:00
Sage Weil
2708c3c559 Merge remote-tracking branch 'gh/firefly' 2014-04-23 18:00:59 -07:00
Sage Weil
d384d3a660 Merge pull request #1720 from jdurgin/wip-list-children-test
test_rbd.py: ignore children in cache pools

Reviewed-by: Sage Weil <sage@inktank.com>
2014-04-23 17:23:12 -07:00
Sage Weil
5b97976658 Merge pull request #1719 from ceph/wip-8168
Wip 8168

Reviewed-by: Sage Weil <sage@inktank.com>
2014-04-23 16:07:02 -07:00
Samuel Just
83f8934890 ReplicatedPG::do_osd_ops: consider head whiteout in list-snaps
Signed-off-by: Samuel Just <sam.just@inktank.com>
2014-04-23 14:11:17 -07:00
Samuel Just
39c1bfc457 ReplicatedPG::do_op: don't return ENOENT for whiteout on snapdir read
Signed-off-by: Samuel Just <sam.just@inktank.com>
2014-04-23 14:11:17 -07:00
Josh Durgin
76a2138908 Merge pull request #1718 from ceph/wip-7882-wusui
Support latest qemu iotest code

Reviewed-by: Josh Durgin <josh.durgin@inktank.com>
2014-04-23 13:47:02 -07:00
Josh Durgin
a83aff547f test_rbd.py: ignore children in cache pools
This is necessary until http://tracker.ceph.com/issues/8187 is fixed.

Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
2014-04-23 13:28:50 -07:00
Loic Dachary
aae16ab355 mon: add ceph osd pool set <pool> auid
When a pool is created with ceph osd pool create, the auid is not
inferred from the session auid and is set to zero. Add the

  ceph osd pool set <pool> auid <int>

command to set it after it is created, and the matching get:

  ceph osd pool get <pool> auid

Signed-off-by: Loic Dachary <loic@dachary.org>
2014-04-23 22:20:42 +02:00
Warren Usui
606e725eb5 Support latest qemu iotest code
Modified qemu-iotests workunit script to check for versions
that use the latest qemu (currently only Trusty).  Limit the
tests to those that are applicable to rbd.

Fixes: 7882
Signed-off-by: Warren Usui <warren.usui@inktank.com>
2014-04-23 13:20:14 -07:00
Sage Weil
4ed25fdbf7 Merge pull request #1714 from ceph/wip-fs-client
two small fixes for client

Reviewed-by: Sage Weil <sage@inktank.com>
2014-04-23 08:51:26 -07:00
Yan, Zheng
bad34e90e5 client: check cap ID when handling cap export message
handle following sequence of events:
- mds0 exports an inode to mds1. client receives the cap import
  message from mds1. caps from mds0 are removed while handling
  the cap import message.
- mds1 exports an inode to mds0. client receives the cap export
  message from mds1. handle_cap_export() adds placeholder caps
  for mds0
- client receives the first cap export message (for exporting
  inode from mds0 to mds1)

Signed-off-by: Yan, Zheng <zheng.z.yan@intel.com>
2014-04-23 10:29:14 +08:00
Yan, Zheng
383d21dc08 client: avoid releasing caps that are being used
To avoid releasing caps that are being used, encode_inode_release()
should send implemented caps to MDS.

Signed-off-by: Yan, Zheng <zheng.z.yan@intel.com>
2014-04-23 10:14:51 +08:00
Samuel Just
a06f8667d2 Merge pull request #1713 from ceph/wip-7439
Wip 7439

Reviewed-by: Sage Weil <sage@inktank.com>
2014-04-22 17:36:20 -07:00
Samuel Just
2182815c67 ReplicatedPG: handle ec pools in mark_all_unfound_lost
Signed-off-by: Samuel Just <sam.just@inktank.com>
2014-04-22 15:43:51 -07:00
Jenkins
6769f4dc88 0.80-rc1 2014-04-22 21:21:45 +00:00
Samuel Just
245923e704 ReplicatedPG: enable mark_unfound_lost delete for ec pools
revert is tricky to implement at this time for ec pools, so
we'll instead just implement delete for ec pools.

Fixes: #7439
Signed-off-by: Samuel Just <sam.just@inktank.com>
2014-04-22 13:37:20 -07:00
Sage Weil
009e874686 qa/workunits/rbd/copy.sh: skip some tests when tiering is enabled
The rados ls bit doesn't work.

Signed-off-by: Sage Weil <sage@inktank.com>
Reviewed-by: Josh Durgin <josh.durgin@inktank.com>
2014-04-22 11:59:26 -07:00
Sage Weil
c0bff439f5 qa/workunits/rbd/copy.sh: fix test
I broke this in commit 9d64ac6608.

Signed-off-by: Sage Weil <sage@inktank.com>
Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
2014-04-22 11:59:23 -07:00
Sage Weil
47866fd2d1 Merge pull request #1691 from ceph/wip-8139
osd_types: pg_t: allow is_split to handle checks for splits prior to the most recent

Reviewed-by: Samuel Just <sam.just@inktank.com>
2014-04-22 12:40:02 -07:00
Samuel Just
5daf53859c ECBackend: use std::swap for boost::optional
Reviewed-by: Sage Weil <sage@inktank.com>
Signed-off-by: Samuel Just <sam.just@inktank.com>
2014-04-22 11:25:53 -07:00
Yehuda Sadeh
6cb5ce86cf Merge pull request #1710 from ceph/wip-coverity
a couple coverity fixes

Reviewed-by: Yehuda Sadeh <yehuda@inktank.com>
2014-04-22 09:02:33 -07:00
Sage Weil
f244109cb7 Merge pull request #1711 from ceph/wip-coverity-respawn
mds: make strncpy in ::respawn safer

Reviewed-by: Sage Weil <sage@inktank.com>
2014-04-22 08:37:21 -07:00
John Spray
cac15c7d8b mds: make strncpy in ::respawn safer
Previous code assumed null terminated argv[0]
was not longer than PATH_MAX and the resulting
strncpy was not strictly safe.

Modify the bounds to ensure that copy will not
result in an unterminated string if argv[0]
is oversized.

Signed-off-by: John Spray <john.spray@inktank.com>
2014-04-22 16:31:27 +01:00
Sage Weil
b4eb502508 osd/osd_types: RWState: initialize snaptrimmer_write_marker
** CID 1204295:  Uninitialized scalar field  (UNINIT_CTOR)
/osd/osd_types.h: 2716 in ObjectContext::RWState::RWState()()

Signed-off-by: Sage Weil <sage@inktank.com>
2014-04-22 08:29:58 -07:00
Sage Weil
4e5f442028 osdc/Objecter: drop unused field
This as missed by 860d72770c.

** CID 1204296:  Uninitialized scalar field  (UNINIT_CTOR)
/osdc/Objecter.h: 1165 in Objecter::Op::Op(const object_t &, const
object_locator_t &, std::vector<OSDOp, std::allocator<OSDOp>> &, int, Context *,
Context *, unsigned long *)()
/osdc/Objecter.h: 1165 in Objecter::Op::Op(const object_t &, const
object_locator_t &, std::vector<OSDOp, std::allocator<OSDOp>> &, int, Context *,
Context *, unsigned long *)()

Signed-off-by: Sage Weil <sage@inktank.com>
2014-04-22 08:28:52 -07:00
Sage Weil
124a663a0b doc/release-notes: a bit of prose about firefly
Signed-off-by: Sage Weil <sage@inktank.com>
2014-04-22 08:27:35 -07:00
Sage Weil
18aded2ed4 osd/osd_types: pg_interval_t: include primaries in operator<<
Also make up vs acting explicit.

Signed-off-by: Sage Weil <sage@inktank.com>
2014-04-21 21:26:26 -07:00
Sage Weil
931ae6b8a0 osd/osd_types: pg_interval_t: include up_primary in pg_interval_t
Nothing uses this, but it triggers a new interval, which makes it confusing
when it is not recording in the interval itself.  Let's add it now.

Signed-off-by: Sage Weil <sage@inktank.com>
2014-04-21 21:26:26 -07:00
Sage Weil
66170f394d osd/osd_types: pg_interval_t: dump primary
Signed-off-by: Sage Weil <sage@inktank.com>
2014-04-21 21:26:26 -07:00
Sage Weil
000233f732 osd: change in up set primary constitutes a peering interval change
In several places, a change in the up_primary triggers a new peering
interval, but the palces that actually generate the new past intervals,
including check_new_interval(), did not enforce that.  This becomes
somewhat obvious when you see that those callers are ignoring the
up_primary output argument for pg_to_up_acting_osds().

Fix this by adding arguments to check_new_interval and fixing the callers
to pass them in properly.  Add a unit test case to verify this.

Note that the past interval struct itself does not record who the
up_primary was; possibly it should.

Fixes: #8139
Signed-off-by: Sage Weil <sage@inktank.com>
2014-04-21 21:26:25 -07:00
Sage Weil
5562e26e65 osd: use parent pgid (as appropriate) in generate_past_intervals()
Feed in the ancestor pg_t (if any) when we are looking at intervals for
previous maps that may have preceded a recent split.

Fixes: #8139
Signed-off-by: Sage Weil <sage@inktank.com>
2014-04-21 21:26:07 -07:00
Sage Weil
6230146238 Merge pull request #1651 from enovance/wip-brag
Few bug fixes in ceph-brag

Reviewed-by: Sage Weil <sage@inktank.com>
2014-04-21 20:49:43 -07:00
Sage Weil
025ab9f47b doc/release-notes: v0.80
Signed-off-by: Sage Weil <sage@inktank.com>
2014-04-21 18:20:56 -07:00
Josh Durgin
c80f128c12 Merge pull request #1707 from ceph/wip-rbd-test
rbd: fix tests for cache pools

Reviewed-by: Josh Durgin <josh.durgin@inktank.com>
2014-04-21 16:53:35 -07:00
Sage Weil
a80e66f932 qa/workunit/rbd/import_export.sh: skip list-objects tests with tiering
Listing objects isn't reliable with cache pools; skip that part of the
test if we see that rbd has tiering enabled.

Signed-off-by: Sage Weil <sage@inktank.com>
2014-04-21 16:47:10 -07:00
Sage Weil
9d64ac6608 qa/workunit/rbd/copy.sh: do not delete/recreate rbd pool
Among other things, it breaks when tiering is enabled.

Signed-off-by: Sage Weil <sage@inktank.com>
2014-04-21 16:26:23 -07:00
John Wilkins
c3833d7c41 doc: Fixed syntax to include 'pool'.
Signed-off-by: John Wilkins <john.wilkins@inktank.com>
2014-04-21 15:43:23 -07:00
Samuel Just
8620bd2f5d PG::PriorSet: consider lost osds in up_now for pcontdec
Otherwise, the pg will remain down even as osds are marked lost.

Signed-off-by: Samuel Just <sam.just@inktank.com>
2014-04-21 15:31:54 -07:00
Samuel Just
f44e2c82e1 Merge pull request #1703 from ceph/wip-7942
Wip 7942

Reviewed-by: Sage Weil <sage@inktank.com>
2014-04-21 15:13:22 -07:00
Samuel Just
95394b60b8 ReplicatedPG::do_op: check for blocked snapset obj
Otherwise, we might use an invalid snapset in find_object_context.

Signed-off-by: Samuel Just <sam.just@inktank.com>
2014-04-21 15:11:15 -07:00
Samuel Just
8259d87493 ReplicatedPG: in trim, grab w locks on obc and snapset_obc
Signed-off-by: Samuel Just <sam.just@inktank.com>
2014-04-21 15:11:12 -07:00
Samuel Just
0d5a539358 ReplicatedPG: if we get ENOENT on clone, remove clone from snapset
Fixes: #7916
Signed-off-by: Samuel Just <sam.just@inktank.com>
2014-04-21 15:11:04 -07:00
Samuel Just
f3df50188b ReplicatedPG: do not create whiteout clones
First, make_writeable treats whiteout heads like snapdir for
cloning purposes.  Second, to ensure that we send the correct
deletes on flush to the backing pool, we instead use oi.snaps
on any clone we are flushing to infer the snaps during which
head did not exist and send a delete as appropriate prior to
the copy_from.

Normally, we'd have a problem if the delete and the copy_from
completed, but an interval change intervened before the dirty
flag was cleared since we'd end up re-deleting the object.
To avoid that, we use the CEPH_OSD_FLAG_ORDERSNAP flag.

Additionally, we will use the correct snap_seq on the delete
or flush as appropriate to ensure that the previous clone
gets created with the same clone id as in the cache pool.

Fixes: #7942
Signed-off-by: Samuel Just <sam.just@inktank.com>
2014-04-21 15:11:04 -07:00
Samuel Just
caa63565dd ReplicatedPG,rados: add CEPH_OSD_[COPY_FROM]_MAP_SNAP_TO_CLONE
When promoting a clone, we want to use the provided snapid to specify
specify the clone id directly.

Signed-off-by: Samuel Just <sam.just@inktank.com>
2014-04-21 15:11:01 -07:00
Sage Weil
bd39ecd610 Merge pull request #1705 from ceph/wip-8124
Wip 8124

Reviewed-by: Sage Weil <sage@inktank.com>
2014-04-21 14:28:43 -07:00
Sage Weil
2cb0bac697 qa/workunits/cephtool/test.sh: make set pg_num test non-racy
Loop while the pool is creating.

Signed-off-by: Sage Weil <sage@inktank.com>
Reviewed-by: Greg Farnum <greg@inktank.com>
2014-04-21 14:18:21 -07:00