Mostly we should wait the mountpoint to get ready, especially for
the fuse mountpoint, sometimes it may take a few seconds to get
ready.
Fixes: https://tracker.ceph.com/issues/44044
Signed-off-by: Xiubo Li <xiubli@redhat.com>
If the network couldn't response due to some reasons, the 'stat' cmd
will stuck until the network recovery, the best case is it will stuck
forever.
Fixes: https://tracker.ceph.com/issues/44044
Signed-off-by: Xiubo Li <xiubli@redhat.com>
This will isolate the network namespace for each mount point with
a private ip address and iptables, etc.
For the kill() stuff it will just do DOWN the veth interface instead
of sending ipmi request for kernel mount and kill the fuse processes
for the fuse mount. This could avoid sending the socket FIN to the
ceph cluster.
Fixes: https://tracker.ceph.com/issues/44044
Signed-off-by: Xiubo Li <xiubli@redhat.com>
This helper script will help to unshare the network namespace from
the os and with its own private veth interface, IP, iptable rules,etc.
It could help us to simulate some test case like client node crash.
Fixes: https://tracker.ceph.com/issues/44044
Signed-off-by: Xiubo Li <xiubli@redhat.com>
We'll emulate the dlfcn.h interface using Windows functions, which
will allow loading Windows DLLs.
Signed-off-by: Lucian Petrut <lpetrut@cloudbasesolutions.com>
This patch fixes the following flake8 error:
F821 undefined name 'e'
Fixes: https://tracker.ceph.com/issues/44645
Signed-off-by: Varsha Rao <varao@redhat.com>
This patch fixes the following flake8 error:
E128 continuation line under-indented for visual indent
E122 continuation line missing indentation or outdented
Fixes: https://tracker.ceph.com/issues/44645
Signed-off-by: Varsha Rao <varao@redhat.com>
This patch fixes the following flake8 error:
E226 missing whitespace around arithmetic operator
Fixes: https://tracker.ceph.com/issues/44645
Signed-off-by: Varsha Rao <varao@redhat.com>
This patch fixes the following flake8 error:
E502 the backslash is redundant between brackets
Fixes: https://tracker.ceph.com/issues/44645
Signed-off-by: Varsha Rao <varao@redhat.com>
This patch fixes the following flake8 error:
E302 expected 2 blank lines, found 1
Fixes: https://tracker.ceph.com/issues/44645
Signed-off-by: Varsha Rao <varao@redhat.com>
bucket sync now gets a const pointer to the DataSyncShard's lease to
check whether the lease has expired
Signed-off-by: Casey Bodley <cbodley@redhat.com>
use cls_version on bucket sync status to detect racing writes - whether
from other gateways, or from radosgw-admin commands like 'bucket sync'
or 'bucket sync init'
classes that require a non-null version tracker take it by reference
Signed-off-by: Casey Bodley <cbodley@redhat.com>
bucket sync remembers the latest timestamp that it successfully wrote to
the bucket sync status. data sync can use this to make future decisions
without having to reread its sync status
Signed-off-by: Casey Bodley <cbodley@redhat.com>
it's easier for DataSyncShard to handle parsing failures before calling
MarkerTrack::start() and DataSyncSingleEntry
Signed-off-by: Casey Bodley <cbodley@redhat.com>
the sync error repo stores omap keys for each datalog entry that needs a
retry. this adds a new primitive for that, that also stores a timestamp
with each omap key, and will only allow overwrites/removals when a newer
timestamp is provided
Signed-off-by: Casey Bodley <cbodley@redhat.com>