Commit Graph

68639 Commits

Author SHA1 Message Date
Sage Weil
6b65397465 messages/MOSDOp: add get_raw_pg()
Many current users expect a full hash value; make that explicit.

Signed-off-by: Sage Weil <sage@redhat.com>
2017-02-13 23:03:50 -05:00
Sage Weil
c30b3c308a messages/MOSDOp: remove unused reassert_version
Signed-off-by: Sage Weil <sage@redhat.com>
2017-02-13 23:03:50 -05:00
Sage Weil
80af2e4d32 osdc/Objecter: remove reassert_version
We never populate this since we never get an ack.

Signed-off-by: Sage Weil <sage@redhat.com>
2017-02-13 23:03:50 -05:00
Sage Weil
a6fa7b6568 osd/OSDMap: generalize map_to_pg
So we can do this without constructing an object_locator_t.

Signed-off-by: Sage Weil <sage@redhat.com>
2017-02-13 23:03:50 -05:00
Sage Weil
0efdd0a338 osd: make use of MOSDOp::get_hobj()
Prefer this to get_object_locator() whereever possible.

Signed-off-by: Sage Weil <sage@redhat.com>
2017-02-13 23:03:50 -05:00
Sage Weil
e0c037e199 message/MOSDOp: build native hobject_t
Drop unneeded snapid_t snapid and object_locator_t, which just duplicate
hobject_t fields.

Signed-off-by: Sage Weil <sage@redhat.com>
2017-02-13 23:03:49 -05:00
Sage Weil
e9cfeedb5d osd/PG: fix tracking of last_epoch_split
Note that it is only (currently) important that this value be accurate
on the current OSD since we only use this value (currently) to discard
ops sent before the split.  If we are getting the history from a different
OSD in the cluster that doesn't have an up to date value it doesn't matter
because that implies a primary change and also a client resend.

Signed-off-by: Sage Weil <sage@redhat.com>
2017-02-13 23:03:49 -05:00
Sage Weil
36d3a29ef5 osd/PG: discard ops from before the last split
New clients will resend.

Old clients will see a last_force_op_resend (now named
last_force_op_resend_preluminous in latest code) and resend.

We know this because we require that the monitors upgrade to luminous
before the OSDs, and the new mon code sets this field on split.

Signed-off-by: Sage Weil <sage@redhat.com>
2017-02-13 23:03:49 -05:00
Sage Weil
6e65e2665d osdc/Objecter: resend ops on pg split if osd has CEPH_FEATURE_RESEND_ON_SPLIT
Signed-off-by: Sage Weil <sage@redhat.com>
2017-02-13 23:03:49 -05:00
xie xingguo
7cb210d98d os/bluestore: add "_" prefix for internal methods
These 4 methods are reserved for internal use only.
Prefix them with "_" to keep pace with others.

Signed-off-by: xie xingguo <xie.xingguo@zte.com.cn>
2017-02-14 10:22:03 +08:00
Sage Weil
379b4ca362 osd: set default debug level to 1/5
There are some useful messages at level 1. They're rare and won't affect
performance, but are helpful to see in the log.

Signed-off-by: Sage Weil <sage@redhat.com>
2017-02-13 19:00:08 -06:00
Sage Weil
af55673668 osd: move a few critical messages to level 0
Signed-off-by: Sage Weil <sage@redhat.com>
2017-02-13 18:58:26 -06:00
Sage Weil
a2fb70ddca Merge pull request #13391 from Adirl/ibv_exp
msg/async/rdma: check if exp verbs avail

Reviewed-by: Haomai Wang <haomai@xsky.com>
2017-02-13 18:54:10 -06:00
Sage Weil
293c766143 Merge pull request #13034 from wjwithagen/wip-wjw-brag
mailmap: Willem Jan Withagen affiliation

Reviewed-by: Loic Dachary <ldachary@redhat.com>
2017-02-13 18:51:26 -06:00
Sage Weil
e5ae7bab66 Merge pull request #13209 from wjwithagen/wip-wjw-freebsd-init-ceph
init-ceph: Make init-ceph work under FreeBSD for init-system

Reviewed-by: Kefu Chai <kchai@redhat.com>
Reviewed-by: Sage Weil <sage@redhat.com>
2017-02-13 18:50:19 -06:00
Sage Weil
625ffe8cc6 Merge pull request #13377 from wjwithagen/wip-wjw-freebsd-jemalloc
CMakeLists.txt: suppress unneeded warning about jemalloc
2017-02-13 18:47:29 -06:00
Sage Weil
b3723a1e60 Merge pull request #13360 from ktdreyer/doc-firewalld-improvements
doc: improve firewalld instructions

Reviewed-by: Sage Weil <sage@redhat.com>
2017-02-13 18:46:15 -06:00
Sage Weil
606aa6567e Merge pull request #13399 from vumrao/wip-vumrao-18919
rgw: change loglevel to 20 for 'System already converted' message

Reviewed-by: Casey Bodley <cbodley@redhat.com>
2017-02-13 18:42:15 -06:00
Sage Weil
4386cb09d2 Merge pull request #13396 from tchaikov/wip-doc-dedup-refs
doc: remove duplicated references

Reviewed-by: xie xingguo <xie.xingguo@zte.com.cn>
2017-02-13 18:41:03 -06:00
Sage Weil
321f8e66e5 Merge pull request #13400 from shinobu-x/wip-18840
doc: Modify Configuring Cinder section

Reviewed-by: Sage Weil <sage@redhat.com>
2017-02-13 18:40:34 -06:00
Vikhyat Umrao
3715362883 osd/Pool: Disallow enabling 'hashpspool' option to a pool without
'--yes-i-really-mean-it'

Fixes: http://tracker.ceph.com/issues/18468

Signed-off-by: Vikhyat Umrao <vumrao@redhat.com>
2017-02-14 04:09:32 +05:30
Matt Benjamin
2e1e72b13c Merge pull request #13405 from linuxbox2/wip-librgw-refcnt
Wip librgw refcnt
2017-02-13 17:28:37 -05:00
Jason Dillaman
7245b4f22d Merge pull request #13403 from MichaelEischer/master
doc: Fixes parameter name in rbd configuration on openstack havana/icehouse

Reviewed-by: Jason Dillaman <dillaman@redhat.com>
2017-02-13 16:31:53 -05:00
Matt Benjamin
b8791b2217 rgw_file: fix hiwat behavior
Removed logic to skip reclaim processing conditionally on hiwat,
this probably meant to be related to a lowat value, which does
not exist.

Having exercised the hiwat reclaim behavior, noticed that the
path which moves unreachable objects to LRU, could and probably
should remove them altogether when q.size exceeds hiwat.  Now
the max unreachable float is lane hiwat, for all lanes.

Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
2017-02-13 16:28:20 -05:00
Matt Benjamin
beaeff0593 rgw_file: refcnt bugfixes
This change includes 3 related changes:

1. add required lock flags for FHCache updates--this is a crash
   bug under concurrent update/lookup

2. omit to inc/dec refcnt on root filehandles in 2 places--the
   root handle current is not on the lru list, so it's not
   valid to do so

3. based on observation of LRU behavior during creates/deletes,
   update (cohort) LRU unref to move objects to LRU when their
   refcount falls to SENTINEL_REFCNT--this cheaply primes the
   current reclaim() mechanism, so very significanty improves
   space use (e.g., after deletes) in the absence of scans
   (which is common due to nfs-ganesha caching)

Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
2017-02-13 16:28:03 -05:00
Matt Benjamin
462034e17f rgw_file: add refcount dout traces at debuglevel 17
These are helpful for checking RGWFileHandle refcnt invariants.

Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
2017-02-13 15:59:12 -05:00
Matt Benjamin
ef330f385d rgw_file: add pretty-print for RGWFileHandle
Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
2017-02-13 15:31:42 -05:00
Michael Eischer
877245e69e doc: Fixes parameter name in rbd configuration on openstack havana/icehouse
The documentation for using rbd together with openstack havana/icehouse
states that the parameter libvirt_disk_cachemodes should be added to
the nova.conf file. However, this is the only parameter that has no
legacy name with a 'libvirt_' prefix. (See
https://github.com/openstack/nova/blob/icehouse-eol/nova/virt/libvirt/driver.py#L252
for the configuration option)
Thus the configured disk_cachemodes were not applied, defaulting to
no caching.

Fixes: #17978
Signed-off-by: Michael Eischer <michael.eischer@fau.de>
2017-02-13 21:10:56 +01:00
Vikhyat Umrao
55b567c767 rgw: change log level to 20 for 'System already converted' message
Fixes: http://tracker.ceph.com/issues/18919

Signed-off-by: Vikhyat Umrao <vumrao@redhat.com>
2017-02-14 00:13:19 +05:30
Shinobu Kinjo
fb419b63e1 Doc: Modify Configuring Cinder section
doc/rbd/rbd-openstack.rst: Add ``volume_backend_name`` in description of
cinder.conf

Fixes: http://tracker.ceph.com/issues/18840
Signed-off-by: Shinobu Kinjo <shinobu@redhat.com>
2017-02-14 03:40:35 +09:00
Yuri Weinstein
df2e1fd84e Merge pull request #13017 from chuanhong-wang/dev_add_perfcount_for_backoff_throttle
osd: adding PerfCounters for backoff throttle

Reviewed-by: xie xingguo <xie.xingguo@zte.com.cn>
2017-02-13 09:02:40 -08:00
Yuri Weinstein
db4d4feb2c Merge pull request #13274 from ifed01/wip-bluestore-perf-counters
os/bluestore: add more perf_counters to BlueStore

Reviewed-by: Sage Weil <sage@redhat.com>
2017-02-13 09:01:21 -08:00
Sage Weil
51679affb2 osd: drop unused+inefficient support for pg[n]ls at a specific snapid
This was super slow, and Objecter was incapable of generating the requests
to use it.

To do this properly we should create a new listing op that returns the
set of clones and/or snaps for each object as part of a single listing
result.  If/when the need arises.

Signed-off-by: Sage Weil <sage@redhat.com>
2017-02-13 11:55:53 -05:00
Sage Weil
3d296a3114 osd: drop pg_op_must_wait check
This made us wait if the snapid != CEPH_NOSNAP and there were any missing
objects at all.  Objecter can't submit such ops, and we're dropping support
for listing at a specific snap anyway.

Signed-off-by: Sage Weil <sage@redhat.com>
2017-02-13 11:51:51 -05:00
Sage Weil
189ca7ec64 mon/OSDMonitor: make pre-luminous clients resend ops on split
Pre-luminous clients do not understand that a split PG forms a new
interval.  Make them resend ops to work around this.

Signed-off-by: Sage Weil <sage@redhat.com>
2017-02-13 11:44:53 -05:00
Sage Weil
8caa8f162e osd/PG: discard ops based on either new or old lfor and features
If the client has the new feature bit, use the new field; if they have the
older feature bit, use the old field.

Note that there is no change to the Objecter: last_force_op_resend is
still the "current" field that it should pay attention to.

Signed-off-by: Sage Weil <sage@redhat.com>
2017-02-13 11:44:53 -05:00
Sage Weil
0423b541b3 osd/osd_types: last_force_op_resend -> last_force_op_resend_preluminous
Rename the current last_force_op_resend for legacy clients, and add a new
one that only applies to new clients that have the new
CEPH_FEATURE_OSD_NEW_INTERVAL_ON_SPLIT feature.

Signed-off-by: Sage Weil <sage@redhat.com>
2017-02-13 11:44:53 -05:00
Sage Weil
6de5481415 osd/osd_types: add set_last_force_op_resend() accessor and use it
Signed-off-by: Sage Weil <sage@redhat.com>
2017-02-13 11:44:53 -05:00
Sage Weil
316dc98788 Merge pull request #13321 from liewegas/wip-kill-sortbitwise-harder
osd: kill sortbitwise

Reviewed-by: Brad Hubbard <bhubbard@redhat.com>
2017-02-13 10:43:56 -06:00
Kefu Chai
1556a07cf1 doc: remove duplicated references
Signed-off-by: Kefu Chai <kchai@redhat.com>
2017-02-14 00:19:54 +08:00
Matt Benjamin
24f43e9f51 Merge pull request #13303 from Jing-Scott/fix-swift-cannot-disable-object-versioning
rgw: fix swift cannot disable object versioning

@Jing-Scott  updated, addressing @rzarzynski's change request
2017-02-13 10:58:04 -05:00
Kefu Chai
1383652b93 Merge pull request #13393 from ddiss/fix_rgw_fcgi_include
rgw: set FCGI_INCLUDE_DIR for cephd_rgw_base

Reviewed-by: Casey Bodley <cbodley@redhat.com>
Reviewed-by: Kefu Chai <kchai@redhat.com>
2017-02-13 23:28:03 +08:00
Kefu Chai
36878000ed ceph-fuse: always free allocated fuse_args
Signed-off-by: Kefu Chai <kchai@redhat.com>
2017-02-13 22:35:30 +08:00
Kefu Chai
0ec167c3da cmake: link consumers of libclient with libcommon
to avoid linking against to both libceph-common and libcommon at the same
time, because both of them will be registered as a provider of lttng
provider.

Fixes: http://tracker.ceph.com/issues/18838
Signed-off-by: Kefu Chai <kchai@redhat.com>
2017-02-13 22:35:30 +08:00
Sage Weil
3ea49b2422 Merge pull request #13382 from xiexingguo/wip-counter-name
os/bluestore: fix wal-queue bytes-counter to keep pace with others

Reviewed-by: Sage Weil <sage@redhat.com>
2017-02-13 08:25:51 -06:00
David Disseldorp
3e55db45f9 rgw: set FCGI_INCLUDE_DIR for cephd_rgw_base
cephd_rgw_base build currently fails with fastcgi enabled:
--
In file included from /home/david/ceph/src/rgw/rgw_request.h:13:0,
from /home/david/ceph/src/rgw/rgw_main.cc:53:
/home/david/ceph/src/rgw/rgw_fcgi.h:8:21: fatal error: fcgiapp.h:
					No such file or directory
^
--

This is despite the fact that fastcgi was detected and located at
configure time:
build/CMakeCache.txt:FCGI_INCLUDE_DIR:PATH=/usr/include/fastcgi

Fix this by ensuring that the cephd_rgw_base build target correctly uses
FCGI_INCLUDE_DIR.

Fixes: http://tracker.ceph.com/issues/18918

Signed-off-by: David Disseldorp <ddiss@suse.de>
2017-02-13 15:03:42 +01:00
Haomai Wang
d914f0f8a6 Merge pull request #13392 from Adirl/zero_inline
msg/async/rdma: zero wqe inline

Reviewed-by: Haomai Wang <haomai@xsky.com>
2017-02-13 21:57:19 +08:00
Adir Lev
442e22e24f msg/async/rdma: zero wqe inline
we dont use wqe inline

issue: none

Change-Id: Ib187eec3bc79f8caf040fbbfbf0a915186cd58ba
Signed-off-by: Adir Lev <adirl@mellanox.com>
2017-02-13 13:36:46 +00:00
Adir Lev
74fc3f6b83 msg/async/rdma: check if exp verbs avail
issue: 975125

Change-Id: I9daa168ca0299887a7238a688508c773b98abde9
Signed-off-by: Adir Lev <adirl@mellanox.com>
Signed-off-by: Oren Duer <oren@mellanox.com>
2017-02-13 13:28:21 +00:00
Jing Wenjun
17c5a0edd2 rgw: fix swift cannot disable object versioning
we should be able to disable object verioning by removing its X-Versions-Location
metadata header by sending an empty key value. this description can be found at
No.8 in http://docs.openstack.org/user-guide/cli-swift-set-object-versions.html.

Fixes: http://tracker.ceph.com/issues/18852
Signed-off-by: Jing Wenjun <jingwenjun@cmss.chinamobile.com>
2017-02-13 21:13:05 +08:00