Using uninitialized number_log_entries cause writesame req space
calculation error. sometimes fail in TestMockCacheSSDWriteLog.writesame.
Fixes: https://tracker.ceph.com/issues/52852
Signed-off-by: Yin Congmin <congmin.yin@intel.com>
crimson/os/seastore: reduce write amplification from record overhead and implement placement hint
Reviewed-by: Yingxin Cheng <yingxin.cheng@intel.com>
Reviewed-by: Xuehan Xu <xxhdx1985126@gmail.com>
modified: qa/standalone/erasure-code/test-erasure-code-plugins.sh
new file: qa/suites/rados/thrash-erasure-code-isa/arch/aarch64.yaml
Signed-off-by: Dai Zhiwei <daizhiwei3@huawei.com>
The current strategy is to inline allocate non-REWRITE extents in order
to reduce the record overhead. The observation shows the transactions
from user is usually very small and doesn't deserve to be written in ool
records, which requires at least a block to store the record metadata.
Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
`tee` via stdin happens to work when the file is a utf-8 byte encoded
string, but won't work if the file happens to be binary data
Signed-off-by: Michael Fritch <mfritch@suse.com>
Use the enhanced create_n_files to dedup code. Also split the large test
into three.
Fixes: https://tracker.ceph.com/issues/52606
Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
Few things:
- Allow calling fsync on directory (to support async create kernel).
- Allow immediately unlinking the created file (for stray testing).
- Close any file descriptors created.
- Write unique content (the i variable) to each file.
Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
There's no need to mount this file with the `:z` option.
read-only access is enough for this file.
Fixes: https://tracker.ceph.com/issues/52855
Signed-off-by: Guillaume Abrioux <gabrioux@redhat.com>
We want the agent to actually report metadata at the rate we set
it for. Before this, that rate was just being used as the wait time
between iterations so the actual time between iterations was the
given interval plus the time to gather metadata. Now the time between
reports should actually be roughly the given interval.
Signed-off-by: Adam King <adking@redhat.com>
to be consistent with the same logic in V1, and more importantly, it is
more correct.
the change was suggested by Ilya Dryomov <idryomov@redhat.com>.
Signed-off-by: Kefu Chai <tchaikov@gmail.com>
cephadm shouldn't enforce this option.
For instance, it can be an issue when you try to bindmount a file in /usr
Fixes: https://tracker.ceph.com/issues/52853
Signed-off-by: Guillaume Abrioux <gabrioux@redhat.com>
Use a random number vs. incremental counter for first component of request ID.
Fixes: https://tracker.ceph.com/issues/52818
Signed-off-by: Cory Snyder <csnyder@iland.com>
More consistency that way. This also enables us to define the usual
`logger()` function without having a clash with `seastar::logger`.
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
When a standby MDS is transitioning to active, it passes through
`replay` state. When the MDS is in this state, there are no journal
segments available for recording journal updates. If the MDS receives
an OSDMap update in this state, journaling blocklisted clients causes
a crash since no journal segments are available. This is a bit hard
to reproduce as it requires correct timing of an OSDMap update along
with various other factors.
Note that, when the MDS reaches `reconnect` state, it will journal
the blocklisted clients anyway.
This partially fixes tracker: https://tracker.ceph.com/issues/51589
which mentions a similar crash but in `reconnect` state. However,
that crash was seen in nautilus.
A couple of minor changes include removing hardcoded function names
and carving out reusable parts into a separate function.
Partially-fixes: https://tracker.ceph.com/issues/51589
Signed-off-by: Venky Shankar <vshankar@redhat.com>
msg/async/ProtocolV2: Set the recv_stamp at the beginning of receiving a message
Reviewed-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
Reviewed-by: Dan Hill <daniel.hill@canonical.com>
crimson/osd: pick only v2 addresses.
Reviewed-by: Samuel Just <sjust@redhat.com>
Reviewed-by: Kefu Chai <tchaikov@gmail.com>
Reviewed-by: Chunmei Liu <chunmei.liu@intel.com>
If rbd_read_from_replica_policy is set appropriately, setting
rbd_balance/localize_snap_reads or rbd_balance/localize_parent_reads
is redundant.
Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
With the introduction of min_last_complete_ondisk on the OSD side,
it is safe to use these for non-immutable data.
Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
After 3863eb89512f1698b8e56f1f1ffc78a6ca8d5826--rgw: permit logging of
list-bucket (and any other no-bucket op-- the radosgw ops-log
contains entries for ops with no associated buckets--e.g., list_buckets.
When examining such a log object in the radosgw_admin task, don't assert
that it has any bucket name.
Fixes: https://tracker.ceph.com/issues/52647
Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>