]> git.apps.os.sepia.ceph.com Git - ceph.git/log
ceph.git
11 years agoMerge pull request #1425 from ceph/wip-rbd-fuse-enumerate
Sage Weil [Wed, 12 Mar 2014 04:41:53 +0000 (21:41 -0700)]
Merge pull request #1425 from ceph/wip-rbd-fuse-enumerate

rbd-fuse: fix enumerate_images() image names buffer size issue

Reviewed-by: Sage Weil <sage@inktank.com>
11 years agoMerge pull request #1409 from enovance/wip-brag
Sage Weil [Wed, 12 Mar 2014 04:25:25 +0000 (21:25 -0700)]
Merge pull request #1409 from enovance/wip-brag

ceph-brag enhancements

Reviewed-by: Sage Weil <sage@inktank.com>
11 years agoMerge pull request #1427 from ceph/wip-6889
Sage Weil [Wed, 12 Mar 2014 02:23:27 +0000 (19:23 -0700)]
Merge pull request #1427 from ceph/wip-6889

rgw: don't log system requests in usage log

Reviewed-by: Sage Weil <sage@inktank.com>
11 years agoMerge pull request #1432 from ceph/wip-7687
Sage Weil [Wed, 12 Mar 2014 01:23:14 +0000 (18:23 -0700)]
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>
11 years agorgw: don't overwrite bucket entry data when syncing user stats 1432/head
Yehuda Sadeh [Wed, 12 Mar 2014 01:19:44 +0000 (18:19 -0700)]
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>
11 years agoMerge pull request #1400 from ceph/wip-hint-tests
Sage Weil [Wed, 12 Mar 2014 01:09:54 +0000 (18:09 -0700)]
Merge pull request #1400 from ceph/wip-hint-tests

wip-hint-tests

Reviewed-by: Sage Weil <sage@inktank.com>
11 years agoqa/workunits/cephtool/test.sh: fix thrash (more)
Sage Weil [Wed, 12 Mar 2014 00:03:23 +0000 (17:03 -0700)]
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>
11 years agoMerge pull request #1417 from ceph/wip-7663
Sage Weil [Tue, 11 Mar 2014 23:38:28 +0000 (16:38 -0700)]
Merge pull request #1417 from ceph/wip-7663

Wip 7663

Reviewed-by: Sage Weil <sage@inktank.com>
11 years agoMerge pull request #1416 from ceph/wip-div
Sage Weil [Tue, 11 Mar 2014 23:05:12 +0000 (16:05 -0700)]
Merge pull request #1416 from ceph/wip-div

More log handling fixes

Reviewed-by: Sage Weil <sage@inktank.com>
11 years agoosd/ReplicatedPG: fix typo
Sage Weil [Tue, 11 Mar 2014 19:14:49 +0000 (12:14 -0700)]
osd/ReplicatedPG: fix typo

This is the object count, not the dirty object count.  Broken by
00bf3b56743830a4a9c5d6765946a4e68f530c57.

Reported-by: Greg Farnum <greg@inktank.com>
Signed-off-by: Sage Weil <sage@inktank.com>
11 years agoMerge pull request #1430 from ceph/wip-7674
Sage Weil [Tue, 11 Mar 2014 18:43:35 +0000 (11:43 -0700)]
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>
11 years agoosd/ReplicatedPG: do not include hit_set objects in full calculation 1430/head
Sage Weil [Tue, 11 Mar 2014 17:49:47 +0000 (10:49 -0700)]
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>
11 years agoMerge pull request #1418 from ceph/wip-7672
Sage Weil [Tue, 11 Mar 2014 17:23:04 +0000 (10:23 -0700)]
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>
11 years agoMerge pull request #1429 from ceph/wip-7592-final
Sage Weil [Tue, 11 Mar 2014 17:18:59 +0000 (10:18 -0700)]
Merge pull request #1429 from ceph/wip-7592-final

Wip 7592 final

Reviewed-by: Sage Weil <sage@inktank.com>
11 years agoMerge pull request #1410 from ceph/wip-flock
Sage Weil [Tue, 11 Mar 2014 17:00:48 +0000 (10:00 -0700)]
Merge pull request #1410 from ceph/wip-flock

mds: fix owner check of file lock

Reviewed-by: Sage Weil <sage@inktank.com>
11 years agoMerge pull request #1385 from ceph/wip-nfs-export
Sage Weil [Tue, 11 Mar 2014 16:59:33 +0000 (09:59 -0700)]
Merge pull request #1385 from ceph/wip-nfs-export

mds: introduce LOOKUPNAME MDS request

Reviewed-by: Sage Weil <sage@inktank.com>
11 years agoosd: hit_set_persist(): Verify all objects aren't degraded 1429/head
David Zafman [Tue, 11 Mar 2014 02:54:57 +0000 (19:54 -0700)]
osd: hit_set_persist(): Verify all objects aren't degraded

Fixes: #7592
Signed-off-by: David Zafman <david.zafman@inktank.com>
11 years agorgw: don't log system requests in usage log 1427/head
Yehuda Sadeh [Fri, 22 Nov 2013 23:41:49 +0000 (15:41 -0800)]
rgw: don't log system requests in usage log

Fixes: 6889
System requets should not be logged in the usage log.

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
11 years agorbd-fuse: fix enumerate_images() image names buffer size issue 1425/head
Ilya Dryomov [Tue, 11 Mar 2014 14:00:37 +0000 (16:00 +0200)]
rbd-fuse: fix enumerate_images() image names buffer size issue

Image names buffer is fixed at 1024.  This turns out to be not enough:
there are at least two "rbd-fuse rbd_list: error %d Numerical result
out of range" reports on the ML.  Fix it by calling rbd_list() twice to
first get the expected buffer size.  Also, get rid of the memory leak
and tweak the error message while at it.

Signed-off-by: Ilya Dryomov <ilya.dryomov@inktank.com>
11 years agoUse pgrep radosgw to determine if rados gateway is running.
Warren Usui [Sat, 1 Mar 2014 05:43:31 +0000 (21:43 -0800)]
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 5b88856cd25a13842fa8ad0699b84fbdfbc13694)

11 years agoFixed get_status() to find client.radosgw fields inside of ps output.
Warren Usui [Fri, 21 Feb 2014 05:07:53 +0000 (21:07 -0800)]
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 8020dcf7791a0f459bae5e8a77d70ff1dc9c60bc)

11 years agoFix get_status() to find client.rados text inside of ps command results.
Warren Usui [Fri, 21 Feb 2014 05:11:45 +0000 (21:11 -0800)]
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 8200b8a02511e367370d33cb74c3d45ef85fca31)

11 years agoosd: Remove unused checkpoint code
David Zafman [Mon, 10 Mar 2014 20:35:19 +0000 (13:35 -0700)]
osd: Remove unused checkpoint code

Signed-off-by: David Zafman <david.zafman@inktank.com>
11 years agomds: fix owner check of file lock 1410/head
Yan, Zheng [Sun, 9 Mar 2014 23:36:14 +0000 (07:36 +0800)]
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>
11 years agoReplicatedPG: adjust pending_attrs correctly in copy_from 1417/head
Samuel Just [Sun, 9 Mar 2014 18:43:57 +0000 (11:43 -0700)]
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>
11 years agoReplicatedPG: _delete_head should adjust pending_attrs
Samuel Just [Sun, 9 Mar 2014 18:41:48 +0000 (11:41 -0700)]
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>
11 years agoReplicatedPG: use pending_attrs in rollback
Samuel Just [Sun, 9 Mar 2014 18:43:00 +0000 (11:43 -0700)]
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>
11 years agoPG::choose_acting: filter CRUSH_ITEM_NONE out of have 1418/head
Samuel Just [Mon, 10 Mar 2014 20:36:37 +0000 (13:36 -0700)]
PG::choose_acting: filter CRUSH_ITEM_NONE out of have

Fixes: #7672
Signed-off-by: Samuel Just <sam.just@inktank.com>
11 years agorbdmap: bugfix upstart script
Stephan Renatus [Mon, 10 Mar 2014 14:17:41 +0000 (15:17 +0100)]
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>
11 years agoMerge branch 'master' of https://github.com/enovance/ceph-brag into firefly 1409/head
Babu Shanmugam [Mon, 10 Mar 2014 06:12:58 +0000 (06:12 +0000)]
Merge branch 'master' of https://github.com/enovance/ceph-brag into firefly

11 years agoRemoved all regular expression parsing and used '-f json' instead
Babu Shanmugam [Mon, 10 Mar 2014 06:11:03 +0000 (06:11 +0000)]
Removed all regular expression parsing and used '-f json' instead

Signed-off-by: Babu Shanmugam <anbu@enovance.com>
11 years agoModified num_bytes attribute in components_count to be a raw integer
Babu Shanmugam [Mon, 10 Mar 2014 04:35:15 +0000 (04:35 +0000)]
Modified num_bytes attribute in components_count to be a raw integer

Signed-off-by: Babu Shanmugam <anbu@enovance.com>
11 years agoReplicatedPG::finish_ctx: clear object_info if !obs.exists
Samuel Just [Fri, 7 Mar 2014 23:54:23 +0000 (15:54 -0800)]
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>
11 years agoMerge pull request #1405 from ceph/wip-7575
Sage Weil [Sun, 9 Mar 2014 19:21:35 +0000 (12:21 -0700)]
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>
11 years agoconfig.cc: add debug_ prefix to subsys logging levels
Danny Al-Gaaf [Thu, 6 Mar 2014 00:23:48 +0000 (01:23 +0100)]
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>
11 years agoqa: add script for testing rados allocation hint 1400/head
Ilya Dryomov [Fri, 7 Mar 2014 15:58:55 +0000 (17:58 +0200)]
qa: add script for testing rados allocation hint

Signed-off-by: Ilya Dryomov <ilya.dryomov@inktank.com>
11 years agoMerge pull request #1408 from ceph/wip-da-fix-doc
Sage Weil [Sun, 9 Mar 2014 16:56:18 +0000 (09:56 -0700)]
Merge pull request #1408 from ceph/wip-da-fix-doc

Fixes and updates for doc

Reviewed-by: Sage Weil <sage@inktank.com>
11 years agoget-involved.rst: update information 1408/head
Danny Al-Gaaf [Sun, 9 Mar 2014 01:18:28 +0000 (02:18 +0100)]
get-involved.rst: update information

Added #ceph-devel IRC channel, more mailing lists, wiki and planet.ceph.com.

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
11 years agoswift/containerops.rst: fix some typos
Danny Al-Gaaf [Sun, 9 Mar 2014 00:02:43 +0000 (01:02 +0100)]
swift/containerops.rst: fix some typos

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
11 years agoradosgw/troubleshooting.rst: s/ceph-osd/OSD/
Danny Al-Gaaf [Sat, 8 Mar 2014 23:58:57 +0000 (00:58 +0100)]
radosgw/troubleshooting.rst: s/ceph-osd/OSD/

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
11 years agoradosgw/config-ref.rst: fix typo
Danny Al-Gaaf [Sat, 8 Mar 2014 23:30:49 +0000 (00:30 +0100)]
radosgw/config-ref.rst: fix typo

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
11 years agosession_authentication.rst: fix some typos
Danny Al-Gaaf [Sat, 8 Mar 2014 23:19:08 +0000 (00:19 +0100)]
session_authentication.rst: fix some typos

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
11 years agorelease-process.rst: fix some typos
Danny Al-Gaaf [Sat, 8 Mar 2014 23:07:39 +0000 (00:07 +0100)]
release-process.rst: fix some typos

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
11 years agodoc: s/osd/OSD/ if not part of a command
Danny Al-Gaaf [Sat, 8 Mar 2014 23:01:40 +0000 (00:01 +0100)]
doc: s/osd/OSD/ if not part of a command

First attempt to unify usage of OSD over rst files.

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
11 years agodoc/dev/logs.rst; fix some typos
Danny Al-Gaaf [Sat, 8 Mar 2014 22:31:11 +0000 (23:31 +0100)]
doc/dev/logs.rst; fix some typos

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
11 years agofilestore-filesystem-compat.rst: fix typo
Danny Al-Gaaf [Sat, 8 Mar 2014 22:25:53 +0000 (23:25 +0100)]
filestore-filesystem-compat.rst: fix typo

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
11 years agocorpus.rst: fix typo
Danny Al-Gaaf [Sat, 8 Mar 2014 22:22:38 +0000 (23:22 +0100)]
corpus.rst: fix typo

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
11 years agoconfig.rst: fix typo
Danny Al-Gaaf [Sat, 8 Mar 2014 22:16:24 +0000 (23:16 +0100)]
config.rst: fix typo

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
11 years agocephx_protocol.rst: fix typo
Danny Al-Gaaf [Sat, 8 Mar 2014 22:11:25 +0000 (23:11 +0100)]
cephx_protocol.rst: fix typo

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
11 years agoarchitecture.rst: fix typos
Danny Al-Gaaf [Sat, 8 Mar 2014 10:27:15 +0000 (11:27 +0100)]
architecture.rst: fix typos

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
11 years agorados: add set-alloc-hint command
Ilya Dryomov [Fri, 7 Mar 2014 15:58:55 +0000 (17:58 +0200)]
rados: add set-alloc-hint command

Set allocation hint for an object.

Signed-off-by: Ilya Dryomov <ilya.dryomov@inktank.com>
11 years agorados/operations/control.rst: fix typo
Danny Al-Gaaf [Sat, 8 Mar 2014 10:06:50 +0000 (11:06 +0100)]
rados/operations/control.rst: fix typo

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
11 years agoBroke down sysinfo's format into a histogram with a value and count
Babu Shanmugam [Sat, 8 Mar 2014 05:17:13 +0000 (05:17 +0000)]
Broke down sysinfo's format into a histogram with a value and count
so that we just see how many of each version/distro/kernel/os/arch/cpu/etc are running

Signed-off-by: Babu Shanmugam <anbu@enovance.com>
11 years agoPGLog::proc_replica_log: select divergent log entries correctly 1416/head
Samuel Just [Sat, 8 Mar 2014 00:51:36 +0000 (16:51 -0800)]
PGLog::proc_replica_log: select divergent log entries correctly

Looking for an entry in olog which matches one of ours might add
extra divergent entries.  Instead, do what merge_log does and
walk back through the auth log looking for an entry in olog.

Fixes: 7657
Signed-off-by: Samuel Just <sam.just@inktank.com>
11 years agoPGLog::_merge_object_divergent_entries: handle missing.have == prior_version
Samuel Just [Sat, 8 Mar 2014 00:50:40 +0000 (16:50 -0800)]
PGLog::_merge_object_divergent_entries: handle missing.have == prior_version

Fixes: #7658
Signed-off-by: Samuel Just <sam.just@inktank.com>
11 years agoTestPGLog: add a test case verifying case where we have the prior_version
Samuel Just [Sat, 8 Mar 2014 00:49:18 +0000 (16:49 -0800)]
TestPGLog: add a test case verifying case where we have the prior_version

Signed-off-by: Samuel Just <sam.just@inktank.com>
11 years agoTestPGLog: check on last_update in run_test_case
Samuel Just [Sat, 8 Mar 2014 00:48:39 +0000 (16:48 -0800)]
TestPGLog: check on last_update in run_test_case

Signed-off-by: Samuel Just <sam.just@inktank.com>
11 years agoTestPGLog::proc_replica_log: call doesn't adjust olog
Samuel Just [Sat, 8 Mar 2014 00:48:11 +0000 (16:48 -0800)]
TestPGLog::proc_replica_log: call doesn't adjust olog

We don't adjust head with proc_replica_log, don't assert that
it's been adjusted.

Signed-off-by: Samuel Just <sam.just@inktank.com>
11 years agoclient: fix Client::getcwd() 1385/head
Yan, Zheng [Thu, 6 Mar 2014 23:12:39 +0000 (07:12 +0800)]
client: fix Client::getcwd()

An recent commit made MDS not include dentry trace in LOOKUPPARENT
reply. It broke Client::getcwd. The fix is change getcwd() to use
LOOKUPNAME MDS request

Signed-off-by: Yan, Zheng <zheng.z.yan@intel.com>
11 years agoMerge remote-tracking branch 'gh/wip-7210' into firefly
Sage Weil [Fri, 7 Mar 2014 23:23:31 +0000 (15:23 -0800)]
Merge remote-tracking branch 'gh/wip-7210' into firefly

Reviewed-by: Sage Weil <sage@inktank.com>
11 years agomds: introduce LOOKUPNAME MDS request
Yan, Zheng [Thu, 6 Mar 2014 07:24:02 +0000 (15:24 +0800)]
mds: introduce LOOKUPNAME MDS request

The new MDS request is used for connecting a given inode to its
parent inode. It allows client to have efficient implementation of
get_rename() NFS export callback.

Signed-off-by: Yan, Zheng <zheng.z.yan@intel.com>
11 years agoqa/workunits/cephtool/test.sh: fix 'osd thrash' test
Sage Weil [Fri, 7 Mar 2014 23:21:30 +0000 (15:21 -0800)]
qa/workunits/cephtool/test.sh: fix 'osd thrash' test

- fix the wait check for osds to come back up
- make sure they get marked back in, too

Signed-off-by: Sage Weil <sage@inktank.com>
Reviewed-by: Dan Mick <dan.mick@inktank.com>
11 years agoMerge pull request #1403 from ceph/wip-7642
Sage Weil [Fri, 7 Mar 2014 23:05:30 +0000 (15:05 -0800)]
Merge pull request #1403 from ceph/wip-7642

mon: fix check for primary-affinity feature bit, and fix a race in similar checks

Reviewed-by: Samuel Just <sam.just@inktank.com>
Reviewed-by: Joao Eduardo Luis <joao.luis@inktank.com>
11 years agomon/OSDMonitor: feature feature check bit arithmetic 1403/head
Sage Weil [Fri, 7 Mar 2014 22:44:42 +0000 (14:44 -0800)]
mon/OSDMonitor: feature feature check bit arithmetic

Make sure all features are present (instead of just any of them).

Signed-off-by: Sage Weil <sage@inktank.com>
11 years agoMerge pull request #1404 from ceph/wip-7652
Sage Weil [Fri, 7 Mar 2014 22:19:58 +0000 (14:19 -0800)]
Merge pull request #1404 from ceph/wip-7652

mon: fix infininte pg create msgs for erasure pools

Reviewed-by: Samuel Just <sam.just@inktank.com>
11 years agomon/PGMap: send pg create messages to primary, not acting[0] 1404/head
Sage Weil [Fri, 7 Mar 2014 22:02:26 +0000 (14:02 -0800)]
mon/PGMap: send pg create messages to primary, not acting[0]

For erasure pools, these may not match.

In the case of #7652, this caused pg_create messages to be send
indefinitely.  register_pg() added it to the list for acting_primary, and
when we got the (non-creating) pg stat update we removed it from the list
for acting[0].

Fixes: #7652
Signed-off-by: Sage Weil <sage@inktank.com>
11 years agomon/PGMonitor: improve debugging on PGMap updates slightly
Sage Weil [Fri, 7 Mar 2014 21:56:31 +0000 (13:56 -0800)]
mon/PGMonitor: improve debugging on PGMap updates slightly

Chasing #7652
Signed-off-by: Sage Weil <sage@inktank.com>
11 years agomon/OSDMonitor: make osdmap feature checks non-racy
Sage Weil [Fri, 7 Mar 2014 21:29:03 +0000 (13:29 -0800)]
mon/OSDMonitor: make osdmap feature checks non-racy

The check for OSD features may race with the boot of an OSD that does not
have the necessary features.  Check the pending info too, and if there is
a missing feature, return -EAGAIN.  In the callers, wait on -EAGAIN.

Signed-off-by: Sage Weil <sage@inktank.com>
11 years agomon/OSDMonitor: prevent set primary-affinity unless all OSDs support it
Sage Weil [Fri, 7 Mar 2014 21:24:04 +0000 (13:24 -0800)]
mon/OSDMonitor: prevent set primary-affinity unless all OSDs support it

Make sure all running OSDs support the feature before we start using it
(even if the config option is on!).

Fixes: #7642
Signed-off-by: Sage Weil <sage@inktank.com>
11 years agoqa: workunits/mon/rbd_snaps_ops.sh: ENOTSUP on snap rm from copied pool 1401/head
Joao Eduardo Luis [Fri, 7 Mar 2014 19:45:50 +0000 (19:45 +0000)]
qa: workunits/mon/rbd_snaps_ops.sh: ENOTSUP on snap rm from copied pool

'rados cppool' copies the contents but that doesn't make the destination
pool an unmanaged snaps pool.  Therefore, we must get an ENOTSUP when
we try to remove an unmanaged snap from a not-unmanaged pool.

Signed-off-by: Joao Eduardo Luis <joao.luis@inktank.com>
11 years agomon: OSDMonitor: don't remove unamanaged snaps from not-unmanaged pools
Joao Eduardo Luis [Fri, 7 Mar 2014 18:25:21 +0000 (18:25 +0000)]
mon: OSDMonitor: don't remove unamanaged snaps from not-unmanaged pools

Although we should allow creating unmanaged snaps on not-unamanaged pools,
as long as those pools don't have any managed snapshots in them, we cannot
allow removal -- because the pool will not have any unmanaged snapshots.

Fixes: 7210
Signed-off-by: Joao Eduardo Luis <joao.luis@inktank.com>
11 years agoosd: Add hit_set_flushing to track current flushes and prevent races 1405/head
David Zafman [Fri, 7 Mar 2014 02:08:46 +0000 (18:08 -0800)]
osd: Add hit_set_flushing to track current flushes and prevent races

When flushing a HitSet track in hit_set_flushing map so that
agent_load_hit_sets() doesn't try to read it too soon.

Fixes: #7575
Signed-off-by: David Zafman <david.zafman@inktank.com>
11 years agoRemoved nw_info from sysinfo
Babu Shanmugam [Fri, 7 Mar 2014 12:49:20 +0000 (12:49 +0000)]
Removed nw_info from sysinfo

Signed-off-by: Babu Shanmugam <anbu@enovance.com>
11 years agoMade crush_types to be a map of type to count, so we can tell how many racks/rows...
Babu Shanmugam [Fri, 7 Mar 2014 06:47:06 +0000 (06:47 +0000)]
Made crush_types to be a map of type to count, so we can tell how many racks/rows/hosts/etc are there

Signed-off-by: Babu Shanmugam <anbu@enovance.com>
11 years agoMerge pull request #1394 from ceph/wip-7610
Sage Weil [Fri, 7 Mar 2014 05:11:25 +0000 (21:11 -0800)]
Merge pull request #1394 from ceph/wip-7610

obj_bencher: allocate contentsChars to object_size, not op_size

Reviewed-by: Sage Weil <sage@inktank.com>
11 years agoMerge pull request #1397 from ceph/wip-7638
Sage Weil [Fri, 7 Mar 2014 04:06:59 +0000 (20:06 -0800)]
Merge pull request #1397 from ceph/wip-7638

ReplicatedPG::trim_object: use old_snaps for rollback

Reviewed-by: Sage Weil <sage@inktank.com>
11 years agoMerge pull request #1398 from ceph/wip-7634
Sage Weil [Fri, 7 Mar 2014 04:05:19 +0000 (20:05 -0800)]
Merge pull request #1398 from ceph/wip-7634

ReplicatedPG: use hobject_t for snapset_contexts map

Reviewed-by: Sage Weil <sage@inktank.com>
11 years agoMerge pull request #1395 from ceph/wip-7637
Samuel Just [Fri, 7 Mar 2014 03:19:12 +0000 (19:19 -0800)]
Merge pull request #1395 from ceph/wip-7637

osd: fix agent thread shutdown

Reviewed-by: Samuel Just <sam.just@inktank.com>
11 years agoosd: fix agent thread shutdown 1395/head
Sage Weil [Fri, 7 Mar 2014 00:12:30 +0000 (16:12 -0800)]
osd: fix agent thread shutdown

We had an old invariant that agent_queue would have at least 1 entry in
it to simplify some other code paths, but it turns out that it is simpler
not to do that.

In particular, this was triggering a failed assertion on shutdown when we
assert that the queue is empty.

Dump offending items on shutdown if they are there, tho, to catch any
future bugs.

Fixes: #7637
Signed-off-by: Sage Weil <sage@inktank.com>
11 years agoMerge pull request #1389 from ceph/wip-firefly-misc
Samuel Just [Thu, 6 Mar 2014 23:51:40 +0000 (15:51 -0800)]
Merge pull request #1389 from ceph/wip-firefly-misc

fix rest tests; fix COLL_MOVE_RENAME dump

Reviewed-by: Samuel Just <sam.just@inktank.com>
11 years agoMerge pull request #1393 from dachary/wip-7072
Sage Weil [Thu, 6 Mar 2014 23:51:15 +0000 (15:51 -0800)]
Merge pull request #1393 from dachary/wip-7072

logrotate: copy/paste daemon list from ceph-*-all-starter.conf

Reviewed-by: Sage Weil <sage@inktank.com>
11 years agologrotate: copy/paste daemon list from *-all-starter.conf 1393/head
Loic Dachary [Thu, 6 Mar 2014 23:07:26 +0000 (00:07 +0100)]
logrotate: copy/paste daemon list from *-all-starter.conf

Each upstart/*-all-starter.conf use the same script to find the list of
daemons and their ids. Copy it over to the corresponding logrotate.conf
script instead of using a less reliable script based on initctl list
output.

If logrotate fails to run initctl reload on a daemon, it will keep
writing to the rotated log file, even after it is deleted and until it
fills the disk. By using the exact same shell snippet as the upstart
scripts used to start the daemon, all of them will be sent the HUP
signal and reopen the log file that was just rotated.

http://tracker.ceph.com/issues/7072 fixes #7072

Signed-off-by: Loic Dachary <loic@dachary.org>
11 years agoMerge pull request #1392 from ceph/wip-7632
Sage Weil [Thu, 6 Mar 2014 23:34:59 +0000 (15:34 -0800)]
Merge pull request #1392 from ceph/wip-7632

ReplicatedPG: consistently use ctx->at_version.version for stashed objec...

Reviewed-by: Sage Weil <sage@inktank.com>
11 years agoMerge pull request #1391 from ceph/wip-7393
Sage Weil [Thu, 6 Mar 2014 23:30:59 +0000 (15:30 -0800)]
Merge pull request #1391 from ceph/wip-7393

ReplicatedPG: clean up num_dirty adjustments

Reviewed-by: Sage Weil <sage@inktank.com>
11 years agoReplicatedPG::trim_object: use old_snaps for rollback 1397/head
Samuel Just [Thu, 6 Mar 2014 22:59:47 +0000 (14:59 -0800)]
ReplicatedPG::trim_object: use old_snaps for rollback

We need to rollback the old value of snaps, not the
new one.

Fixes: #7638
Signed-off-by: Samuel Just <sam.just@inktank.com>
11 years agoReplicatedPG: use hobject_t for snapset_contexts map 1398/head
Samuel Just [Thu, 6 Mar 2014 22:40:11 +0000 (14:40 -0800)]
ReplicatedPG: use hobject_t for snapset_contexts map

Otherwise, two objects with different namespaces but
the same object_t will end up clobbering each other's
contexts.

Fixes: #7634
Signed-off-by: Samuel Just <sam.just@inktank.com>
11 years agoqa/workunits/rest/test.py: do not test 'osd thrash' 1389/head
Sage Weil [Thu, 6 Mar 2014 20:35:19 +0000 (12:35 -0800)]
qa/workunits/rest/test.py: do not test 'osd thrash'

This wreaks havoc on our QA because it marks osds up and down and then
immediately after that we try to scrub and some osds are still down.

Adjust the CLI test to wait for all OSDs to come back up after thrashing.

Signed-off-by: Sage Weil <sage@inktank.com>
11 years agoos/ObjectStore: dump COLL_MOVE_RENAME
Sage Weil [Thu, 6 Mar 2014 21:44:39 +0000 (13:44 -0800)]
os/ObjectStore: dump COLL_MOVE_RENAME

This got missed way back in ef7cffc34f3bad4ffc090361ad9030a47584a3bf
(pre-0.71).

Signed-off-by: Sage Weil <sage@inktank.com>
11 years agoReplicatedPG: consistently use ctx->at_version.version for stashed object 1392/head
Samuel Just [Thu, 6 Mar 2014 16:56:30 +0000 (08:56 -0800)]
ReplicatedPG: consistently use ctx->at_version.version for stashed object

Otherwise, two ops might end up using the same version number.

Fixes: #7632
Signed-off-by: Samuel Just <sam.just@inktank.com>
11 years agoReplicatedPG: clean up num_dirty adjustments 1391/head
Samuel Just [Thu, 6 Mar 2014 20:05:07 +0000 (12:05 -0800)]
ReplicatedPG: clean up num_dirty adjustments

Previously, a _delete_head() followed by a recreation on an object in
the same transaction would result in num_dirty being decremented in
_delete_head() without the flag being cleared.  make_writeable() would
then see exists and was_dirty and therefore not increment num_dirty
resulting in a mismatch.  Rather than trying to maintain the num_dirty
number in _delete_head(), rollback_to(), and make_writeable(), it seems
simpler to do the adjustment once in make_writeable based on undirty,
ctx->obc->obs.oi, and ctx->new_obs->oi.

Fixes: 7393
Signed-off-by: Samuel Just <sam.just@inktank.com>
11 years agoobj_bencher: allocate contentsChars to object_size, not op_size 1394/head
Samuel Just [Thu, 6 Mar 2014 19:12:24 +0000 (11:12 -0800)]
obj_bencher: allocate contentsChars to object_size, not op_size

Otherwise, our attempt to sanitize object_size bytes of
data.object_contents will be doomed to memory corruption.

Fixes: #7610
Signed-off-by: Samuel Just <sam.just@inktank.com>
11 years agoMerge pull request #1386 from ceph/wip-7624
Sage Weil [Thu, 6 Mar 2014 19:01:30 +0000 (11:01 -0800)]
Merge pull request #1386 from ceph/wip-7624

ReplicatedPG: ensure clones are readable after find_object_context

Reviewed-by: Sage Weil <sage@inktank.com>
11 years agoMerge pull request #1387 from ceph/wip-7618
Sage Weil [Thu, 6 Mar 2014 18:59:47 +0000 (10:59 -0800)]
Merge pull request #1387 from ceph/wip-7618

ReplicatedPG::wait_for_degraded_object: only recover if found

Reviewed-by: Sage Weil <sage@inktank.com>
11 years agoMerge pull request #1379 from ceph/wip-7562
Gregory Farnum [Thu, 6 Mar 2014 18:44:42 +0000 (10:44 -0800)]
Merge pull request #1379 from ceph/wip-7562

mon: make quorum list (by name) be in quorum order

Reviewed-by: Greg Farnum <greg@inktank.com>
11 years agoReplicatedPG: ensure clones are readable after find_object_context 1386/head
Samuel Just [Thu, 6 Mar 2014 01:39:42 +0000 (17:39 -0800)]
ReplicatedPG: ensure clones are readable after find_object_context

We only get EAGAIN if the object is missing.  We also need the
clone to be readable if we are reading it.

The other find_object_context callers already require !degraded.

Fixes: #7624
Signed-off-by: Samuel Just <sam.just@inktank.com>
11 years ago1. Removed name of the pool from pool_metadata
Babu Shanmugam [Thu, 6 Mar 2014 08:39:20 +0000 (08:39 +0000)]
1. Removed name of the pool from pool_metadata
2. Included pool type in pool_metadata
3. Renamed rep_size attribute to size in pool_metadata

Signed-off-by: Babu Shanmugam <anbu@enovance.com>
11 years ago1. simplified the 'bytes' info to just be bytes
Babu Shanmugam [Thu, 6 Mar 2014 07:58:25 +0000 (07:58 +0000)]
1. simplified the 'bytes' info to just be bytes
2. prefix all the members of the components_info with 'num_'

Signed-off-by: Babu Shanmugam <anbu@enovance.com>
11 years agoMerge pull request #1378 from ceph/wip-7487
Gregory Farnum [Thu, 6 Mar 2014 04:58:40 +0000 (20:58 -0800)]
Merge pull request #1378 from ceph/wip-7487

mon: no crush buckets with type 0 (#7487)

Reviewed-by: Greg Farnum <greg@inktank.com>
11 years agoMerge pull request #1380 from ceph/wip-pool-delete
João Eduardo Luís [Thu, 6 Mar 2014 01:38:33 +0000 (01:38 +0000)]
Merge pull request #1380 from ceph/wip-pool-delete

mon/OSDMonitor: fix pool deletion races

Reviewed-by: Joao Eduardo Luis <joao.luis@inktank.com>
11 years agomon/OSDMonitor: fix pool deletion checks, races 1380/head
Sage Weil [Wed, 5 Mar 2014 23:58:52 +0000 (15:58 -0800)]
mon/OSDMonitor: fix pool deletion checks, races

Unify the pool deletion safety checks into a single set of functions.
Make sure we check the committed state and error out if there is a problem.
Also check the pending state, if any, and delay+retry if there is a
problem there.

This ensures that we correctly verify that a pool is not in use when it
is deleted (by another tier or by cephfs).  These checks are also now
applied to librados calls.

Fixes: #7590
Signed-off-by: Sage Weil <sage@inktank.com>