Commit Graph

130493 Commits

Author SHA1 Message Date
Cory Snyder
850c16c246 bluestore: set upper and lower bounds on rocksdb omap iterators
Limits RocksDB omap Seek operations to the relevant key range of the object's omap.
This prevents RocksDB from unnecessarily iterating over delete range tombstones in
irrelevant omap CF shards. Avoids extreme performance degradation commonly caused
by tombstones generated from RGW bucket resharding cleanup. Also prefer CFIteratorImpl
over ShardMergeIteratorImpl when we can determine that all keys within specified
IteratorBounds must be in a single CF.

Fixes: https://tracker.ceph.com/issues/55324
Signed-off-by: Cory Snyder <csnyder@iland.com>
2022-04-18 12:34:02 -04:00
Ernesto Puerta
247dc597d1
Merge pull request #45859 from rhcs-dashboard/add-cypress-env
mgr/dashboard: Add cypress env for login credentials

Reviewed-by: Avan Thakkar <athakkar@redhat.com>
Reviewed-by: Ernesto Puerta <epuertat@redhat.com>
Reviewed-by: Pere Diaz Bou <pdiazbou@redhat.com>
2022-04-13 14:09:21 +02:00
Ilya Dryomov
85ec4d6ebd
Merge pull request #44236 from CongMinYin/fix-pwl-cache-lose
rbd: add persistent-cache command group

Reviewed-by: Ilya Dryomov <idryomov@gmail.com>
2022-04-13 12:12:51 +02:00
Ernesto Puerta
c160e1e205
Merge pull request #45059 from ceph/wip-merge_message_browser-master
doc: browser extension for merge message

Reviewed-by: Nizamudeen A <nia@redhat.com>
2022-04-13 10:37:30 +02:00
Ernesto Puerta
492a772d43
Merge pull request #45081 from ceph/epuertat-patch-2
doc: fix format issues

Reviewed-by: anthonyeleven <NOT@FOUND>
Reviewed-by: Guillaume Abrioux <gabrioux@redhat.com>
2022-04-13 10:37:18 +02:00
Ernesto Puerta
a2de0b20e7
Merge pull request #45083 from ceph/epuertat-patch-4
doc: fix config option links

Reviewed-by: anthonyeleven <NOT@FOUND>
Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
2022-04-13 10:37:01 +02:00
Samuel Just
1546d558bd
Merge pull request #45574 from cyx1231st/wip-crimson-refactor-with-device
crimson/os/seastore: introduce the generic Device class

Reviewed-by: Samuel Just <sjust@redhat.com>
2022-04-12 22:05:43 -07:00
Samuel Just
3a21a91528
Merge pull request #45775 from liu-chunmei/seastore-zero
crimson: seastore add OP_ZERO support

Reviewed-by: Samuel Just <sjust@redhat.com>
Reviewed-by: Chunmei Liu <chunmei.liu@intel.com>
2022-04-12 20:20:54 -07:00
Samuel Just
d06ce17625 crimson: Implement ObjectDataHandler::zero using hole punching
Trim already treats Reserved regions as zero, let's use that
for zero as well.

Signed-off-by: Samuel Just <sjust@redhat.com>
2022-04-12 17:49:03 -07:00
Samuel Just
88319b475f crimson/os/seastore/object_data_handler: don't return empty buffers from split_pin*
Always return std::nullopt rather than an empty buffer -- this way users
can rely on this as an invariant.

Signed-off-by: Samuel Just <sjust@redhat.com>
2022-04-12 17:48:52 -07:00
Samuel Just
76e9262efb test/crimson/seastore: improve test_seastore zero() coverage
Signed-off-by: Samuel Just <sjust@redhat.com>
2022-04-12 17:48:45 -07:00
chunmei-liu
b392b2a141 crimson: add seastore::zero unit test
Signed-off-by: chunmei-liu <chunmei.liu@intel.com>
2022-04-12 17:48:39 -07:00
chunmei-liu
31dcd54dff crimson: seastore add OP_ZERO support
Signed-off-by: chunmei-liu <chunmei.liu@intel.com>
2022-04-12 17:48:31 -07:00
Yuri Weinstein
ed556e6bc9
Merge pull request #45756 from rzarzynski/wip-common-no-cpp17-second_round
common/bl: fix FTBFS on C++11 due to C++17's if-with-initializer

Reviewed-by: Kefu Chai <kchai@redhat.com>
2022-04-12 13:51:58 -07:00
Yuri Weinstein
a31813d251
Merge pull request #45819 from ljflores/wip-anonymize-telemetry-host-names
mgr/telemetry: anonymize daemons in telemetry `perf_counters`

Reviewed-by: Yaarit Hatuka <yaarithatuka@gmail.com>
2022-04-12 12:12:26 -07:00
Yuri Weinstein
61b975ae6d
Merge pull request #45802 from ljflores/wip-config-dump-yaml
ceph.in: clarify the usage of `--format` in the ceph command

Reviewed-by: Vikhyat Umrao <vikhyat@redhat.com>
Reviewed-by: Anthony D'Atri <anthony.datri@gmail.com>
2022-04-12 12:10:48 -07:00
Neha Ojha
a32221cb9a
Merge pull request #45531 from ifed01/wip-ifed-alloc-replay-with-bin
os/bluestore: proper locking for Allocators' dump

Reviewed-by: Adam Kupczyk <akucpzyk@redhat.com>
2022-04-12 11:06:19 -07:00
Ilya Dryomov
aee78bbb9d librbd/cache/pwl: remove RBD_FEATURE_DIRTY_CACHE check in DiscardRequest
"m_image_ctx.features &&RBD_FEATURE_DIRTY_CACHE" is obviously wrong
because it would pretty much always be true.  However, even if bitwise
AND was used, this check would still be dead because DiscardRequest is
only invoked if RBD_FEATURE_DIRTY_CACHE is enabled:

  int invalidate_cache(ImageCtx *ictx) {
  {
    ...
    // Delete writeback cache if it is not initialized
    if ((!ictx->exclusive_lock ||
         !ictx->exclusive_lock->is_lock_owner()) &&
	ictx->test_features(RBD_FEATURE_DIRTY_CACHE)) {
      C_SaferCond ctx3;
      ictx->plugin_registry->discard(&ctx3);
      r = ctx3.wait();
    }

Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
2022-04-12 18:42:06 +02:00
Ilya Dryomov
63197ff700 librbd/cache/pwl: don't crash if cache file removal fails
The non-ec overload will throw fs::filesystem_error on any error
(e.g. EPERM due to unprivileged "rbd persistent-cache invalidate"
being brought up against a privileged workload).

Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
2022-04-12 18:42:06 +02:00
Yin Congmin
644fbc9fcc rbd: add persistent-cache flush command
Add a flush command so that users can manually flush cache.

[ idryomov: error messages, incorporate doc and help.t hunks, drop
  do_persistent_cache_flush() ]

Signed-off-by: Yin Congmin <congmin.yin@intel.com>
Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
2022-04-12 18:42:05 +02:00
Yin Congmin
05bfe10ad9 rbd: rename image-cache invalidate command
Rename command image-cache to persistent-cache. Refactoring the code
of invalidate command.

[ idryomov: error message, incorporate doc and help.t hunks, drop
  do_persistent_cache_invalidate() ]

Signed-off-by: Yin Congmin <congmin.yin@intel.com>
Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
2022-04-12 18:42:05 +02:00
Yin Congmin
bd66fdda91 librbd/cache/pwl: rename persistent cache key
librbd "internal" metadata keys was change to ".rbd" prefix. Change
peristent cache to ".rbd" too.
And the name of  persistent cache key is IMAGE_CACHE_STATE. Since
this key is planned to be used outside the pwl directory, it seems
more appropriate to change it to a clear name as PERSISTENT_CACHE_STATE.

Signed-off-by: Yin Congmin <congmin.yin@intel.com>
2022-04-12 18:41:57 +02:00
Ilya Dryomov
3c556878cf
Merge pull request #45684 from CongMinYin/pwl-add-stats
librbd/cache/pwl: add pwl metrics in "rbd status" display

Reviewed-by: Ilya Dryomov <idryomov@gmail.com>
2022-04-12 16:48:54 +02:00
Yingxin Cheng
6b58c8b0c8 crimson/os/seastore/EPM: use DEVICE_ID_GLOBAL_MAX for devices
Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
2022-04-12 21:48:14 +08:00
Casey Bodley
d104ae541c
Merge pull request #45357 from cbodley/wip-54531
rgw: disable RGWDataChangesLog::add_entry() when log_data is off

Reviewed-by: Yuval Lifshitz <ylifshit@redhat.com>
2022-04-12 09:34:58 -04:00
Igor Fedotov
d7aa5decf3 os/bluestore: proper locking for Allocators' dump methods
Plus renaming parametrized dump to foreach()
Fixes: https://tracker.ceph.com/issues/54973

Signed-off-by: Igor Fedotov <igor.fedotov@croit.io>
2022-04-12 12:16:55 +03:00
Igor Fedotov
55def1c5ad test/allocator_replay_test: introduce check for duplicates
This performs check for duplicates using free dump.

Signed-off-by: Igor Fedotov <igor.fedotov@croit.io>
2022-04-12 12:09:44 +03:00
Igor Fedotov
82c1036ffe test/allocator_replay_test: introduce binary format for free list dump
Adding new command to export free dump to binary format plus capability
to use new format for replay.
This dramatically increases large dump loading.

Signed-off-by: Igor Fedotov <igor.fedotov@croit.io>
2022-04-12 12:09:44 +03:00
Ilya Dryomov
b100d1fb5b
Merge pull request #45677 from ideepika/wip-ninja-default
ceph.spec: make ninja-build package install always

Reviewed-by: Ilya Dryomov <idryomov@gmail.com>
Reviewed-by: Tim Serong <tserong@suse.com>
2022-04-12 10:57:30 +02:00
Liu-Chunmei
5ee066c9b9
Merge pull request #45820 from liu-chunmei/crimson-do_osd_ops_params_t
crimson: keep do_osd_ops_params_t alive when call do_osd_ops

Reviewed-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
2022-04-11 21:57:36 -07:00
Samuel Just
5b5b457691
Merge pull request #45137 from myoungwon/wip-51627-2
osd: return appropriate error if the object is not manifest

Reviewed-by: Samuel Just <sjust@redhat.com>
2022-04-11 16:31:03 -07:00
chunmei-liu
211e5644d9 crimson: keep do_osd_ops_params_t alive when call do_osd_ops
otherwise stack-under-overflow

Signed-off-by: chunmei-liu <chunmei.liu@intel.com>
2022-04-11 16:30:49 -07:00
Yuri Weinstein
8cee59ff93
Merge pull request #45744 from idryomov/wip-stretch-last-force-resend
mon/OSDMonitor: properly set last_force_op_resend in stretch mode

Reviewed-by: Greg Farnum <gfarnum@redhat.com>
2022-04-11 15:58:23 -07:00
Yuri Weinstein
1b47a14f55
Merge pull request #45670 from pdvian/wip-fix-mgr-daemon-state
mgr, mon: Keep upto date metadata with mgr for MONs

Reviewed-by: Laura Flores <lflores@redhat.com>
2022-04-11 15:57:36 -07:00
Yuri Weinstein
9de51de27d
Merge pull request #45599 from amathuria/amathuri-54994-fix
osd: add scrub duration for scrubs after recovery

Reviewed-by: Ronen Friedman <rfriedma@redhat.com>
2022-04-11 15:56:54 -07:00
Yuri Weinstein
8b9cfe39e6
Merge pull request #45547 from nkshirsagar/master
Catch exception if thrown by __generate_command_map()

Reviewed-by: Laura Flores <lflores@redhat.com>
2022-04-11 15:55:43 -07:00
Yuri Weinstein
15548e020e
Merge pull request #45505 from pdvian/wip-fix-daemon-version
mgr, mgr/prometheus: Fix regression with prometheus metrics

Reviewed-by: Laura Flores <lflores@redhat.com>
2022-04-11 15:51:26 -07:00
Samuel Just
0380a2b446
Merge pull request #45822 from liu-chunmei/crimson-enametoolong
crimson: check -ENAMETOOLONG for Name, Locator, NameSpace

Reviewed-by: Samuel Just <sjust@redhat.com>
Reviewed-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
2022-04-11 14:35:06 -07:00
Ernesto Puerta
9ff904a467
Merge pull request #45584 from votdev/issue_54983_default_rgw_daemon
mgr/dashboard: RGW users and buckets tables are empty if the selected gateway is down

Reviewed-by: Avan Thakkar <athakkar@redhat.com>
Reviewed-by: Ernesto Puerta <epuertat@redhat.com>
Reviewed-by: Nizamudeen A <nia@redhat.com>
Reviewed-by: Volker Theile <vtheile@suse.com>
2022-04-11 20:50:56 +02:00
Ernesto Puerta
63b97035bd
Merge pull request #45790 from rhcs-dashboard/host-toggle-column-fix
mgr/dashboard: datatable in Cluster Host page hides wrong column on selection

Reviewed-by: Sarthak0702 <NOT@FOUND>
Reviewed-by: Avan Thakkar <athakkar@redhat.com>
Reviewed-by: Nizamudeen A <nia@redhat.com>
2022-04-11 20:48:48 +02:00
Ernesto Puerta
0a7d9ef280
Merge pull request #45007 from VallariAg/dashboard-complexity-cleanup
mgr/dashboard: reduce method (cyclomatic) complexity 

Reviewed-by: VallariAg <NOT@FOUND>
Reviewed-by: Avan Thakkar <athakkar@redhat.com>
Reviewed-by: Ernesto Puerta <epuertat@redhat.com>
Reviewed-by: Nizamudeen A <nia@redhat.com>
Reviewed-by: Pere Diaz Bou <pdiazbou@redhat.com>
2022-04-11 20:45:58 +02:00
Sarthak0702
e9128c4cbf mgr/dashboard:Add cypress env for login credentials
Fixes: https://tracker.ceph.com/issues/55270
Signed-off-by: Sarthak0702 <sarthak.dev.0702@gmail.com>
2022-04-12 00:07:30 +05:30
Adam King
29f18c6f7b
Merge pull request #45070 from rkachach/fix_issue_52042
mgr/cephadm: Making default cephadm shell cmd easier

Reviewed-by: Adam King <adking@redhat.com>
2022-04-11 13:18:36 -04:00
Adam King
bb9034dba0
Merge pull request #45056 from ktdreyer/explain-cephadm-tox
cephadm: add comment explaining docker.io grep test

Reviewed-by: Adam King <adking@redhat.com>
2022-04-11 12:51:59 -04:00
Casey Bodley
52a8345421
Merge pull request #45815 from cbodley/wip-55232
test/rgw: use mock OpsLogSink instead of OpsLogSocket

Reviewed-by: Yuval Lifshitz <ylifshit@redhat.com>
2022-04-11 12:42:51 -04:00
Casey Bodley
167255d382
Merge pull request #45770 from yuvalif/wip-yuval-fix-54416
test/multisite: dont use path when mrun outside of src tree

Reviewed-by: Casey Bodley <cbodley@redhat.com>
2022-04-11 12:40:51 -04:00
Adam King
07a4e9ebbe
Merge pull request #45347 from mgfritch/cephadm-config-noreplace
cephadm: preserve `authorized_keys` file during upgrade

Reviewed-by: Adam King <adking@redhat.com>
Reviewed-by: Nathan Cutler <ncutler@suse.com>
Reviewed-by: Tim Serong <tserong@suse.com>
Reviewed-by: Volker Theile <vtheile@suse.com>
2022-04-11 10:10:55 -04:00
Adam King
aae28b1006
Merge pull request #45589 from melissa-kun-li/bootstrap_registry_warning
cephadm: show error during bootstrap if private registry cred not provided 

Reviewed-by: Adam King <adking@redhat.com>
2022-04-11 10:07:50 -04:00
Adam King
b8d25e0c62
Merge pull request #45685 from rkachach/fix_issue_47905
mgr/cephadm: improving logging to send errors to stderr

Reviewed-by: Adam King <adking@redhat.com>
2022-04-11 10:07:07 -04:00
Ilya Dryomov
88db8db1b4
Merge pull request #45798 from adk3798/iscsi-only-pid-limit
cephadm: only apply unlimited pids-limit to iscsi and rgw

Reviewed-by: Ilya Dryomov <idryomov@gmail.com>
2022-04-11 16:02:50 +02:00