if "pool full" and "pool nearfull" show the same,
we will not be able to distinguish between these two scenes in health check.
Signed-off-by: huanwen ren <ren.huanwen@zte.com.cn>
The logic to compute the number of bytes to copy with a chunked file
upload was failing to take into account the amount of data that had been
consumed, but was still pending in the parse buffer. This would cause
strange behavior ranging from "just works" to "fails". There was also a
strange "works, one byte at a time" mode. Using the correct stream_pos
offset eliminates the bad behavior.
This fix also adds debug statements to make the correct behavior easier to see.
Fixes: http://tracker.ceph.com/issues/21003
Signed-off-by: Marcus Watts <mwatts@redhat.com>
It would be a pain if we have to call 'ceph osd dump --format=json-pretty'
to find out these each time...
Demo output:
(1) ceph osd pool application get
{
"cephfs_data_b": {
"cephfs": {}
},
"cephfs_metadata_a": {
"cephfs": {}
},
"test_pool": {
"rbd": {
"test": "me"
}
}
}
(2) ceph osd pool application get test_pool
{
"rbd": {
"test": "me"
}
}
(3) ceph osd pool application get test_pool rbd
{
"test": "me"
}
(4) ceph osd pool application get test_pool rbd test
me
Fixes: http://tracker.ceph.com/issues/20976
Signed-off-by: xie xingguo <xie.xingguo@zte.com.cn>
Adding the bits of changelog that went in post 12.1.3, one of the PRs
was directly cherry-picked onto Luminous and hence does not have a PR
reference.
Signed-off-by: Abhishek Lekshmanan <abhishek@suse.com>
User may specify a rule with the same name of the pool that it serves.
Since a pool can be renamed, so does the rule.
Signed-off-by: xie xingguo <xie.xingguo@zte.com.cn>
The following warning appears during build:
In file included from ceph/src/test/osd/TestOSDMap.cc:2:0:
ceph/src/googletest/googletest/include/gtest/gtest.h: In instantiation of 'testing::AssertionResult testing::internal::CmpHelperEQ(const char*, const char*, const T1&, const T2&) [with T1 = int; T2 = long unsigned int]':
ceph/src/googletest/googletest/include/gtest/gtest.h:1421:23: required from 'static testing::AssertionResult testing::internal::EqHelper<lhs_is_null_literal>::Compare(const char*, const char*, const T1&, const T2&) [with T1 = int; T2 = long unsigned int; bool lhs_is_null_literal = false]'
ceph/src/test/osd/TestOSDMap.cc:456:3: required from here
ceph/src/googletest/googletest/include/gtest/gtest.h:1392:11: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
if (lhs == rhs) {
^
Signed-off-by: Jos Collin <jcollin@redhat.com>
s3 allows for zero sized objects, which can be
created using chunked uploads. It is important to
call "recv_body (and ChunkMeta::create_next()) even
on zero sized objects, so that the proper chunk signature
can be presented at signature verification time.
Fixes: http://tracker.ceph.com/issues/21000
Signed-off-by: Marcus Watts <mwatts@redhat.com>
commit 5334622a83 changed cls_log_list()
to only return the next marker if the results were truncated
this broke RGWMetaSyncShardCR in rgw_sync.cc, which relies on
cls_log_list() to track its max_marker
Fixes: http://tracker.ceph.com/issues/20906
Signed-off-by: Casey Bodley <cbodley@redhat.com>
rbd: fix logically dead code in function list_process_image
Reviewed-by: Jason Dillaman <dillaman@redhat.com>
Reviewed-by: Dongsheng Yang <dongsheng.yang@easystack.cn>