Venky Shankar [Mon, 13 Mar 2023 14:23:14 +0000 (19:53 +0530)]
Merge PR #50493 into main
* refs/pull/50493/head:
qa: fixup quota values exceeding 64 bit signed int value
qa, cleanup: no need to specify human readable quota values in comment
Venky Shankar [Mon, 13 Mar 2023 13:56:59 +0000 (19:26 +0530)]
Merge PR #48382 into main
* refs/pull/48382/head:
test: add test to validate attrs for snapdir after snap operations
client: update {m,c}time and change attr for snapdir from last modification time of a snap realm
mds: update last modification time and change attr for a snap realm node
mds: include last modification time and change attr of a snap realm node in snap trace reply
mds: use change_attr from closest ancestor when initializing a new snaprealm
mds: initialize last_modified to current timestamp for root inode snaprealm
mds: track last modification time and change attr for a snap realm node (srnode)
Reviewed-by: Xiubo Li <xiubli@redhat.com> Reviewed-by: Milind Changire <mchangir@redhat.com>
Venky Shankar [Mon, 13 Mar 2023 06:20:31 +0000 (11:50 +0530)]
qa: fixup quota values exceeding 64 bit signed int value
The test does the following:
setfattr -n ceph.quota.max_bytes -v 8388608Ti .
This failes since 8388608Ti exceeds 64 bit signed integer value.
Change that to the approprivate value and expect faliure when
quota is set for this exceeded value.
ceph-volume tests are failing, OSDs never get up and running.
For some reason, updating the OS early in the testing workflow
addresses that issue in the CI.
Venky Shankar [Fri, 10 Mar 2023 11:15:35 +0000 (16:45 +0530)]
Merge PR #49102 into main
* refs/pull/49102/head:
qa: add test for schedule auto deactivation
doc/cephfs: add note about path usage in snap-schedule
mgr/snap_schedule: add debug log for missing or wrong path
Reviewed-by: Venky Shankar <vshankar@redhat.com> Reviewed-by: Rishabh Dave <ridave@redhat.com>
Now, the current code does not allow qat to exert
its acceleration advantage, but leads to poor performance
of qat. The QAT batch mode is implemented here, so that
the QAT performance can be displayed.
When we scale up the number of concurrent requests and worry about
QAT instance will be bottleneck, we can fall back to CPU.
And there add a parameter to set the times of the number of QAT
instance to wait for free instance, which can avoid QAT to be
not busy and make sure QAT full of utilization as much as possible.
max_queue_size is up to max_requests
Add optional_yield in RGWPutObj_BlockEncrypt and
RGWGetObj_BlockDecrypt. Make it with coroutine and non-coroutine mode.
Adds an experimental script that allows a bucket index of a
non-versioned bucket to be restored by applying `radosgw-admin object
reindex ...` to all objects in the specified bucket. The objects in
the bucket are determined by scanning the data pool for head objects
containing the bucket's marker.
Signed-off-by: J. Eric Ivancich <ivancich@redhat.com>
rgw: add an "object reindex" subcommand to radosgw-admin
This subcommand will take a bucket and an object (or a list of objects
in a file) and add those objects to the bucket's index. It does so by
preparing the bucket index entry update and then allowing the
so-called "dir suggest" mechansim, which is triggered by listing the
bucket, to completing the bucket index entry. This mechanism is
triggered by listing the bucket. Using this mechanism has the
advantage of doing this lazily that both allows the reindex operation
to run more quickly and distributes the workload over time.
This subcommand can help restore lost bucket index entries.
Signed-off-by: J. Eric Ivancich <ivancich@redhat.com>
Nizamudeen A [Thu, 9 Mar 2023 11:51:44 +0000 (17:21 +0530)]
mgr/dashboard: custom image for kcli bootstrap script
the stable branches like quincy pulls from the quay.io/ceph/ceph:v17 to
bootstrap the ceph cluster in test environments. This will cause issues
because the branches are changing constantly but the image is not. So
using the quay.ceph.io repo to bring the cluster in test environment.
Venky Shankar [Wed, 8 Mar 2023 07:06:21 +0000 (12:36 +0530)]
Merge PR #49008 into main
* refs/pull/49008/head:
doc/quota: accept human readable quota value documented
qa/workunits/fs/quota.sh: use human readable format for ceph.quota.max_bytes
qa: added three testcases
mds: accept human readable values for quotas
Reviewed-by: Patrick Donnelly <pdonnell@redhat.com> Reviewed-by: Milind Changire <mchangir@redhat.com> Reviewed-by: Kotresh Hiremath Ravishankar <khiremat@redhat.com> Reviewed-by: Rishabh Dave <ridave@redhat.com> Reviewed-by: Venky Shankar <vshankar@redhat.com> Reviewed-by: Anthony D Atri <anthony.datri@gmail.com>
Venky Shankar [Wed, 8 Mar 2023 02:42:02 +0000 (08:12 +0530)]
Merge PR #46357 into main
* refs/pull/46357/head:
PendingReleaseNotes: add reference to the new mdsmap max_xattr_size field
qa/tasks/mgr/dashboard/test_health: Add 'max_xattr_size' to the mdsmap schema
mds: prevent exceeding xattrs limits on initial set
mds: prevent clients from exceeding the xattrs key/value limits
mon: add new configuration to limit filesystem xattrs size
Reviewed-by: Xiubo Li <xiubli@redhat.com> Reviewed-by: Venky Shankar <vshankar@redhat.com>
Zac Dover [Wed, 8 Mar 2023 01:52:12 +0000 (11:52 +1000)]
doc/install: update index.rst
Update index.rst by making minor grammar improvements. This file was
long overdue for a backport to Reef, Quincy, and Pacific, so this commit
was a good way to pass a human eyeball over the text before making those
backports.
Casey Bodley [Tue, 7 Mar 2023 22:28:54 +0000 (17:28 -0500)]
rgw/sysobj: read() can query size/mtime
rgw_get_system_obj() stopped calling stat() before read() in 90aec61298fc378e1733bc76f0d3f95ce8ec135a, which left the optional
'real_time *pmtime' argument uninitialized
when requested, read() will add a stat op to initialize size/mtime
John Mulligan [Mon, 27 Feb 2023 19:38:50 +0000 (14:38 -0500)]
cephadm: fix timeout argument to call function
The timeout argument to call function, for executing sub-processes, did
not function - this patch makes timeout work as (probably) intended.
Use the `process.communicate()` method rather than `tee` functions to
handle IO collection. Since no logging is done until after the exit code
is known the tee calls are not necessary. Add calls to kill the child
process when the time out occurs. This helps prevent event loop "leaks"
that generate python warnings.
Signed-off-by: John Mulligan <jmulligan@redhat.com>
Adam King [Wed, 15 Feb 2023 22:07:09 +0000 (17:07 -0500)]
mgr/cephadm: be aware of host's shortname and FQDN
The idea is to gether the shortname and FQDN as part
of gather-facts, and then if we ever try to check if a certain
host is in our internal inventory by hostname, we can check
these other known names. This should avoid issues where
we think a hostname specified by FQDN is not in our
inventory because we know the host by the shortname
or vice versa.
Fixes: https://tracker.ceph.com/issues/58738 Signed-off-by: Adam King <adking@redhat.com>
Casey Bodley [Sun, 5 Mar 2023 02:09:20 +0000 (21:09 -0500)]
cmake/boost: WITH_ASAN adds BOOST_USE_ASAN to context
also adds 'context-impl=ucontext' to the b2 command line and the
BOOST_USE_UCONTEXT define as described in:
https://www.boost.org/doc/libs/1_79_0/libs/context/doc/html/context/stack/sanitizers.html
Casey Bodley [Sun, 5 Mar 2023 16:58:43 +0000 (11:58 -0500)]
asan: add qa/lsan.supp for leak sanitizer suppressions
any executable that links against the heap_profiler leaks 8 bytes for a
singleton:
> -----------------------------------------------------
> Suppressions used:
> count bytes template
> 1 8 ^MallocExtension::Register
> -----------------------------------------------------