From: Jianpeng Ma Date: Wed, 18 May 2016 10:49:57 +0000 (+0800) Subject: librados: For C-API, expose LIBRADOS_OPERATION_FULL_FORCE flag X-Git-Tag: v11.1.0~150^2 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=311f26ddcdf2561d65f02cac31b99649edad88cb;p=ceph.git librados: For C-API, expose LIBRADOS_OPERATION_FULL_FORCE flag Make librados c-api can use LIBRADOS_OPERATION_FULL_FORCE. This maily for delete op. Signed-off-by: Jianpeng Ma --- diff --git a/src/include/rados/librados.h b/src/include/rados/librados.h index 502c97522e6e..1db6843acb5e 100644 --- a/src/include/rados/librados.h +++ b/src/include/rados/librados.h @@ -124,6 +124,10 @@ enum { full; ops will either succeed (e.g., delete) or return EDQUOT or ENOSPC. */ LIBRADOS_OPERATION_FULL_TRY = 64, + /* + * Mainly for delete op + */ + LIBRADOS_OPERATION_FULL_FORCE = 128, }; /** @} */ diff --git a/src/include/rados/librados.hpp b/src/include/rados/librados.hpp index 5c6abdb63f0e..eac0b114b486 100644 --- a/src/include/rados/librados.hpp +++ b/src/include/rados/librados.hpp @@ -278,6 +278,8 @@ namespace librados // marked full; ops will either succeed (e.g., delete) or return // EDQUOT or ENOSPC OPERATION_FULL_TRY = LIBRADOS_OPERATION_FULL_TRY, + //mainly for delete + OPERATION_FULL_FORCE = LIBRADOS_OPERATION_FULL_FORCE, }; /* diff --git a/src/librados/librados.cc b/src/librados/librados.cc index aa18fd0e2c1d..8955940b9882 100644 --- a/src/librados/librados.cc +++ b/src/librados/librados.cc @@ -1423,6 +1423,8 @@ static int translate_flags(int flags) op_flags |= CEPH_OSD_FLAG_IGNORE_OVERLAY; if (flags & librados::OPERATION_FULL_TRY) op_flags |= CEPH_OSD_FLAG_FULL_TRY; + if (flags & librados::OPERATION_FULL_FORCE) + op_flags |= CEPH_OSD_FLAG_FULL_FORCE; return op_flags; }