mirror of
https://github.com/ceph/ceph-csi.git
synced 2025-06-14 10:53:34 +00:00
journal: change omap remove func to handle multiple keys at once
For any function that removes more than one key on a single oid removing them as a batch will be more efficient. Signed-off-by: John Mulligan <jmulligan@redhat.com>
This commit is contained in:
committed by
mergify[bot]
parent
0ac5f40d09
commit
a8409eccc8
@ -77,10 +77,10 @@ func getOMapValues(
|
||||
return results, nil
|
||||
}
|
||||
|
||||
func removeOneOMapKey(
|
||||
func removeMapKeys(
|
||||
ctx context.Context,
|
||||
conn *Connection,
|
||||
poolName, namespace, oMapName, oMapKey string) error {
|
||||
poolName, namespace, oid string, keys []string) error {
|
||||
// fetch and configure the rados ioctx
|
||||
ioctx, err := conn.conn.GetIoctx(poolName)
|
||||
if err != nil {
|
||||
@ -92,15 +92,15 @@ func removeOneOMapKey(
|
||||
ioctx.SetNamespace(namespace)
|
||||
}
|
||||
|
||||
err = ioctx.RmOmapKeys(oMapName, []string{oMapKey})
|
||||
err = ioctx.RmOmapKeys(oid, keys)
|
||||
if err != nil {
|
||||
klog.Errorf(
|
||||
util.Log(ctx, "failed removing omap key (pool=%q, namespace=%q, name=%q, key=%q): %v"),
|
||||
poolName, namespace, oMapName, oMapKey, err)
|
||||
util.Log(ctx, "failed removing omap keys (pool=%q, namespace=%q, name=%q): %v"),
|
||||
poolName, namespace, oid, err)
|
||||
} else {
|
||||
klog.Infof(
|
||||
util.Log(ctx, "XXX removed omap key (pool=%q, namespace=%q, name=%q, key=%q, ): %v"),
|
||||
poolName, namespace, oMapName, oMapKey, err)
|
||||
klog.V(4).Infof(
|
||||
util.Log(ctx, "removed omap keys (pool=%q, namespace=%q, name=%q): %+v"),
|
||||
poolName, namespace, oid, keys)
|
||||
}
|
||||
return err
|
||||
}
|
||||
|
Reference in New Issue
Block a user