Commit Graph

80327 Commits

Author SHA1 Message Date
J. Eric Ivancich
b33f529e79 rgw: fix BZ 1500904, Stale bucket index entry remains after object deletion
We have a race condition:

 1. RGW client #1: requests an object be deleted.
 2. RGW client #1: sends a prepare op to bucket index OSD #1.
 3. OSD #1:        prepares the op, adding pending ops to the bucket dir entry
 4. RGW client #2: sends a list bucket to OSD #1
 5. RGW client #2: sees that there are pending operations on bucket
                   dir entry, and calls check_disk_state
 6. RGW client #2: check_disk_state sees that the object still exists, so it
                   sends CEPH_RGW_UPDATE to bucket index OSD (#1)
 7. RGW client #1: sends a delete object to object OSD (#2)
 8. OSD #2:        deletes the object
 9. RGW client #2: sends a complete op to bucket index OSD (#1)
10. OSD #1:        completes the op
11. OSD #1:        receives the CEPH_RGW_UPDATE and updates the bucket index
                   entry, thereby **RECREATING** it

Solution implemented:

At step #5 the object's dir entry exists. If we get to beginning of
step #11 and the object's dir entry no longer exists, we know that the
dir entry was just actively being modified, and ignore the
CEPH_RGW_UPDATE operation, thereby NOT recreating it.

Signed-off-by: J. Eric Ivancich <ivancich@redhat.com>
2017-11-03 12:58:05 -04:00
Douglas Fuller
0e2cfdf507 cephfs: Do not check auth gid when not specified
For auth caps that omit the gid, do not check for a gid match.

Fixes: http://tracker.ceph.com/issues/22009
Signed-off-by: Douglas Fuller <dfuller@redhat.com>
2017-11-03 12:40:48 -04:00
Jason Dillaman
95d716cc70 librbd: added preprocessor macro for detecting compare-and-write support
Fixes: http://tracker.ceph.com/issues/22036
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2017-11-03 12:03:49 -04:00
Yehuda Sadeh
a27b28e507
Merge pull request #17923 from cbodley/wip-rgw-beast-update
rgw: pull up beast submodule and update frontend

Reviewed-by: Orit Wasserman <owasserm@redhat.com>
2017-11-03 08:57:39 -07:00
Jason Dillaman
997bb80ba2 doc/rbd: tweaks to the Windows iSCSI initiator directions
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2017-11-03 11:05:02 -04:00
Casey Bodley
2079f8d287
Merge pull request #18522 from C2python/cleanup_to_string
rgw: Delete to_string functions. stringify defined in include/stringify.h can provide the same feature.

Reviewed-by: Adam Emerson <aemerson@redhat.com>
2017-11-03 11:01:28 -04:00
Casey Bodley
1145c38fe9
Merge pull request #18536 from ZVampirEM77/wip-fix-loadgen
rgw: loadgen fix generate random object name rgw crash issue

Reviewed-by: Casey Bodley <cbodley@redhat.com>
2017-11-03 10:11:27 -04:00
Kefu Chai
56f05413e4
Merge pull request #18526 from tchaikov/wip-17454
mgr: In plugins 'module' classes need not to be called "Module" anymore.

Reviewed-by: John Spray <john.spray@redhat.com>
2017-11-03 20:10:37 +08:00
Kefu Chai
3c47534897
Merge pull request #18678 from liu-chunmei/fix_dpdk_coremask
msg/async: fix ms_dpdk_coremask and ms_dpdk_coremask conflict

Reviewed-by: Haomai Wang <haomai@xsky.com>
Reviewed-by: Kefu Chai <kchai@redhat.com>
2017-11-03 20:05:59 +08:00
Sage Weil
e7d4f390d6
Merge pull request #18670 from liewegas/wip-min-in-4
qa/tasks/thrashosds: set min_in default to 4

Reviewed-by: Kefu Chai <kchai@redhat.com>
2017-11-03 06:55:23 -05:00
Sage Weil
5874a1d823
Merge pull request #18671 from ifed01/wip-ifed-bluefs-empty-reclaiming-fix
os/bluestore: do not release empty bluefs_extents_reclaiming.

Reviewed-by: Sage Weil <sage@redhat.com>
Reviewed-by: xie xingguo <xie.xingguo@zte.com.cn>
2017-11-03 06:55:00 -05:00
Mykola Golub
15a9796bb3
Merge pull request #18653 from dillaman/wip-21391
mgr/dashboard: added iSCSI IOPS/throughput metrics

Reviewed-by: Mykola Golub <to.my.trociny@gmail.com>
2017-11-03 11:27:56 +02:00
Kefu Chai
3fa4e8109e denc: support enum with underlying type
Signed-off-by: Kefu Chai <kchai@redhat.com>
2017-11-03 16:30:59 +08:00
Kefu Chai
c8d4005558 cmake,deb: remove the last trace of atomic_ops
Signed-off-by: Kefu Chai <kchai@redhat.com>
2017-11-03 16:23:42 +08:00
Kefu Chai
c43bac48b0 cmake: fix indent
Signed-off-by: Kefu Chai <kchai@redhat.com>
2017-11-03 16:23:26 +08:00
Kefu Chai
4c2dd1607f cmake: remove unused definitions
Signed-off-by: Kefu Chai <kchai@redhat.com>
2017-11-03 16:23:12 +08:00
Kefu Chai
761c729779 cmake: do not link ${XIO_LIBRARY} if not necessary
Signed-off-by: Kefu Chai <kchai@redhat.com>
2017-11-03 16:22:59 +08:00
chunmei
e6b71f2221 ms_dpdk_coremask and ms_async_op_threads has some relationship,
dpdk library will create threasds as many as bit 1 number in
ms_dpdk_coremask and the thredas num should be equal ms_async_op_threads+1,
by ceph default confiuration,ms_async_op_threads =3,ms_dpdk_coremask =1,
so dpdk library can't create enough threads for dpdk workers. the sytem
will stuck at NetworkStack::start().so set ms_dpdk_coremask default 0xF.
and add assert to comapre the two configurations.

Signed-off-by: chunmei <chunmei.liu@intel.com>
2017-11-02 22:26:45 -07:00
Kefu Chai
9502a8e521
Merge pull request #18695 from cooboos/wip-doc-wrongspell
doc/release-notes: fix typo 'psd' to 'osd'

Reviewed-By: Kefu Chai <kchai@redhat.com>
2017-11-03 13:21:07 +08:00
wangsongbo
e0b0e911de doc: correct wrong spell 'psd' to 'osd'
Signed-off-by: wangsongbo wangsongbo@cloudin.cn
2017-11-03 12:49:11 +08:00
Xinze Chi
87d188b848 osd/PrimaryLogPG: fix dup stat for async read
The async read would call do_osd_ops twice.

Signed-off-by: Xinze Chi <xinze@xsky.com>
2017-11-03 11:15:44 +08:00
Sage Weil
ed442164d5 pybind/mgr/mgr_module: fix calc_pg_upmaps
This was fixed in the object cleanup.

Signed-off-by: Sage Weil <sage@redhat.com>
2017-11-02 16:18:03 -05:00
Sage Weil
26710f0a9b mgr/balancer: enable module by default
It will still be "off".

Signed-off-by: Sage Weil <sage@redhat.com>
2017-11-02 16:11:26 -05:00
Enming Zhang
7d021782e2 rgw: loadgen fix rgw crash issue
When generating random bucket name and object name during
loadgen processing, RGW will crash. The reason is calling
"gen_rand_alphanumeric" with "cct = NULL".

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

Signed-off-by: Enming Zhang <enming.zhang@umcloud.com>
2017-11-03 00:52:43 +08:00
Yuri Weinstein
3c528845f6
Merge pull request #13992 from dreamhost/wip-19264
rgw: fix Swift container naming rules.

Reviewed-by: Orit Wasserman <owasserm@redhat.com>
2017-11-02 09:47:31 -07:00
Yuri Weinstein
931d1ba1e0
Merge pull request #18606 from adamemerson/wip-op-perm-refactor
rgw: Small refactor and two bug fixes

Reviewed-by: Casey Bodley <cbodley@redhat.com>
Reviewed-by: Matt Benjamin <mbenjami@redhat.com>
2017-11-02 09:46:20 -07:00
Kefu Chai
428c7751e2
Merge pull request #14955 from aclamk/fix-civetweb-cryptopp
radosgw: Make compilation with CryptoPP possible.

Reviewed-by: Kefu Chai <kchai@redhat.com>
2017-11-02 23:59:03 +08:00
Orit Wasserman
87aff41a37
Merge pull request #18664 from oritwas/wip-rgw-21996
rgw: init oldest period after setting run_sync_thread
Reviewed-by: Casey Bodley <cbodley@redhat.com>
2017-11-02 16:31:08 +02:00
Kefu Chai
9357e13a24
Merge pull request #18680 from tchaikov/wip-doc-mgr
doc/mgr: document facilities methods using `automethod` directive

Reviewed-by: John Spray <john.spray@redhat.com>
2017-11-02 20:39:25 +08:00
Kefu Chai
315cde54ad
Merge pull request #18685 from jcsp/wip-mgr-load-module
qa: fix mgr _load_module helper

Reviewed-by: Kefu Chai <kchai@redhat.com>
2017-11-02 20:20:52 +08:00
xie xingguo
b6086edb50 osd/PG: use osd_backfill_retry_interval for schedule_backfill_retry()
These two options currently share the same value and I have no particular
preference, but using osd_backfill_retry_interval for the specific scenario
gives us more flexible choices.

Signed-off-by: xie xingguo <xie.xingguo@zte.com.cn>
2017-11-02 20:17:22 +08:00
John Spray
4fb3025682 qa: fix mgr _load_module helper
I inadvertently broke this with the latest change
to the module ls output.

Signed-off-by: John Spray <john.spray@redhat.com>
2017-11-02 07:42:56 -04:00
Alfredo Deza
02a0369879
Merge pull request #18656 from ceph/ceph-volume-bluestore-tests
ceph-volume: adds functional testing for bluestore
2017-11-02 07:30:39 -04:00
John Spray
737877fb38
Merge pull request #18399 from jcsp/wip-20950
mon: don't blow away bootstrap-mgr on upgrades

Reviewed-by: Joao Eduardo Luis <joao@suse.de>
Reviewed-by: Sage Weil <sage@redhat.com>
2017-11-02 10:37:09 +00:00
Haomai Wang
0ee9fd2c14
Merge pull request #18681 from tchaikov/wip-msg-async-popcnt
msg/async: use bitset<> to do the popcnt

Reviewed-by: Haomai Wang <haomai@xsky.com>
2017-11-02 04:54:48 -05:00
Ilya Dryomov
c1d6f8364f
Merge pull request #18652 from idryomov/wip-qa-krbd-blkroset
qa/suites/krbd: add krbd BLKROSET test

Reviewed-by: Jason Dillaman <dillaman@redhat.com>
2017-11-02 10:10:39 +01:00
Kefu Chai
79476d4e25 msg/async: use bitset<> to do the popcnt
libstdc++ uses popcnt to count the bits. it's faster and simpler.

Signed-off-by: Kefu Chai <kchai@redhat.com>
2017-11-02 15:22:11 +08:00
Kefu Chai
220e038dc5 doc/mgr: document mgr/plugin using automethod
Signed-off-by: Kefu Chai <kchai@redhat.com>
2017-11-02 14:34:13 +08:00
Kefu Chai
b050f8a061 pybind/mgr: sync the docstring with the doc/mgr
also update the docstring to confirm to
http://www.sphinx-doc.org/en/stable/domains.html#info-field-lists.

Signed-off-by: Kefu Chai <kchai@redhat.com>
2017-11-02 14:34:13 +08:00
bhavishyagopesh
345c14438e mgr: In plugins 'module' classes need not to be called "Module" anymore.
Fixes: http://tracker.ceph.com/issues/17454
Signed-off-by: Kefu Chai <kchai@redhat.com>
Signed-off-by: bhavishyagopesh <bhavishyagopesh@gmail.com>
2017-11-02 12:24:12 +08:00
Jason Dillaman
540b4cf575
Merge pull request #18619 from trociny/wip-qa-mirror-remove
qa/workunits/rbd: unnecessary sleep after failed remove

Reviewed-by: Jason Dillaman <dillaman@redhat.com>
2017-11-01 21:34:35 -04:00
Sage Weil
aa828be008
Merge pull request #17983 from liewegas/wip-balancer
mgr/balancer: make crush-compat mode work

Reviewed-by: John Spray <john.spray@redhat.com>
2017-11-01 14:46:07 -05:00
Patrick Donnelly
94d9006df4
ptl-tool: allow setting project/repo for GH req
This allows using ptl-tool for other projects like ceph-linode.

Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
2017-11-01 11:21:20 -07:00
John Spray
f4763c32fa mgr: emit cluster log message on serve() exception
Fixes: http://tracker.ceph.com/issues/21999
Signed-off-by: John Spray <john.spray@redhat.com>
2017-11-01 12:08:03 -04:00
Orit Wasserman
cc3246cf46 rgw: add missing current_history initialization
Fixes: http://tracker.ceph.com/issues/21996
Signed-off-by: Orit Wasserman <owasserm@redhat.com>
Signed-off-by: Casey Bodley <cbodley@redhat.com>
2017-11-01 17:49:46 +02:00
Orit Wasserman
8b30167916 rgw: init oldest period after setting run_sync_thread
Fixes: http://tracker.ceph.com/issues/21996
Signed-off-by: Orit Wasserman <owasserm@redhat.com>
2017-11-01 17:48:41 +02:00
Matt Benjamin
e857d71acf
Merge pull request #18657 from cbodley/wip-21990
rgw: remove placement_rule from rgw_link_bucket()
2017-11-01 11:47:24 -04:00
Yuri Weinstein
1465a86ad9
Merge pull request #18534 from ZVampirEM77/wip-emlc-contentmd5
rgw: lc support Content-MD5 request header and fix a rgw crash bug

Reviewed-by: Casey Bodley <cbodley@redhat.com>
Reviewed-by: Abhishek Lekshmanan <abhishek.lekshmanan@gmail.com>
Reviewed-by: Adam Emerson <aemerson@redhat.com>
Reviewed-by: Daniel Gryniewicz <dang@redhat.com>
2017-11-01 08:27:29 -07:00
Yuri Weinstein
223f45e4e1
Merge pull request #18610 from cbodley/wip-osd-subop-num
osd: add processed_subop_count for cls_cxx_subop_version()

Reviewed-by: Jason Dillaman <dillaman@redhat.com>
Reviewed-by: Sage Weil <sage@redhat.com>
Reviewed-by: Josh Durgin <jdurgin@redhat.com>
2017-11-01 08:24:13 -07:00
Yuri Weinstein
b51f285676
Merge pull request #18641 from joke-lee/rgw_modify_subuser_access_error
rgw: modify s3 type subuser access permissions fail through admin rest api

Reviewed-by: Casey Bodley <cbodley@redhat.com>
2017-11-01 08:22:12 -07:00