Actions
Bug #15535
closedMissing export for rados_aio_get_version in src/include/rados/librados.h
Status:
Resolved
Priority:
Normal
Assignee:
-
Category:
librados
Target version:
-
% Done:
0%
Source:
Community (dev)
Tags:
Backport:
jewel
Regression:
No
Severity:
3 - minor
Reviewed:
Affected Versions:
ceph-qa-suite:
Pull request ID:
Crash signature (v1):
Crash signature (v2):
Description
Hi,
The function rados_aio_get_version is correctly defined and implemented in src/librados/librados.cc. However without a corresponding declaration in librados.h specifying it has scope CEPH_RADOS_API, the function ends up having no external visibility in librados.so; and so is uncallable by library users.
Updated by Jim Wright about 8 years ago
This diff fixes the issue, however I'm unsure if the doxygen comments are correct as I just copied them from rados_aio_get_return_value.
diff --git a/src/include/rados/librados.h b/src/include/rados/librados.h index 3aebf20..9048ad7 100644 --- a/src/include/rados/librados.h +++ b/src/include/rados/librados.h @@ -1706,6 +1706,22 @@ CEPH_RADOS_API int rados_aio_is_safe_and_cb(rados_completion_t c); CEPH_RADOS_API int rados_aio_get_return_value(rados_completion_t c); /** + * Get the version of an asychronous operation's object + * + * The return value is set when the operation is complete or safe, + * whichever comes first. + * + * @pre The operation is safe or complete + * + * @note BUG: complete callback may never be called when the safe + * message is received before the complete message + * + * @param c async operation to inspect + * @returns version number of the operation's object + */ +CEPH_RADOS_API uint64_t rados_aio_get_version(rados_completion_t c); + +/** * Release a completion * * Call this when you no longer need the completion. It may not be
Updated by Sage Weil almost 8 years ago
- Status changed from New to Pending Backport
- Backport set to jewel
Updated by Nathan Cutler almost 8 years ago
master PR: https://github.com/ceph/ceph/pull/9458
Updated by Nathan Cutler almost 8 years ago
- Copied to Backport #16153: jewel: Missing export for rados_aio_get_version in src/include/rados/librados.h added
Updated by Loïc Dachary almost 8 years ago
- Status changed from Pending Backport to Resolved
Actions