Commit Graph

32163 Commits

Author SHA1 Message Date
Sage Weil
9987e486ad Merge pull request #1424 from fractalcat/thread-safety-doc-update
rados_connect not thread-safe when using nss (documentation)

Reviewed-by: Sage Weil <sage@inktank.com>
2014-03-11 21:38:40 -07:00
Sage Weil
e3f8dd03e8 Merge pull request #1419 from ceph/wip-doc-prereq
doc: update build prerequisites
2014-03-11 21:30:07 -07:00
Sage Weil
004bf3b20a Merge pull request #1415 from ceph/wip-build-doc
doc: release-process documentation updates

Reviewed-by: Sage Weil <sage@inktank.com>
2014-03-11 21:29:53 -07:00
Sage Weil
b70db7e735 Merge remote-tracking branch 'gh/firefly' 2014-03-11 19:20:27 -07:00
Sage Weil
bfbfcf8490 Merge pull request #1422 from salehe/docfix-1
rados.py: fix typo in Ioctx::read() docstring
2014-03-11 19:04:40 -07:00
Sage Weil
a890ef0928 Merge pull request #1432 from ceph/wip-7687
rgw: don't overwrite bucket entry data when syncing user stats

Reviewed-by: Sage Weil <sage@inktank.com>
2014-03-11 18:23:14 -07:00
Yehuda Sadeh
d5737107a1 rgw: don't overwrite bucket entry data when syncing user stats
Fixes: #7687
When syncing user bucket stats we overwritten the entire entry with the
passed in entry. We should only look at the stats portion, and not
overwrite the rest (which contains bucket creation time).

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
2014-03-11 18:19:44 -07:00
Sage Weil
d72c2bbccb Merge pull request #1400 from ceph/wip-hint-tests
wip-hint-tests

Reviewed-by: Sage Weil <sage@inktank.com>
2014-03-11 18:09:54 -07:00
Sage Weil
2fbd77206c qa/workunits/cephtool/test.sh: fix thrash (more)
If I have to touch this again I will remove it.  Ugh.  This time,

ubuntu@teuthology:/var/lib/teuthworker/archive/teuthology-2014-03-11_02:30:01-rados-firefly-distro-basic-plana/125922

hit NXIO a few lines down because one of the OSDs was still down.

Signed-off-by: Sage Weil <sage@inktank.com>
2014-03-11 17:03:23 -07:00
Sage Weil
a459c4e2ed Merge pull request #1417 from ceph/wip-7663
Wip 7663

Reviewed-by: Sage Weil <sage@inktank.com>
2014-03-11 16:38:28 -07:00
Sage Weil
0b31cf48f2 Merge pull request #1416 from ceph/wip-div
More log handling fixes

Reviewed-by: Sage Weil <sage@inktank.com>
2014-03-11 16:05:12 -07:00
Sage Weil
64a6b26b1a doc/release-notes: fill in some firefly history
Signed-off-by: Sage Weil <sage@inktank.com>
2014-03-11 16:02:17 -07:00
Sage Weil
f4196cc3e1 doc/release-notes: firefly draft release notes
Some updates; still incomplete.

Signed-off-by: Sage Weil <sage@inktank.com>
2014-03-11 16:02:17 -07:00
Sage Weil
24774a8165 osd/ReplicatedPG: fix typo
This is the object count, not the dirty object count.  Broken by
00bf3b5674.

Reported-by: Greg Farnum <greg@inktank.com>
Signed-off-by: Sage Weil <sage@inktank.com>
2014-03-11 12:15:38 -07:00
Sage Weil
28a1d77ac0 Merge pull request #1430 from ceph/wip-7674
osd/ReplicatedPG: do not include hit_set objects in full calculation

Reviewed-by: Samuel Just <sam.just@inktank.com>
2014-03-11 11:43:35 -07:00
Sage Weil
00bf3b5674 osd/ReplicatedPG: do not include hit_set objects in full calculation
If we have a low target and there are hit_set objects (which cannot be
evicted), we can get stuck in a full state and never get out of it.

Fixes: #7674
Signed-off-by: Sage Weil <sage@inktank.com>
2014-03-11 10:53:39 -07:00
Sage Weil
f57121ac4d Merge pull request #1418 from ceph/wip-7672
PG::choose_acting: filter CRUSH_ITEM_NONE out of have

Reviewed-by: Sage Weil <sage@inktank.com>
2014-03-11 10:23:04 -07:00
Sage Weil
18d80656bb Merge pull request #1429 from ceph/wip-7592-final
Wip 7592 final

Reviewed-by: Sage Weil <sage@inktank.com>
2014-03-11 10:18:59 -07:00
Sage Weil
9df52611ca Merge pull request #1428 from ceph/wip-is_down-boolean
OSDMap: clarify is_{down,in}() definitions

Reviewed-by: Sage Weil <sage@inktank.com>
2014-03-11 10:04:41 -07:00
Sage Weil
59834d60c4 Merge pull request #1410 from ceph/wip-flock
mds: fix owner check of file lock

Reviewed-by: Sage Weil <sage@inktank.com>
2014-03-11 10:00:48 -07:00
Sage Weil
0752f284a9 Merge pull request #1385 from ceph/wip-nfs-export
mds: introduce LOOKUPNAME MDS request

Reviewed-by: Sage Weil <sage@inktank.com>
2014-03-11 09:59:33 -07:00
David Zafman
1836b6c7d9 osd: hit_set_persist(): Verify all objects aren't degraded
Fixes: #7592

Signed-off-by: David Zafman <david.zafman@inktank.com>
2014-03-11 09:51:51 -07:00
Ilya Dryomov
406ff0b711 OSDMap: clarify is_{down,in}() definitions
Make it clear that is_down() == !is_up() and is_in() == !is_out().
This is not a functional change.

Signed-off-by: Ilya Dryomov <ilya.dryomov@inktank.com>
2014-03-11 18:11:38 +02:00
Sharif Olorin
377c919088 rados_connect not thread-safe when using nss (documentation)
I'm not sure whether rados_connect is expected to be threadsafe or not,
so this is just a documentation patch rather than a fix; I'd appreciate
your opinion on whether this is expected behaviour or not.

The race condition is in the call to ceph::crypto::init when called by
common_init_finish, the issue being that it calls NSS_NoDB_Init (not
threadsafe) without locking. It can be reproduced (probabilistically) by
calling rados_connect on different rados_t objects simultaneously, due
to NSS_NoDB_Init's use of PR_CallOnce in nspr (which keeps global state,
and while PR_CallOnce is intended as a locking function, the locking
itself isn't thread-safe, and can pass PR_Lock a null pointer).

The observed behaviour is a segfault on calling rados_connect.
Backtrace, for reference:

    secmodName=secmodName@entry=0x7ffff4f64817 "", updateDir=updateDir@entry=0x7ffff4f64817 "", updCertPrefix=updCertPrefix@entry=0x7ffff4f64817 "",
    updKeyPrefix=updKeyPrefix@entry=0x7ffff4f64817 "", updateID=updateID@entry=0x7ffff4f64817 "", updateName=updateName@entry=0x7ffff4f64817 "",
    initContextPtr=initContextPtr@entry=0x0, initParams=initParams@entry=0x0, readOnly=readOnly@entry=1, noCertDB=noCertDB@entry=1, noModDB=noModDB@entry=1,
    forceOpen=forceOpen@entry=1, noRootInit=noRootInit@entry=1, optimizeSpace=optimizeSpace@entry=1, noSingleThreadedModules=noSingleThreadedModules@entry=0,
    allowAlreadyInitializedModules=allowAlreadyInitializedModules@entry=0, dontFinalizeModules=dontFinalizeModules@entry=0) at nssinit.c:551

Signed-off-by: Sharif Olorin <sio@tesser.org>
2014-03-11 21:23:45 +11:00
Mohammad Salehe
fa30eb5d56 rados.py: fix typo in Ioctx::read() docstring
Signed-off-by: Mohammad Salehe <salehe+dev@gmail.com>
2014-03-11 12:02:12 +03:30
Warren Usui
1249b0bd76 Use pgrep radosgw to determine if rados gateway is running.
Fixes: 7528
Reviewed-by: Yehuda Sadeh <yehuda@inktank.com>
Signed-off-by: Warren Usui <warren.usui@inktank.com>
(cherry picked from commit 5b88856cd2)
2014-03-10 20:40:52 -07:00
Warren Usui
745f72c5c2 Fixed get_status() to find client.radosgw fields inside of ps output.
Fixes: 7375
Reviewed-by: Yehuda Sadeh <yehuda@inktank.com>
Signed-off-by: Warren Usui <warren.usui@inktank.com>
(cherry picked from commit 8020dcf779)
2014-03-10 20:40:41 -07:00
Warren Usui
880bc3a536 Fix get_status() to find client.rados text inside of ps command results.
Added port (fixed value for right now in teuthology) to hostname.
Fixes: 7374
Reviewed-by: Yehuda Sadeh <yehuda@inktank.com>
Signed-off-by: Warren Usui <warren.usui@inktank.com>
(cherry picked from commit 8200b8a025)
2014-03-10 20:40:07 -07:00
David Zafman
fbd9c15460 osd: Remove unused checkpoint code
Signed-off-by: David Zafman <david.zafman@inktank.com>
2014-03-10 19:53:26 -07:00
Yan, Zheng
d3e3df7ad7 mds: fix owner check of file lock
flock and posix lock do not use process ID as owner identifier.
The process ID of who holds the lock is just for F_GETLK fcntl(2).
For linux kernel, File lock's owner identifier is the file pointer
through which the lock is requested.

The fix is do not take the 'pid_namespace' into consideration when
checking conflict locks. Also rename the 'pid' fields of struct
ceph_mds_request_args and struct ceph_filelock to 'owner', rename
'pid_namespace' fields to 'pid'.

The kclient counterpart of this patch modifies the flock code to
assign the file pointer to the 'owner' field of lock message. It
also set the most significant bit of the 'owner' field. We can use
that bit to distinguish between old and new clients.

Signed-off-by: Yan, Zheng <zheng.z.yan@intel.com>
2014-03-11 09:45:43 +08:00
Sage Weil
ccf9a7459c Merge pull request #1310 from ceph/wip-doc-documenting-ceph
Wip doc documenting ceph

Reviewed-by: Sage Weil <sage@inktank.com>
2014-03-10 16:13:08 -07:00
Samuel Just
8a72de3e88 ReplicatedPG: adjust pending_attrs correctly in copy_from
Otherwise, subsequent reads might not get the correct cached attrs.

Fixes: #7663
Signed-off-by: Samuel Just <sam.just@inktank.com>
2014-03-10 16:03:37 -07:00
Samuel Just
6669e4d69e ReplicatedPG: _delete_head should adjust pending_attrs
We need the old attr_cache in make_writeable for the clone,
so make the changes to pending_attrs.

Fixes: #7663
Signed-off-by: Samuel Just <sam.just@inktank.com>
2014-03-10 16:03:29 -07:00
Samuel Just
60c1b9a578 ReplicatedPG: use pending_attrs in rollback
Otherwise, we won't have the correct attr_cache in
make_writeable for the clone.

Fixes: #7663
Signed-off-by: Samuel Just <sam.just@inktank.com>
2014-03-10 16:02:41 -07:00
John Wilkins
d7c4d6abc2 doc: Added init caps to Signed-off-by: and Fixes:
Signed-off-by: John Wilkins <john.wilkins@inktank.com>
2014-03-10 15:58:57 -07:00
Ken Dreyer
2b284077c9 doc: update build prerequisites
Based on WIP branch by Gary Lowell <gary.lowell@inktank.com>.

Signed-off-by: Ken Dreyer <ken.dreyer@inktank.com>
2014-03-10 16:54:22 -06:00
John Wilkins
7ac98b2aff doc: Updated sign-off by to sign-off-by
sign-off-by: John Wilkins <john.wilkins@inktank.com>
2014-03-10 15:45:01 -07:00
Ken Dreyer
2e420f9d4a doc: rm duplicate info from release-process
The "just push the new tag" bit is already done in the list of commands
above. Remove this piece, since it's duplicated by the "git push"
command above.

The ceph-deploy and backports-sections were empty. Remove them.
2014-03-10 16:06:48 -06:00
Ken Dreyer
52a2d6923e doc: fix reST formatting in release-process
Signed-off-by: Ken Dreyer <ken.dreyer@inktank.com>
2014-03-10 15:14:55 -06:00
Gary Lowell
bb737117b3 doc: update release-process for packages
New script to sign rpms in the repo and create the indexes, and
some description of additional packages that might need to be added.

Signed-off-by: Gary Lowell  <gary.lowell@inktank.com>
Reviewed-by: Ken Dreyer <ken.dreyer@inktank.com>
2014-03-10 15:14:34 -06:00
Gary Lowell
dd5a378d43 doc: misc updates for release-process
Signed-off-by: Gary Lowell  <gary.lowell@inktank.com>
Reviewed-by: Ken Dreyer <ken.dreyer@inktank.com>
2014-03-10 15:14:21 -06:00
Samuel Just
8de8819353 PG::choose_acting: filter CRUSH_ITEM_NONE out of have
Fixes: #7672
Signed-off-by: Samuel Just <sam.just@inktank.com>
2014-03-10 13:36:39 -07:00
John Wilkins
0f7d954b19 doc: Updated pull request with suggested changes.
signed-off by: John Wilkins <john.wilkins@inktank.com>
2014-03-10 11:58:53 -07:00
John Wilkins
7e43823faf doc: Fixed typo.
Signed-off-by: John Wilkins <john.wilkins@inktank.com>
2014-03-10 10:07:44 -07:00
Stephan Renatus
aba5b7cccb rbdmap: bugfix upstart script
It seems like the upstart script is lacking a little behind [the initscript](https://github.com/ceph/ceph/blob/master/src/init-rbdmap#L44-L49); however, this bugfix makes it actually do what it should do.

Before, the bug made the job just ignore all parameters, with the following error in /var/log/upstart/rbdmap.log:

```
rbd map volumes/volume-one
rbd: add failed: (22) Invalid argument
```

Signed-off-by: Stephan Renatus <s.renatus@x-ion.de>
Signed-off-by: Sage Weil <sage@inktank.com>
2014-03-10 08:54:37 -07:00
Samuel Just
83731a75d7 ReplicatedPG::finish_ctx: clear object_info if !obs.exists
Otherwise, we see a different object_info_t depending on whether the
transaction deleting the object clears before another op recreating it appears.
In particular, we use oi.version to set the prior_version on the log entries in
finish_ctx.  If the oi is allowed to stick around the recreation log event will
have a prior version of the deletion event when it should have a prior version
of eversion_t().

Fixes: #7655
Signed-off-by: Samuel Just <sam.just@inktank.com>
Reviewed-by: Sage Weil <sage@inktank.com>
2014-03-09 12:22:12 -07:00
Sage Weil
40dc3f8b2c Merge pull request #1405 from ceph/wip-7575
osd: Add hit_set_flushing to track current flushes and prevent races

Reviewed-by: Sage Weil <sage@inktank.com>
Reviewed-by: Samuel Just <sam.just@inktank.com>
2014-03-09 12:21:35 -07:00
Danny Al-Gaaf
a7afa1453b config.cc: add debug_ prefix to subsys logging levels
Add debug_ prefix also for 'ceph --admin-daemon *.asok config show'
as already done e.g. by 'ceph-osd --show-config'.

Fixes: #7602

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
Reviewed-by: Sage Weil <sage@inktank.com>
2014-03-09 10:32:39 -07:00
Ilya Dryomov
55c23a1a82 qa: add script for testing rados allocation hint
Signed-off-by: Ilya Dryomov <ilya.dryomov@inktank.com>
2014-03-09 19:28:22 +02:00
Sage Weil
2474e5322d Merge pull request #1408 from ceph/wip-da-fix-doc
Fixes and updates for doc

Reviewed-by: Sage Weil <sage@inktank.com>
2014-03-09 09:56:18 -07:00