Commit Graph

109018 Commits

Author SHA1 Message Date
Sage Weil
31a7a46138 Merge PR #33757 into master
* refs/pull/33757/head:
	qa/valgrind.supp: abstract from ceph::buffer's symbol versioning.

Reviewed-by: Sage Weil <sage@redhat.com>
2020-03-06 07:17:45 -06:00
Sage Weil
b21a2874b6 Merge PR #33755 into master
* refs/pull/33755/head:
	mgr/cephadm: make osd create on an existing LV idempotent

Reviewed-by: Michael Fritch <mfritch@suse.com>
2020-03-06 06:39:50 -06:00
Kiefer Chang
880c0b7591
mgr/orch: fix ServiceSpec deserialization error
cephadm fails to load Service spec data when deserializing
HostPlacementSpec resource. Fix the issue by loading it properly.

Renaming the call from_dict to from_json for consistency.

This change also makes `spec` filed visible in JSON output of
ServiceSpec list.

Fixes: https://tracker.ceph.com/issues/44491
Fixes: https://tracker.ceph.com/issues/44392

Signed-off-by: Kiefer Chang <kiefer.chang@suse.com>
2020-03-06 19:51:57 +08:00
Alfonso Martínez
11b4f71e20 vstart.sh: enable nfs-ganesha mgmt. in dashboard.
Signed-off-by: Alfonso Martínez <almartin@redhat.com>
2020-03-06 12:50:06 +01:00
Lenz Grimmer
17e55269bb
Merge pull request #33081 from bk201/wip-43166
mgr/dashboard: improve device selection modal for creating OSDs

Reviewed-by: Laura Paduano <lpaduano@suse.com>
Reviewed-by: Tiago Melo <tmelo@suse.com>
2020-03-06 12:30:50 +01:00
Tiago Melo
3d2d476541 mgr/dashboard: Remove ngx-store
This package is only used in one place, doesn't work with Angular 9 and
hasn't been updated in a while.

Fixes: https://tracker.ceph.com/issues/44449

Signed-off-by: Tiago Melo <tmelo@suse.com>
2020-03-06 09:36:32 -01:00
Nathan Cutler
fd7cb3dae5 rpm: drop "is_opensuse" conditional in SUSE-specific bcond block
Until now, "ocf" and "libradosstriper" were disabled on SLE, but not
openSUSE.

Leaving them enabled for openSUSE makes it appear as if these features
are expected to do something useful on SUSE.

Dropping the "is_opensuse" conditional has the desirable side effect of
streamlining the SUSE bcond block, and in the spirit of "and that's not
all", we take the opportunity to put the bconds in alphabetical order
for comforting cosmetic effect.

Signed-off-by: Nathan Cutler <ncutler@suse.com>
2020-03-06 10:26:44 +01:00
Ramana Raja
6b45b3b6c9
Merge pull request #33775 from tchaikov/wip-44454
qa/tasks/ceph.py: quote "<kind>" in command line

Reviewed-by: Ramana Raja <rraja@redhat.com>
2020-03-06 12:31:12 +05:30
Patrick Donnelly
e20ad96dbf
Merge PR #33674 into master
* refs/pull/33674/head:
	mgr/volumes: OpSmException.error -> OpSmException.errno
	mgr/volumes: remove unneeded assignment to `NoneType`
	mgr/volumes: add missing OpSmException import
	mgr/volumes: add missing error code
	mgr/volumes: remove stray return
	mgr/volumes: fixup format string args
	mgr/volumes: add missing `mgr` param
	mgr/volumes: assert self.fs
	mgr/volumes: skip type checking on RTimer class
	mgr/volumes: fixup threading.Timer import
	mgr/volumes: fix positional str formatting
	mgr/volumes: place getters and setters next to each other
	mgr/volumes: reverse params passed to `isinstace()`
	mgr/volumes: fix arg typo '.' -> ','
	mgr/volumes: add `deque` type
	mgr/volumes: `threading.Event.isSet` no longer exists in py3
	mgr/volumes: assert JobThread class
	mgr/volumes: import VolumeException
	mgr/volumes: use `SafeConfigParser` with py2
	mgr/volumes: use python version during configparser import
	mgr/volumes: add `Dict` type
	mgr/volumes: import errno
	mgr/volumes: add `mgr/volumes` to the mypy checks

Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
Reviewed-by: Venky Shankar <vshankar@redhat.com>
Reviewed-by: Ramana Raja <rraja@redhat.com>
2020-03-05 20:52:46 -08:00
David Zafman
e509b7c7d0 test: Add flush_pg_stats to avoid race with getting num_shards_repaired
Fixes: https://tracker.ceph.com/issues/44439

Signed-off-by: David Zafman <dzafman@redhat.com>
2020-03-06 04:25:37 +00:00
Kefu Chai
da736c22c5 qa/tasks/ceph.py: quote "<kind>" in command line
otherwise bash will intepret "kind" as a file when handling command like
```
sudo zgrep <kind> /var/log/ceph/valgrind/* /dev/null | sort | uniq
```
and try to feed its content to zgrep, and write the output of zgrep
to /var/log/ceph/valgrind/*. this is not the intended behavior. what we
what to do is to pass "<kind>" as an argument to zgrep, along with
the globbed files names which matches "/var/log/ceph/valgrind/*".

in this change, "<kind>" is quoted as in the command line. it's also
what `pipes.quote()` does before the change of
35cf5131e7.

this addresses the regression introduced by
35cf5131e7.

Fixes: https://tracker.ceph.com/issues/44454
Signed-off-by: Kefu Chai <kchai@redhat.com>
2020-03-06 12:17:42 +08:00
Sage Weil
dfecbb19f5 mgr/cephadm: upgrade all ceph daemon types
Signed-off-by: Sage Weil <sage@redhat.com>
2020-03-05 21:28:36 -06:00
Sage Weil
725990f9d3 mgr/cephadm: do not specify --image arg for non-ceph daemons; fix upgrade
If we are calling the cephadm script for a non-ceph daemon (prometheus,
etc), do not specify the --image argument, and do not pull it out of
the config db from sections that don't exist.

Signed-off-by: Sage Weil <sage@redhat.com>
2020-03-05 21:28:36 -06:00
Sage Weil
4e829f1df0 mgr/cephadm: fix error-path return values for _run_cephadm
Signed-off-by: Sage Weil <sage@redhat.com>
2020-03-05 21:23:12 -06:00
Sage Weil
5d0df60596 mgr/orch: fix RGWSpec loading
Fixes ServiceSpec.from_json

Signed-off-by: Sage Weil <sage@redhat.com>
2020-03-05 19:57:56 -06:00
Sage Weil
dab438456f mgr/cephadm: fix 'orch rm'
Signed-off-by: Sage Weil <sage@redhat.com>
2020-03-05 19:48:32 -06:00
Sage Weil
77425b3c4a Merge PR #33766 into master
* refs/pull/33766/head:
	mgr/cephadm: fix placement when existing + specified don't overlap

Reviewed-by: Michael Fritch <mfritch@suse.com>
2020-03-05 18:58:00 -06:00
Sage Weil
ea987a0e56 mgr/cephadm: make osd create on an existing LV idempotent
If we try to prepare an LV that was already prepared, ceph-volume will
return an error message and code.  We want our osd create command to be
idempotent, though, so recognize the error string and continue.

This is an ugly hack, but quicker than changing ceph-volume behavior, and
it is sufficient to stop all of the teuthology failures.

The second part of this is that we have to deploy the daemon on OSDs that
are already prepared and already exist in our osdmap beforehand, but have
never started.

Works-around: https://tracker.ceph.com/issues/44313
Signed-off-by: Sage Weil <sage@redhat.com>
2020-03-05 17:30:44 -06:00
Sage Weil
d316156b1e Merge PR #33744 into master
* refs/pull/33744/head:
	qa/tasks/radosbench: fix usage of -O

Reviewed-by: Kefu Chai <kchai@redhat.com>
2020-03-05 16:41:48 -06:00
Sage Weil
718471b7e4 mgr/cephadm: fix placement when existing + specified don't overlap
If we have a daemon on A, and our spec is (count=2, hosts=[B]), we should
always return [A,B], but we sometimes were returning [B,B].

Signed-off-by: Sage Weil <sage@redhat.com>
2020-03-05 14:51:39 -06:00
Michael Fritch
7fa4da4456
mgr/volumes: OpSmException.error -> OpSmException.errno
fixes mypy errors:

volumes/fs/async_cloner.py: note: In function "handle_clone_pending":
volumes/fs/async_cloner.py:71: error: "OpSmException" has no attribute "error"; maybe "errno"?

volumes/fs/async_cloner.py: note: In function "handle_clone_in_progress":
volumes/fs/async_cloner.py:139: error: "OpSmException" has no attribute "error"; maybe "errno"?

Fixes: https://tracker.ceph.com/issues/44393
Signed-off-by: Michael Fritch <mfritch@suse.com>
2020-03-05 13:19:34 -07:00
Michael Fritch
a09af07cb6
mgr/volumes: remove unneeded assignment to NoneType
fixes mypy error:

volumes/fs/operations/versions/__init__.py: note: In member "get_subvolume_object" of class "SubvolumeLoader":
volumes/fs/operations/versions/__init__.py:70: error: Incompatible types in assignment (expression has type "None", variable has type "SubvolumeBase")

Fixes: https://tracker.ceph.com/issues/44393
Signed-off-by: Michael Fritch <mfritch@suse.com>
2020-03-05 13:19:34 -07:00
Michael Fritch
d5c1a7cbd5
mgr/volumes: add missing OpSmException import
fixes mypy error:

volumes/fs/operations/versions/__init__.py: note: In member "upgrade_legacy_subvolume" of class "SubvolumeLoader":
volumes/fs/operations/versions/__init__.py:56: error: Name 'OpSmException' is not defined

Fixes: https://tracker.ceph.com/issues/44393
Signed-off-by: Michael Fritch <mfritch@suse.com>
2020-03-05 13:19:34 -07:00
Michael Fritch
22b4cb9405
mgr/volumes: add missing error code
fixes mypy error:

volumes/fs/operations/versions/__init__.py: note: In member "_load_supported_versions" of class "SubvolumeLoader":
volumes/fs/operations/versions/__init__.py:35: error: Too few arguments for "VolumeException"

Fixes: https://tracker.ceph.com/issues/44393
Signed-off-by: Michael Fritch <mfritch@suse.com>
2020-03-05 13:19:33 -07:00
Michael Fritch
760a591839
mgr/volumes: remove stray return
fixes mypy errors:

volumes/fs/purge_queue.py: note: In function "get_trash_entry_for_volume":
volumes/fs/purge_queue.py:28: error: Name 'ret' is not defined

volumes/fs/async_cloner.py: note: In function "get_next_clone_entry":
volumes/fs/async_cloner.py:39: error: Name 'ret' is not defined

Fixes: https://tracker.ceph.com/issues/44393
Signed-off-by: Michael Fritch <mfritch@suse.com>
2020-03-05 13:19:33 -07:00
Michael Fritch
85e57a64cb
mgr/volumes: fixup format string args
fixes mypy errors:

volumes/fs/purge_queue.py:26: error: Cannot find replacement for positional format specifier 1
volumes/fs/async_cloner.py:37: error: Cannot find replacement for positional format specifier 1

Fixes: https://tracker.ceph.com/issues/44393
Signed-off-by: Michael Fritch <mfritch@suse.com>
2020-03-05 13:19:33 -07:00
Michael Fritch
a3b61a3577
mgr/volumes: add missing mgr param
fixes mypy errors:

volumes/fs/operations/volume.py: note: In function "create_volume":
volumes/fs/operations/volume.py:216: error: Too few arguments for "remove_pool"
volumes/fs/operations/volume.py:223: error: Too few arguments for "remove_pool"
volumes/fs/operations/volume.py:224: error: Too few arguments for "remove_pool"

Fixes: https://tracker.ceph.com/issues/44393
Signed-off-by: Michael Fritch <mfritch@suse.com>
2020-03-05 13:19:33 -07:00
Michael Fritch
cd97420965
mgr/volumes: assert self.fs
fixes mypy errors:

volumes/fs/operations/volume.py: note: In member "disconnect" of class "Connection":
volumes/fs/operations/volume.py:94: error: Item "None" of "Optional[Any]" has no attribute "get_addrs"
volumes/fs/operations/volume.py:95: error: Item "None" of "Optional[Any]" has no attribute "shutdown"

volumes/fs/operations/volume.py: note: In member "abort" of class "Connection":
volumes/fs/operations/volume.py:105: error: Item "None" of "Optional[Any]" has no attribute "abort_conn"

Fixes: https://tracker.ceph.com/issues/44393
Signed-off-by: Michael Fritch <mfritch@suse.com>
2020-03-05 13:19:33 -07:00
Michael Fritch
ac02377190
mgr/volumes: skip type checking on RTimer class
Unclear why mypy does not like this:

volumes/fs/operations/volume.py: note: In member "run" of class "RTimer":
volumes/fs/operations/volume.py:118: error: "RTimer" has no attribute "finished"
volumes/fs/operations/volume.py:119: error: "RTimer" has no attribute "finished"
volumes/fs/operations/volume.py:119: error: "RTimer" has no attribute "interval"
volumes/fs/operations/volume.py:120: error: "RTimer" has no attribute "function"
volumes/fs/operations/volume.py:120: error: "RTimer" has no attribute "args"
volumes/fs/operations/volume.py:120: error: "RTimer" has no attribute "kwargs"
volumes/fs/operations/volume.py:121: error: "RTimer" has no attribute "finished"

Fixes: https://tracker.ceph.com/issues/44393
Signed-off-by: Michael Fritch <mfritch@suse.com>
2020-03-05 13:19:33 -07:00
Michael Fritch
a611864dae
mgr/volumes: fixup threading.Timer import
Python 3.3 changed `Timer` from a factory function to a class
https://docs.python.org/3.8/library/threading.html#timer-objects

fixes mypy error:

volumes/fs/operations/volume.py:9: error: Module 'threading' has no attribute '_Timer'; maybe "Timer"?

Fixes: https://tracker.ceph.com/issues/44393
Signed-off-by: Michael Fritch <mfritch@suse.com>
2020-03-05 13:19:33 -07:00
Michael Fritch
f46b5059e6
mgr/volumes: fix positional str formatting
fixes mypy error:

volumes/fs/operations/group.py: note: In function "create_group":
volumes/fs/operations/group.py:135: error: Not all arguments converted during string formatting

Fixes: https://tracker.ceph.com/issues/44393
Signed-off-by: Michael Fritch <mfritch@suse.com>
2020-03-05 13:19:33 -07:00
Michael Fritch
6a04ecdc9c
mgr/volumes: place getters and setters next to each other
workaround for mypy issue:
https://github.com/python/mypy/issues/1465

fixes mypy errors:

volumes/fs/operations/group.py: note: In class "Group":
volumes/fs/operations/group.py:44: error: Name 'uid' already defined on line 36
volumes/fs/operations/group.py:44: error: "Callable[[Group], Any]" has no attribute "setter"
volumes/fs/operations/group.py:48: error: Name 'gid' already defined on line 40
volumes/fs/operations/group.py:48: error: "Callable[[Group], Any]" has no attribute "setter"

volumes/fs/operations/group.py: note: In function "open_group":
volumes/fs/operations/group.py:170: error: Property "uid" defined in "Group" is read-only
volumes/fs/operations/group.py:171: error: Property "gid" defined in "Group" is read-only

volumes/fs/operations/versions/subvolume_base.py: note: In class "SubvolumeBase":
volumes/fs/operations/versions/subvolume_base.py:45: error: Name 'uid' already defined on line 33
volumes/fs/operations/versions/subvolume_base.py:45: error: "Callable[[SubvolumeBase], Any]" has no attribute "setter"
volumes/fs/operations/versions/subvolume_base.py:49: error: Name 'gid' already defined on line 37
volumes/fs/operations/versions/subvolume_base.py:49: error: "Callable[[SubvolumeBase], Any]" has no attribute "setter"
volumes/fs/operations/versions/subvolume_base.py:53: error: Name 'mode' already defined on line 41
volumes/fs/operations/versions/subvolume_base.py:53: error: "Callable[[SubvolumeBase], Any]" has no attribute "setter"

Fixes: https://tracker.ceph.com/issues/44393
Signed-off-by: Michael Fritch <mfritch@suse.com>
2020-03-05 13:19:32 -07:00
Michael Fritch
896448324f
mgr/volumes: reverse params passed to isinstace()
fixes mypy error:

volumes/fs/operations/clone_index.py: note: In member "track" of class "CloneIndex":
volumes/fs/operations/clone_index.py:38: error: Argument 2 to "isinstance" has incompatible type "Union[VolumeException, Any]"; expected "Union[type, Tuple[Union[type, Tuple[Any, ...]], ...]]"

Fixes: https://tracker.ceph.com/issues/44393
Signed-off-by: Michael Fritch <mfritch@suse.com>
2020-03-05 13:19:32 -07:00
Michael Fritch
e2516a4806
mgr/volumes: fix arg typo '.' -> ','
fixes mypy error:

volumes/fs/fs_util.py: note: In function "get_ancestor_xattr":
volumes/fs/fs_util.py:129: error: Too few arguments for "VolumeException"

Fixes: https://tracker.ceph.com/issues/44393
Signed-off-by: Michael Fritch <mfritch@suse.com>
2020-03-05 13:19:32 -07:00
Michael Fritch
0fda329d07
mgr/volumes: add deque type
fixes mypy error:

volumes/fs/async_job.py: note: In member "__init__" of class "AsyncJobs":
volumes/fs/async_job.py:97: error: Need type annotation for 'q'

Fixes: https://tracker.ceph.com/issues/44393
Signed-off-by: Michael Fritch <mfritch@suse.com>
2020-03-05 13:19:32 -07:00
Michael Fritch
aaed49a142
mgr/volumes: threading.Event.isSet no longer exists in py3
fixes mypy errors:

volumes/fs/async_job.py: note: In member "should_cancel" of class "JobThread":
volumes/fs/async_job.py:70: error: "Event" has no attribute "isSet"

volumes/fs/volume.py: note: In member "is_stopping" of class "VolumeClient":
volumes/fs/volume.py:59: error: "Event" has no attribute "isSet"

volumes/fs/volume.py: note: In member "list_fs_volumes" of class "VolumeClient":
volumes/fs/volume.py:106: error: "Event" has no attribute "isSet"

Fixes: https://tracker.ceph.com/issues/44393
Signed-off-by: Michael Fritch <mfritch@suse.com>
2020-03-05 13:19:32 -07:00
Michael Fritch
6907c440e1
mgr/volumes: assert JobThread class
fixes mypy error:

volumes/fs/async_job.py: note: In member "run" of class "JobThread":
volumes/fs/async_job.py:43: error: "Thread" has no attribute "should_cancel"

Fixes: https://tracker.ceph.com/issues/44393
Signed-off-by: Michael Fritch <mfritch@suse.com>
2020-03-05 13:19:32 -07:00
Michael Fritch
5b9d5e2e43
mgr/volumes: import VolumeException
fixes mypy errors:

volumes/fs/operations/index.py: note: In member "track" of class "Index":
volumes/fs/operations/index.py:19: error: Name 'VolumeException' is not defined

volumes/fs/operations/index.py: note: In member "untrack" of class "Index":
volumes/fs/operations/index.py:22: error: Name 'VolumeException' is not defined

Fixes: https://tracker.ceph.com/issues/44393
Signed-off-by: Michael Fritch <mfritch@suse.com>
2020-03-05 13:19:32 -07:00
Michael Fritch
23efb9240e
mgr/volumes: use SafeConfigParser with py2
Python3.2 renamed `SafeConfigParser` -> `ConfigParser`

Fixes: https://tracker.ceph.com/issues/44393
Signed-off-by: Michael Fritch <mfritch@suse.com>
2020-03-05 13:19:32 -07:00
Michael Fritch
f213b646db
mgr/volumes: use python version during configparser import
fixes mypy error:

volumes/fs/operations/versions/metadata_manager.py:8: error: Name 'configparser' already defined (by an import)

Fixes: https://tracker.ceph.com/issues/44393
Signed-off-by: Michael Fritch <mfritch@suse.com>
2020-03-05 13:19:32 -07:00
Michael Fritch
322019beef
mgr/volumes: add Dict type
fixes mypy errors:

volumes/fs/operations/op_sm.py:39: error: "object" has no attribute "get"
volumes/fs/operations/op_sm.py:49: error: "object" has no attribute "get"

volumes/fs/operations/lock.py: note: In member "__init__" of class "GlobalLock":
volumes/fs/operations/lock.py:27: error: "object" has no attribute "__enter__"
volumes/fs/operations/lock.py:27: error: "object" has no attribute "__exit__"

volumes/fs/operations/lock.py: note: In member "lock_op" of class "GlobalLock":
volumes/fs/operations/lock.py:35: error: "object" has no attribute "__enter__"
volumes/fs/operations/lock.py:35: error: "object" has no attribute "__exit__"

Fixes: https://tracker.ceph.com/issues/44393
Signed-off-by: Michael Fritch <mfritch@suse.com>
2020-03-05 13:19:31 -07:00
Michael Fritch
8478b72dc3
mgr/volumes: import errno
fixes mypy errors:

volumes/fs/operations/op_sm.py:36: error: Name 'errno' is not defined
volumes/fs/operations/op_sm.py:39: error: Name 'errno' is not defined
volumes/fs/operations/op_sm.py:46: error: Name 'errno' is not defined
volumes/fs/operations/op_sm.py:49: error: Name 'errno' is not defined
volumes/fs/operations/template.py:5: error: Name 'errno' is not defined
volumes/fs/operations/template.py:14: error: Name 'errno' is not defined
volumes/fs/operations/template.py:23: error: Name 'errno' is not defined
volumes/fs/operations/template.py:32: error: Name 'errno' is not defined
volumes/fs/operations/template.py:42: error: Name 'errno' is not defined
volumes/fs/operations/template.py:45: error: Name 'errno' is not defined
volumes/fs/operations/template.py:62: error: Name 'errno' is not defined
volumes/fs/operations/template.py:74: error: Name 'errno' is not defined
volumes/fs/operations/template.py:85: error: Name 'errno' is not defined
volumes/fs/operations/template.py:94: error: Name 'errno' is not defined
volumes/fs/operations/template.py:103: error: Name 'errno' is not defined
volumes/fs/operations/template.py:112: error: Name 'errno' is not defined
volumes/fs/operations/template.py:121: error: Name 'errno' is not defined
volumes/fs/operations/template.py:130: error: Name 'errno' is not defined
volumes/fs/operations/template.py:139: error: Name 'errno' is not defined
volumes/fs/operations/template.py:148: error: Name 'errno' is not defined
volumes/fs/operations/template.py:158: error: Name 'errno' is not defined
volumes/fs/operations/template.py:169: error: Name 'errno' is not defined
volumes/fs/operations/template.py:180: error: Name 'errno' is not defined
volumes/fs/operations/index.py:18: error: Name 'errno' is not defined
volumes/fs/operations/index.py:21: error: Name 'errno' is not defined

Fixes: https://tracker.ceph.com/issues/44393
Signed-off-by: Michael Fritch <mfritch@suse.com>
2020-03-05 13:19:31 -07:00
Michael Fritch
fef6450834
mgr/volumes: add mgr/volumes to the mypy checks
Fixes: https://tracker.ceph.com/issues/44393
Signed-off-by: Michael Fritch <mfritch@suse.com>
2020-03-05 13:19:26 -07:00
Sage Weil
8a84ddeaa8 Merge PR #33531 into master
* refs/pull/33531/head:
	qa/tasks/mgr/test_orchestrator_cli: fix test_ps* tests
	mgr/test_orchestrator: refactor listing services/daemons
	mgr/dashboard: list services and daemons

Reviewed-by: Tiago Melo <tmelo@suse.com>
Reviewed-by: Volker Theile <vtheile@suse.com>
2020-03-05 13:20:21 -06:00
Sage Weil
2dc112e0aa Merge PR #33718 into master
* refs/pull/33718/head:
	mgr/dashboard: fix tasks.mgr.dashboard.test_rgw suite

Reviewed-by: Lenz Grimmer <lgrimmer@suse.com>
2020-03-05 13:20:10 -06:00
Sage Weil
8eb58e5bba Merge PR #33745 into master
* refs/pull/33745/head:
	mgr/cephadm: upgrade: fix daemons missing image_id

Reviewed-by: Michael Fritch <mfritch@suse.com>
2020-03-05 13:18:34 -06:00
Radoslaw Zarzynski
1a6d716df8 qa/valgrind.supp: abstract from ceph::buffer's symbol versioning.
Analysis: https://tracker.ceph.com/issues/44430#note-1
Fixes: https://tracker.ceph.com/issues/44430
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
2020-03-05 19:02:36 +01:00
J. Eric Ivancich
03a3355db5
Merge pull request #33702 from ivancich/wip-bucket-listing-clear-results
rgw: cls_bucket_list_(un)ordered should clear results collection

Reviewed-by: Casey Bodley <cbodley@redhat.com>
Reviewed-by: Matt Benjamin <mbenjamin@redhat.com>
Reviewed-By: Abhishek Lekshmanan <abhishek@suse.com>
2020-03-05 12:37:51 -05:00
Yaarit Hatuka
4308c5d56e doc/mgr/telemetry: add 'send' command
Signed-off-by: Yaarit Hatuka <yaarit@redhat.com>
2020-03-05 12:15:27 -05:00
Sage Weil
50a656047c python-common: fix lint errors
ceph/deployment/drive_selection/filter.py:8:5: F401 'typing.Optional' imported but unused
ceph/tests/test_disk_selector.py:5:1: F401 'ceph.deployment.drive_group.DriveGroupValidationError' imported but unused
ceph/tests/test_disk_selector.py:10:5: F401 'mock.patch' imported but unused

Signed-off-by: Sage Weil <sage@redhat.com>
2020-03-05 10:58:57 -06:00