Fix for:
CID 728000: Uninitialized scalar field (UNINIT_CTOR)
uninit_member: Non-static class member wait_ms is not initialized
in this constructor nor in any functions that it calls.
CID 727995: Uninitialized scalar field (UNINIT_CTOR)
CID 727996: Uninitialized scalar field (UNINIT_CTOR)
CID 727998: Uninitialized scalar field (UNINIT_CTOR)
CID 727999: Uninitialized scalar field (UNINIT_CTOR)
uninit_member: Non-static class member unwritable is not initialized
in this constructor nor in any functions that it calls.
uninit_member: Non-static class member version is not initialized
in this constructor nor in any functions that it calls.
uninit_member: Non-static class member size is not initialized
in this constructor nor in any functions that it calls.
CID 727997: Uninitialized scalar field (UNINIT_CTOR)
uninit_member: Non-static class member unwritable is not initialized
in this constructor nor in any functions that it calls.
uninit_member: Non-static class member size is not initialized
in this constructor nor in any functions that it calls.
CID 727994: Uninitialized scalar field (UNINIT_CTOR)
uninit_member: Non-static class member version is not initialized
in this constructor nor in any functions that it calls.
Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
Add release note
New librados interface
New pg_nls_response_t over the wire protocol
Ignore internal namespace (.ceph_internal)
Enhance ObjListCtx to keep independent IoCtxImpl so nspace won't change out from under listing code
Add ListObject with private implementation ListObjectImpl to return from iterator
Add EINVAL error for old librados interface when LIBRADOS_ALL_NSPACES set
Add throw to old librados c++ interface when all_nspaces set
Fixes: #9031
Signed-off-by: David Zafman <dzafman@redhat.com>
Fix for:
[src/key_value_store/cls_kvs.cc:383] -> [src/key_value_store/cls_kvs.cc:386]:
(performance) Variable 'r' is reassigned a value before the old one has been used.
Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
There are several non-standard errno values used. There is still work to
do on addressing errno portability in Ceph, and this disables kvstore on
non-Linux platforms until that work is complete.
Signed-off-by: Noah Watkins <noahwatkins@gmail.com>
Use the newly-discovered (for me) deprecated attribute to mark the old
get_version() method and point users toward get_version64(). And fix a
couple of users in the kvstore code!
Signed-off-by: Sage Weil <sage@inktank.com>
- Enabling subdir objects
- Created a Makefile-env.am with basic automake init
- Created .am files per subdir, included from src/Makefile.am
Signed-off-by: Roald J. van Loon <roaldvanloon@gmail.com>
types.h redefines __le* to ceph_le* to ensure endian
safety.
Signed-off-by: Samuel Just <sam.just@inktank.com>
Reviewed-by: Greg Farnum <greg@inktank.com>
Fix "Variable 'r' is assigned a value that is never used." issue from
cppcheck. Check return value and print warning if in verbose mode.
Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
Fix some cases of "(performance) Variable 'err' is reassigned a
value before the old one has been used." issues from cppcheck.
Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
Call AioCompletion::release() if the completion is no longer needed.
CID 727978 (#1-2 of 2): Resource leak (RESOURCE_LEAK)
leaked_storage: Variable "obj_aioc" going out of scope leaks the
storage it points to.
Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
Call AioCompletion::release() if the completion is no longer needed.
CID 727979 (#1-2 of 2): Resource leak (RESOURCE_LEAK)
leaked_storage: Variable "a" going out of scope leaks the storage
it points to.
Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
Call AioCompletion::release() if the completion is no longer
needed.
CID 727980 (#1-4 of 4): Resource leak (RESOURCE_LEAK)
leaked_storage: Variable "aioc" going out of scope leaks
the storage it points to.
Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
Call AioCompletion::release() if the completion is no longer
needed to free the resources.
CID 727981 (#3 of 3): Resource leak (RESOURCE_LEAK)
leaked_storage: Variable "top_aioc" going out of scope leaks the
storage it points to.
Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
Call AioCompletion::release() if the completion is no longer
needed to free the resources.
CID 727983 : Resource leak (RESOURCE_LEAK)
leaked_storage: Variable "aioc" going out of scope leaks the
storage it points to.
Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
CID 727982 (#1 of 1): Resource leak (RESOURCE_LEAK)
leaked_storage: Variable "aioc" going out of scope leaks the storage
it points to.
Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
Call AioCompletion::release() if the completion is no longer
needed to free the resources.
CID 727976 Resource leak (CWE-404)
CID 727977 Resource leak (CWE-404)
Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
Use empty() since it should be prefered as it has, following the
standard, a constant time complexity regardless of the containter
type. The same is not guaranteed for size().
Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
Use empty() since it should be prefered as it has, following the
standard, a constant time complexity regardless of the containter
type. The same is not guaranteed for size().
Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
cls_log needed __attribute__((format(printf..)) to allow the compiler
to crosscheck format strings and arguments. After adding that, there
needed to be a bunch of fixups for %ll, and a few changes for missing
arguments, etc. uncovered by the checking.
Fixes: #3970
Signed-off-by: Dan Mick <dan.mick@inktank.com>
Reviewed-by: Yehuda Sadeh <yehuda@inktank.com>
Remove all existing usage, but leave the definition so third-party
class plugins don't break.
The public flag let *any* user execute a class method, as long
as they had read and/or write access as the method required. This is
better managed by the new osd caps infrastructure, and it was
entirely undocumented and unused, so it should be safe to remove.
Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
Uses one index object and many sub objects to store key-value pairs. The pairs
are stored in the omaps of librados objects. The index contains keys
corresponding to the highest key in an object, and values that contain the
name of the object where the key range is stored. The tree guarantees that
the number of pairs in an object will be > k and < 2k for a user-specified k.
KvStoreBench contains benchmarking tests.
Signed-off-by: Eleanor Cawthon <eleanor.cawthon@inktank.com>