Commit Graph

144158 Commits

Author SHA1 Message Date
Kefu Chai
ffece5ff61 test/mon/test_config_map: free CephContext created with new
before this change, we create a new cct instance with `new`, but
we never free this instance after done with it. and LeakSanitizer
points this out:

```
Indirect leak of 10880000 byte(s) in 1 object(s) allocated from:
    #0 0x561afe148fed in operator new(unsigned long) (/home/jenkins-build/build/workspace/ceph-pull-requests/build/bin/unittest_config_map+0x1c2fed) (BuildId: 3ce9eeed38cee335628fa74fdd08cd215b15019e)
    #1 0x7f37dc9ac189 in __gnu_cxx::new_allocator<ceph::logging::ConcreteEntry>::allocate(unsigned long, void const*) /usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/ext/new_allocator.h:127:27
    #2 0x7f37dc9ab563 in std::allocator<ceph::logging::ConcreteEntry>::allocate(unsigned long) /usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/allocator.h:185:32
    #3 0x7f37dc9ab563 in boost::circular_buffer<ceph::logging::ConcreteEntry, std::allocator<ceph::logging::ConcreteEntry> >::allocate(unsigned long) /opt/ceph/include/boost/circular_buffer/base.hpp:2396:39
    #4 0x7f37dc9ab2c0 in boost::circular_buffer<ceph::logging::ConcreteEntry, std::allocator<ceph::logging::ConcreteEntry> >::initialize_buffer(unsigned long) /opt/ceph/include/boost/circular_buffer/base.hpp:2494:18
    #5 0x7f37dc9a5192 in boost::circular_buffer<ceph::logging::ConcreteEntry, std::allocator<ceph::logging::ConcreteEntry> >::circular_buffer(unsigned long, std::allocator<ceph::logging::ConcreteEntry> const&) /opt/ceph/include/boost/circular_buffer/base.hpp:1039:9
    #6 0x7f37dc9981e4 in ceph::logging::Log::Log(ceph::logging::SubsystemMap const*) /home/jenkins-build/build/workspace/ceph-pull-requests/src/log/Log.cc:53:5
    #7 0x7f37dbc6e96d in ceph::common::CephContext::CephContext(unsigned int, ceph::common::CephContext::create_options const&) /home/jenkins-build/build/workspace/ceph-pull-requests/src/common/ceph_context.cc:729:16
    #8 0x7f37dbc6d93b in ceph::common::CephContext::CephContext(unsigned int, code_environment_t, int) /home/jenkins-build/build/workspace/ceph-pull-requests/src/common/ceph_context.cc:697:5
    #9 0x561afe14e983 in ConfigMap_add_option_Test::TestBody() /home/jenkins-build/build/workspace/ceph-pull-requests/src/test/mon/test_config_map.cc:58:18
    #10 0x561afe2689b6 in void testing::internal::HandleSehExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) /home/jenkins-build/build/workspace/ceph-pull-requests/src/googletest/googletest/src/gtest.cc:2605:10
    #11 0x561afe221262 in void testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) /home/jenkins-build/build/workspace/ceph-pull-requests/src/googletest/googletest/src/gtest.cc:2641:14
    #12 0x561afe1d1f7c in testing::Test::Run() /home/jenkins-build/build/workspace/ceph-pull-requests/src/googletest/googletest/src/gtest.cc:2680:5
    #13 0x561afe1d3fb2 in testing::TestInfo::Run() /home/jenkins-build/build/workspace/ceph-pull-requests/src/googletest/googletest/src/gtest.cc:2858:11
    #14 0x561afe1d55eb in testing::TestSuite::Run() /home/jenkins-build/build/workspace/ceph-pull-requests/src/googletest/googletest/src/gtest.cc:3012:28
    #15 0x561afe1f2a78 in testing::internal::UnitTestImpl::RunAllTests() /home/jenkins-build/build/workspace/ceph-pull-requests/src/googletest/googletest/src/gtest.cc:5723:44
    #16 0x561afe2711e6 in bool testing::internal::HandleSehExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool>(testing::internal::UnitTestImpl*, bool (testing::internal::UnitTestImpl::*)(), char const*) /home/jenkins-build/build/workspace/ceph-pull-requests/src/googletest/googletest/src/gtest.cc:2605:10
    #17 0x561afe227bd2 in bool testing::internal::HandleExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool>(testing::internal::UnitTestImpl*, bool (testing::internal::UnitTestImpl::*)(), char const*) /home/jenkins-build/build/workspace/ceph-pull-requests/src/googletest/googletest/src/gtest.cc:2641:14
    #18 0x561afe1f1e02 in testing::UnitTest::Run() /home/jenkins-build/build/workspace/ceph-pull-requests/src/googletest/googletest/src/gtest.cc:5306:10
    #19 0x561afe176ec0 in RUN_ALL_TESTS() /home/jenkins-build/build/workspace/ceph-pull-requests/src/googletest/googletest/include/gtest/gtest.h:2486:46
    #20 0x561afe176e51 in main /home/jenkins-build/build/workspace/ceph-pull-requests/src/googletest/googlemock/src/gmock_main.cc:70:10
    #21 0x7f37d9397d8f in __libc_start_call_main csu/../sysdeps/nptl/libc_start_call_main.h:58:16
```

so in this change, we manage the `CephContext` pointer with a smart
pointer. because the size of CephContext could be large, we don't create
it on stack.

Signed-off-by: Kefu Chai <tchaikov@gmail.com>
2024-03-26 11:06:54 +08:00
Kefu Chai
742d5fa4ab
Merge pull request #56455 from tchaikov/wip-test-test_rgw_iam_policy-fix-leak
test/rgw/test_rgw_iam_policy: do not increase ref when creating intru…

Reviewed-by: Casey Bodley <cbodley@redhat.com>
2024-03-26 10:09:56 +08:00
Adam King
c743075db4
Merge pull request #55068 from phlogistonjohn/jjm-cephadm-smb-svc-spec
cephadm: add a new SMB service to the mgr module

Reviewed-by: Adam King <adking@redhat.com>
2024-03-25 16:24:54 -04:00
Yuri Weinstein
3b8cc0f3eb
Merge pull request #56142 from Matan-B/wip-matanb-fix_hobject_to_str
common/hobject: fix hobject_t::to_str()

Reviewed-by: Ronen Friedman <rfriedma@redhat.com>
Reviewed-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
2024-03-25 11:30:45 -07:00
Yuri Weinstein
d4caf2ce70
Merge pull request #55676 from baergj/cod-for-all-upstream
kv/RocksDBStore: Configure compact-on-deletion for all CFs

Reviewed-by: Igor Fedotov <ifedotov@suse.com>
Reviewed-by: Mark Nelson <mnelson@redhat.com>
2024-03-25 11:29:46 -07:00
Yuri Weinstein
a3e993114c
Merge pull request #55599 from ifed01/wip-ifed-kill-build-warns
os/bluestore: eliminate build warnings

Reviewed-by: Ronen Friedman <rfriedma@redhat.com>
Reviewed-by: Adam Kupczyk <akupczyk@redhat.com>
2024-03-25 11:28:58 -07:00
Yuri Weinstein
58b2460876
Merge pull request #55562 from Matan-B/wip-matanb-fix-lookup-purged-snaps
osd/SnapMapper: fix _lookup_purged_snap

Reviewed-by: Samuel Just <sjust@redhat.com>
Reviewed-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
Reviewed-by: Ronen Friedman <rfriedma@redhat.com>
2024-03-25 11:27:16 -07:00
Laura Flores
be90c592d7
Merge pull request #55609 from ljflores/wip-telemetry-opt-in-to-new-collection
qa/workunits: opt in to new collection after upgrade from reef to main
2024-03-25 12:13:43 -05:00
Kefu Chai
2ee77b8bd6 test/rgw/test_rgw_iam_policy: do not increase ref when creating intrusive_ptr<CephContext>
before this change, we increment the refcount when constructing
`cct` instrusive_ptr, but nobody owns this smart pointer. also,
`CephContext` 's constructor set its refcount to 1. so, when the
test finishes, the refcount is 1, and this leads to a leakage of
the `CephContext` instance. and LeakSanitizer points this out:

```
Indirect leak of 10880000 byte(s) in 1 object(s) allocated from:
    #0 0xaaaac359c7c8 in operator new(unsigned long) (/home/jenkins-build/build/workspace/ceph-pull-requests-arm64/build/bin/unittest_rgw_iam_policy+0x211c7c8) (BuildId: 060fadb10da261b52fd5757c7b1e9812d34542f1)
    #1 0xffff96f764e4 in __gnu_cxx::new_allocator<ceph::logging::ConcreteEntry>::allocate(unsigned long, void const*) /usr/bin/../lib/gcc/aarch64-linux-gnu/11/../../../../include/c++/11/ext/new_allocator.h:127:27
    #2 0xffff96f757cc in std::allocator<ceph::logging::ConcreteEntry>::allocate(unsigned long) /usr/bin/../lib/gcc/aarch64-linux-gnu/11/../../../../include/c++/11/bits/allocator.h:185:32
    #3 0xffff96f757cc in boost::circular_buffer<ceph::logging::ConcreteEntry, std::allocator<ceph::logging::ConcreteEntry> >::allocate(unsigned long) /home/jenkins-build/build/workspace/ceph-pull-requests-arm64/build/boost/include/boost/circular_buffer/base.hpp:2396:39
    #4 0xffff96f75500 in boost::circular_buffer<ceph::logging::ConcreteEntry, std::allocator<ceph::logging::ConcreteEntry> >::initialize_buffer(unsigned long) /home/jenkins-build/build/workspace/ceph-pull-requests-arm64/build/boost/include/boost/circular_buffer/base.hpp:2494:18
    #5 0xffff96f6ec4c in boost::circular_buffer<ceph::logging::ConcreteEntry, std::allocator<ceph::logging::ConcreteEntry> >::circular_buffer(unsigned long, std::allocator<ceph::logging::ConcreteEntry> const&) /home/jenkins-build/build/workspace/ceph-pull-requests-arm64/build/boost/include/boost/circular_buffer/base.hpp:1039:9
    #6 0xffff96f63528 in ceph::logging::Log::Log(ceph::logging::SubsystemMap const*) /home/jenkins-build/build/workspace/ceph-pull-requests-arm64/src/log/Log.cc:53:5
    #7 0xffff96045300 in ceph::common::CephContext::CephContext(unsigned int, ceph::common::CephContext::create_options const&) /home/jenkins-build/build/workspace/ceph-pull-requests-arm64/src/common/ceph_context.cc:729:16
    #8 0xffff960446ec in ceph::common::CephContext::CephContext(unsigned int, code_environment_t, int) /home/jenkins-build/build/workspace/ceph-pull-requests-arm64/src/common/ceph_context.cc:697:5
    #9 0xaaaac3629238 in IPPolicyTest::IPPolicyTest() /home/jenkins-build/build/workspace/ceph-pull-requests-arm64/src/test/rgw/test_rgw_iam_policy.cc:864:15
    #10 0xaaaac3628da0 in IPPolicyTest_MaskedIPOperations_Test::IPPolicyTest_MaskedIPOperations_Test() /home/jenkins-build/build/workspace/ceph-pull-requests-arm64/src/test/rgw/test_rgw_iam_policy.cc:869:1
    #11 0xaaaac3628d3c in testing::internal::TestFactoryImpl<IPPolicyTest_MaskedIPOperations_Test>::CreateTest() /home/jenkins-build/build/workspace/ceph-pull-requests-arm64/src/googletest/googletest/include/gtest/internal/gtest-internal.h:472:44
```

so, in this change, we do not increase the refcount when creating cct.

Signed-off-by: Kefu Chai <tchaikov@gmail.com>
2024-03-25 23:00:27 +08:00
Kefu Chai
ac09ac8c56
Merge pull request #56437 from tchaikov/wip-cephcontext-leak-fixes
test: fix the leakages of `CephContext` identified by LeakSanitizer

Reviewed-by: Casey Bodley <cbodley@redhat.com>
2024-03-25 22:18:26 +08:00
Matan Breizman
f19765ec08
Merge pull request #56173 from Matan-B/wip-matanb-clone-overlap-doc
doc/dev: osd_internals/snaps.rst: add clone_overlap doc

Reviewed-by: Ilya Dryomov <idryomov@gmail.com>
Reviewed-by: Radosław Zarzyński <rzarzyns@redhat.com>
Reviewed-by: Anthony D'Atri <anthonyeleven@users.noreply.github.com>
Reviewed-by: Greg Farnum <gfarnum@redhat.com>
Reviewed-by: Zac Dover <zac.dover@proton.me>
2024-03-25 12:15:22 +02:00
Nizamudeen A
d3ec86a124
Merge pull request #56357 from rhcs-dashboard/sanitize-users-form
mgr/dashboard: sanitize dashboard user creation

Reviewed-by: Ankush Behl <cloudbehl@gmail.com>
Reviewed-by: Nizamudeen A <nia@redhat.com>
2024-03-25 15:31:15 +05:30
Kefu Chai
9cd0f817b9
Merge pull request #56438 from tchaikov/wip-test-unittest-mem-fix-leak
test/common: do not leak in MemoryIsZeroSmallTest

Reviewed-by: Rongqi Sun <sunrongqi@huawei.com>
2024-03-25 15:38:17 +08:00
Venky Shankar
bc2aba4272 Merge PR #56276 into main
* refs/pull/56276/head:
	MDS metrics typo fix

Reviewed-by: Jos Collin <jcollin@redhat.com>
Reviewed-by: Leonid Usov <leonid.usov@ibm.com>
Reviewed-by: Venky Shankar <vshankar@redhat.com>
2024-03-25 10:27:42 +05:30
Venky Shankar
69e62a9b6c Merge PR #56293 into main
* refs/pull/56293/head:
	qa/suites/fs: link in pg_health ignorelist
	qa/cephfs: add probabilistic ignorelist for pg_health

Reviewed-by: Venky Shankar <vshankar@redhat.com>
Reviewed-by: Leonid Usov <leonid.usov@ibm.com>
2024-03-25 10:21:58 +05:30
Nizamudeen A
a8b1b0ed7a
Merge pull request #56164 from rhcs-dashboard/wip-64890-main
mgr/dashboard: fix NVMeoF API

Reviewed-by: Nizamudeen A <nia@redhat.com>
2024-03-25 10:19:40 +05:30
Nizamudeen A
ad40d6f1bb
Merge pull request #56295 from rhcs-dashboard/cpu-usage-rm-danger-indicator
mgr/dashboard: rm warning/error threshold for cpu usage

Reviewed-by: Aashish Sharma <aasharma@redhat.com>
Reviewed-by: Adam King <adking@redhat.com>
Reviewed-by: afreen23 <NOT@FOUND>
Reviewed-by: ivoalmeida <NOT@FOUND>
2024-03-25 10:16:09 +05:30
Nizamudeen A
70cd1bc8f4
Merge pull request #56297 from rhcs-dashboard/grafana-issue-multi-cluster
mgr/dashboard: update grafana api url when switching cluster

Reviewed-by: Aashish Sharma <aasharma@redhat.com>
Reviewed-by: Ankush Behl <cloudbehl@gmail.com>
2024-03-25 10:14:44 +05:30
Kefu Chai
4deebd6294 test/common: do not leak in MemoryIsZeroSmallTest
before this change, we allocate memory chunks with specified
size using `new []`, but we never free them. when testing with
LeakSanitizer enabled, it rightly points identifies the leakage:

```
Direct leak of 8754 byte(s) in 184 object(s) allocated from:
    #0 0x55c0b2470f0d in operator new[](unsigned long) (/home/jenkins-build/build/workspace/ceph-pull-requests/build/bin/unittest_memory+0x196f0d) (BuildId: d3267dd8819427b804c4729e0467dbe7601fb321)
    #1 0x55c0b247456c in MemoryIsZeroSmallTest_MemoryIsZeroTestSmall_Test::TestBody() /home/jenkins-build/build/workspace/ceph-pull-requests/src/test/common/test_memory.cc:33:18
    #2 0x55c0b2598ee6 in void testing::internal::HandleSehExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) /home/jenkins-build/build/workspace/ceph-pull-requests/src/googletest/googletest/src/gtest.cc:2605:10
    #3 0x55c0b2553b92 in void testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) /home/jenkins-build/build/workspace/ceph-pull-requests/src/googletest/googletest/src/gtest.cc:2641:14
    #4 0x55c0b25049dc in testing::Test::Run() /home/jenkins-build/build/workspace/ceph-pull-requests/src/googletest/googletest/src/gtest.cc:2680:5
    #5 0x55c0b2506a12 in testing::TestInfo::Run() /home/jenkins-build/build/workspace/ceph-pull-requests/src/googletest/googletest/src/gtest.cc:2858:11
    #6 0x55c0b250804b in testing::TestSuite::Run() /home/jenkins-build/build/workspace/ceph-pull-requests/src/googletest/googletest/src/gtest.cc:3012:28
    #7 0x55c0b25254d8 in testing::internal::UnitTestImpl::RunAllTests() /home/jenkins-build/build/workspace/ceph-pull-requests/src/googletest/googletest/src/gtest.cc:5723:44
    #8 0x55c0b25a16f6 in bool testing::internal::HandleSehExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool>(testing::internal::UnitTestImpl*, bool (testing::internal::UnitTestImpl::*)(), char const*) /home/jenkins-build/build/workspace/ceph-pull-requests/src/googletest/googletest/src/gtest.cc:2605:10
    #9 0x55c0b255a502 in bool testing::internal::HandleExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool>(testing::internal::UnitTestImpl*, bool (testing::internal::UnitTestImpl::*)(), char const*) /home/jenkins-build/build/workspace/ceph-pull-requests/src/googletest/googletest/src/gtest.cc:2641:14
    #10 0x55c0b2524862 in testing::UnitTest::Run() /home/jenkins-build/build/workspace/ceph-pull-requests/src/googletest/googletest/src/gtest.cc:5306:10
    #11 0x55c0b24ab4c0 in RUN_ALL_TESTS() /home/jenkins-build/build/workspace/ceph-pull-requests/src/googletest/googletest/include/gtest/gtest.h:2486:46
    #12 0x55c0b24ab451 in main /home/jenkins-build/build/workspace/ceph-pull-requests/src/googletest/googlemock/src/gmock_main.cc:70:10
    #13 0x7f45e065ad8f in __libc_start_call_main csu/../sysdeps/nptl/libc_start_call_main.h:58:16
```

in this change, we free the allocate memory.

Signed-off-by: Kefu Chai <tchaikov@gmail.com>
2024-03-25 11:25:25 +08:00
Kefu Chai
e316c2e481 test/common: avoid leakage of CephContext
before this change, in test_util.cc, we increment the refcount of
when constructing it. but at that moment, nobody really owns it.
also, `CephContext` 's refcount is set to 1 in its constructor.
so, we should not do this. otherwise, the created `CephContext`
is leaked as LeakSanitizer rightly points out:
```
Indirect leak of 10880000 byte(s) in 1 object(s) allocated from:
    #0 0x5632320d27ed in operator new(unsigned long) (/home/jenkins-build/build/workspace/ceph-pull-requests/build/bin/unittest_util+0x1917ed) (BuildId: ff1df1455bd07b651ad580584a17ea204afeb36e)
    #1 0x7ff9d535b189 in __gnu_cxx::new_allocator<ceph::logging::ConcreteEntry>::allocate(unsigned long, void const*) /usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/ext/new_allocator.h:127:27
    #2 0x7ff9d535a563 in std::allocator<ceph::logging::ConcreteEntry>::allocate(unsigned long) /usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/allocator.h:185:32
    #3 0x7ff9d535a563 in boost::circular_buffer<ceph::logging::ConcreteEntry, std::allocator<ceph::logging::ConcreteEntry> >::allocate(unsigned long) /opt/ceph/include/boost/circular_buffer/base.hpp:2396:39
    #4 0x7ff9d535a2c0 in boost::circular_buffer<ceph::logging::ConcreteEntry, std::allocator<ceph::logging::ConcreteEntry> >::initialize_buffer(unsigned long) /opt/ceph/include/boost/circular_buffer/base.hpp:2494:18
    #5 0x7ff9d5354192 in boost::circular_buffer<ceph::logging::ConcreteEntry, std::allocator<ceph::logging::ConcreteEntry> >::circular_buffer(unsigned long, std::allocator<ceph::logging::ConcreteEntry> const&) /opt/ceph/include/boost/circular_buffer/base.hpp:1039:9
    #6 0x7ff9d53471e4 in ceph::logging::Log::Log(ceph::logging::SubsystemMap const*) /home/jenkins-build/build/workspace/ceph-pull-requests/src/log/Log.cc:53:5
    #7 0x7ff9d461d96d in ceph::common::CephContext::CephContext(unsigned int, ceph::common::CephContext::create_options const&) /home/jenkins-build/build/workspace/ceph-pull-requests/src/common/ceph_context.cc:729:16
    #8 0x7ff9d461c93b in ceph::common::CephContext::CephContext(unsigned int, code_environment_t, int) /home/jenkins-build/build/workspace/ceph-pull-requests/src/common/ceph_context.cc:697:5
    #9 0x5632320d52e0 in util_collect_sys_info_Test::TestBody() /home/jenkins-build/build/workspace/ceph-pull-requests/src/test/common/test_util.cc:34:27
    #10 0x563232205c16 in void testing::internal::HandleSehExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) /home/jenkins-build/build/workspace/ceph-pull-requests/src/googletest/googletest/src/gtest.cc:2605:10
    #11 0x5632321c2742 in void testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) /home/jenkins-build/build/workspace/ceph-pull-requests/src/googletest/googletest/src/gtest.cc:2641:14
    #12 0x5632321736dc in testing::Test::Run() /home/jenkins-build/build/workspace/ceph-pull-requests/src/googletest/googletest/src/gtest.cc:2680:5
```
in this change, instead of using a raw pointer, let's
use `boost::intrusive_ptr<CephContext>` to manage the lifecyle
of `CephContext`, this also address the leakage reported by
LeakSanitizer.

the same applies to common/test_context.cc

Signed-off-by: Kefu Chai <tchaikov@gmail.com>
2024-03-25 08:25:34 +08:00
Kefu Chai
dc53b767e3 test: do not increase ref when creating intrusive_ptr<CephContext>
before this change, we increment the refcount when constructing
`cct` instrusive_ptr, but nobody owns this smart pointer. also,
`CephContext` 's constructor set its refcount to 1. so, when the
test finishes, the refcount is 1, and this leads to a leakage of
the `CephContext` instance, this not only annoys ASan, and defeats
the purpose of 14d878c8.
```
Indirect leak of 10880000 byte(s) in 1 object(s) allocated from:
    #0 0x5564d173537d in operator new(unsigned long) (/home/jenkins-build/build/workspace/ceph-pull-requests/build/bin/unittest_ipaddr+0x19b37d) (BuildId: 45c0c7f28b253c04fcb7bb1a43aed52a5526d734)
    #1 0x7fe7f2ccd189 in __gnu_cxx::new_allocator<ceph::logging::ConcreteEntry>::allocate(unsigned long, void const*) /usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/ext/new_allocator.h:127:27
    #2 0x7fe7f2ccc563 in std::allocator<ceph::logging::ConcreteEntry>::allocate(unsigned long) /usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/allocator.h:185:32
    #3 0x7fe7f2ccc563 in boost::circular_buffer<ceph::logging::ConcreteEntry, std::allocator<ceph::logging::ConcreteEntry> >::allocate(unsigned long) /opt/ceph/include/boost/circular_buffer/base.hpp:2396:39
    #4 0x7fe7f2ccc2c0 in boost::circular_buffer<ceph::logging::ConcreteEntry, std::allocator<ceph::logging::ConcreteEntry> >::initialize_buffer(unsigned long) /opt/ceph/include/boost/circular_buffer/base.hpp:2494:18
    #5 0x7fe7f2cc6192 in boost::circular_buffer<ceph::logging::ConcreteEntry, std::allocator<ceph::logging::ConcreteEntry> >::circular_buffer(unsigned long, std::allocator<ceph::logging::ConcreteEntry> const&) /opt/ceph/include/boost/circular_buffer/base.hpp:1039:9
    #6 0x7fe7f2cb91e4 in ceph::logging::Log::Log(ceph::logging::SubsystemMap const*) /home/jenkins-build/build/workspace/ceph-pull-requests/src/log/Log.cc:53:5
    #7 0x7fe7f1f8f96d in ceph::common::CephContext::CephContext(unsigned int, ceph::common::CephContext::create_options const&) /home/jenkins-build/build/workspace/ceph-pull-requests/src/common/ceph_context.cc:729:16
    #8 0x7fe7f1f8e93b in ceph::common::CephContext::CephContext(unsigned int, code_environment_t, int) /home/jenkins-build/build/workspace/ceph-pull-requests/src/common/ceph_context.cc:697:5
    #9 0x5564d1752eb9 in pick_address_find_ip_in_subnet_list_Test::TestBody() /home/jenkins-build/build/workspace/ceph-pull-requests/src/test/test_ipaddr.cc:706:47
    #10 0x5564d18694d6 in void testing::internal::HandleSehExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) /home/jenkins-build/build/workspace/ceph-pull-requests/src/googletest/googletest/src/gtest.cc:2605:10
    #11 0x5564d1820fc2 in void testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) /home/jenkins-build/build/workspace/ceph-pull-requests/src/googletest/googletest/src/gtest.cc:2641:14
    #12 0x5564d17d19dc in testing::Test::Run() /home/jenkins-build/build/workspace/ceph-pull-requests/src/googletest/googletest/src/gtest.cc:2680:5
    #13 0x5564d17d3a12 in testing::TestInfo::Run() /home/jenkins-build/build/workspace/ceph-pull-requests/src/googletest/googletest/src/gtest.cc:2858:11
    #14 0x5564d17d504b in testing::TestSuite::Run() /home/jenkins-build/build/workspace/ceph-pull-requests/src/googletest/googletest/src/gtest.cc:3012:28
    #15 0x5564d17f24d8 in testing::internal::UnitTestImpl::RunAllTests() /home/jenkins-build/build/workspace/ceph-pull-requests/src/googletest/googletest/src/gtest.cc:5723:44
    #16 0x5564d1871d06 in bool testing::internal::HandleSehExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool>(testing::internal::UnitTestImpl*, bool (testing::internal::UnitTestImpl::*)(), char const*) /home/jenkins-build/build/workspace/ceph-pull-requests/src/googletest/googletest/src/gtest.cc:2605:10
    #17 0x5564d1827932 in bool testing::internal::HandleExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool>(testing::internal::UnitTestImpl*, bool (testing::internal::UnitTestImpl::*)(), char const*) /home/jenkins-build/build/workspace/ceph-pull-requests/src/googletest/googletest/src/gtest.cc:2641:14
    #18 0x5564d17f1862 in testing::UnitTest::Run() /home/jenkins-build/build/workspace/ceph-pull-requests/src/googletest/googletest/src/gtest.cc:5306:10
    #19 0x5564d1775d80 in RUN_ALL_TESTS() /home/jenkins-build/build/workspace/ceph-pull-requests/src/googletest/googletest/include/gtest/gtest.h:2486:46
    #20 0x5564d1775d11 in main /home/jenkins-build/build/workspace/ceph-pull-requests/src/googletest/googlemock/src/gmock_main.cc:70:10
```

so, in this change, we do not increase the refcount when
creating cct.

the same applies to `test/common/test_fault_injector.cc`.

Signed-off-by: Kefu Chai <tchaikov@gmail.com>
2024-03-25 08:25:34 +08:00
Zac Dover
063fb89b21
Merge pull request #56287 from rzarzynski/wip-ec-profile-set-paranoid-on-override
mon, doc: overriding ec profile requires --yes-i-really-mean-it

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
2024-03-25 06:57:30 +10:00
Matan Breizman
6a7f2b0fda doc/dev: osd_internals/snaps.rst: add clone_overlap doc
snapdir concept was removed in: https://github.com/ceph/ceph/pull/17579

Co-authored-by: Zac Dover <zac.dover@proton.me>
Signed-off-by: Matan Breizman <mbreizma@redhat.com>
2024-03-24 12:10:05 +00:00
Zac Dover
44a9b520e4
Merge pull request #56367 from zdover23/wip-doc-2024-03-21-intro-mds
doc/start: improve MDS explanation

Reviewed-by: Anthony D'Atri <anthony.datri@gmail.com>
2024-03-24 17:27:20 +10:00
Samuel Just
df1ae4de15
Merge pull request #56375 from athanatos/sjust/wip-64996-deepscrub-crash
crimson/.../scrub_events: fix progress lifetime in deep_scan_object

Reviewed-by: Yingxin Cheng <yingxin.cheng@intel.com>
Reviewed-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
Reviewed-by: Chunmei Liu <chunmei.liu@intel.com>
2024-03-23 19:42:51 -07:00
Patrick Donnelly
b3cfa10a8e
Merge PR #56354 into main
* refs/pull/56354/head:
	qa/suites/fs/workload: enable snap_schedule early

Reviewed-by: Greg Farnum <gfarnum@redhat.com>
2024-03-23 09:02:43 -04:00
Pedro Gonzalez Gomez
9951a3a7f3 mgr/dashboard: sanitize dashboard user creation
Fixes: https://tracker.ceph.com/issues/65030
Signed-off-by: Pedro Gonzalez Gomez <pegonzal@redhat.com>
2024-03-22 19:33:06 +01:00
Patrick Donnelly
f6edcef6ef
Merge PR #56296 into main
* refs/pull/56296/head:
	qa/cephfs: add mgr debugging

Reviewed-by: Venky Shankar <vshankar@redhat.com>
2024-03-22 13:54:04 -04:00
Ernesto Puerta
4adf48998d
mgr/dashboard: fix NVMeoF API
* Update NVMe-oF gRPC Proto to 1.0.0
* Error handling,
* Missing PATCH for certain namespace ops (resize, set QoS, set balance
  groups),
* Stop bypassing gRPC payloads and validate those in the back-end,
* Fix incorrect HTTP 1.1 semantics for some POST/DELETE and URIs.
* Catch errors/exceptions.
* Clean-up EndpointDoc Params
* Run Black linter.
* Remove most of NVMeoFClient glue code between gRPC and controller.
* Fix namespace delete endpoint by exposing trsvcid
* nvmeof io_stats support

Fixes: https://tracker.ceph.com/issues/64890
Signed-off-by: Ernesto Puerta <epuertat@redhat.com>
2024-03-22 18:50:03 +01:00
Samuel Just
32872b583b
Merge pull request #56374 from athanatos/sjust/wip-64935-osd-osdmap-destruction-order
crimson/osd/osd.h: declare osdmap after OSDSingletonState

Reviewed-by: Yingxin Cheng <yingxin.cheng@intel.com>
2024-03-22 10:49:47 -07:00
Patrick Donnelly
eb7b5c800f
qa/suites/fs/workload: enable snap_schedule early
Otherwise it can cause client evictions when the volumes plugin has mounted
cephfs.

Fixes: https://tracker.ceph.com/issues/64988
Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
2024-03-22 12:22:26 -04:00
Zac Dover
34bb922a33
Merge pull request #56377 from zdover23/wip-doc-2024-03-22-start-intro-mon-map
doc/start: link to mon map command

Reviewed-by: Anthony D'Atri <anthony.datri@gmail.com>
2024-03-23 02:16:51 +10:00
Patrick Donnelly
2716b6e76e
Merge PR #56271 into main
* refs/pull/56271/head:
	qa/cephfs: stop ignoring MON_DOWN globally
	qa: extend mon timeout coming up after mondb creation
	qa: update dashboard schema for mon_status
	mon: do not log MON_DOWN if monitor uptime is less than threshold

Reviewed-by: Leonid Usov <leonid.usov@ibm.com>
Reviewed-by: Venky Shankar <vshankar@redhat.com>
2024-03-22 11:56:08 -04:00
Nizamudeen A
7e0efd1352
Merge pull request #56053 from rhcs-dashboard/delete-bucket-notification
mgr/dashboard: add a notification when deleting rgw bucket

Reviewed-by: Ankush Behl <cloudbehl@gmail.com>
Reviewed-by: Nizamudeen A <nia@redhat.com>
2024-03-22 20:58:40 +05:30
Ivo Almeida
c2688d7dea
Merge pull request #56335 from ivoalmeida/snapshot-schedule-show-subvolume-path
Snapshot schedule show subvolume path

Reviewed-by: Nizamudeen A <nia@redhat.com>
2024-03-22 15:27:03 +00:00
Patrick Donnelly
b690263a6c
qa/suites/fs: link in pg_health ignorelist
Fixes: https://tracker.ceph.com/issues/64984
Related-to: https://tracker.ceph.com/issues/52624
Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
2024-03-22 09:14:01 -04:00
Patrick Donnelly
db438cf990
qa/cephfs: add probabilistic ignorelist for pg_health
PG_AVAILABILITY/PG_DEGRADED warnings are dominating fs runs. We want the
underlying issue fixed but it cannot continue to fail all of our tests 100% of
the time. Use a probabilistic addition of these warnings to the ignorelist.

Fixes: https://tracker.ceph.com/issues/64984
Related-to: https://tracker.ceph.com/issues/52624
Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
2024-03-22 09:13:22 -04:00
Ivo Almeida
b6dbf0f24d mgr/dashboard: show full subvol path snap schedule
Show full subvolume path when adding snap schedule

Fixes: https://tracker.ceph.com/issues/65000

Signed-off-by: Ivo Almeida <ialmeida@redhat.com>
2024-03-22 10:57:45 +00:00
Ronen Friedman
154411328e
Merge pull request #56337 from ronen-fr/wip-rf-qslow
osd/scrub: no "slow response" warning for queued reservations

Reviewed-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
2024-03-22 12:50:21 +02:00
Ivo Almeida
17f3760628
Merge pull request #56372 from ivoalmeida/fix-edit-subvolume-group-size
mgr/dashboard: fix subvolume group edit size

Reviewed-by: Nizamudeen A <nia@redhat.com>
2024-03-22 09:40:02 +00:00
Nizamudeen A
93974820ce mgr/dashboard: update grafana api url when switching cluster
do a force refresh on the settings service so it picks up the new api
url of grafana

Fixes: https://tracker.ceph.com/issues/65052
Signed-off-by: Nizamudeen A <nia@redhat.com>
2024-03-22 14:39:29 +05:30
Nizamudeen A
625e312e86
Merge pull request #55953 from afreen23/wip-pg-targets
mgr/dashboard: Mark placement targets as non-required

Reviewed-by: Ankush Behl <cloudbehl@gmail.com>
Reviewed-by: ivoalmeida <NOT@FOUND>
Reviewed-by: Nizamudeen A <nia@redhat.com>
2024-03-22 14:04:03 +05:30
Pedro Gonzalez Gomez
6aa7d356d3 mgr/dashboard: add a notification when deleting rgw bucket
Fixes: https://tracker.ceph.com/issues/64855
Signed-off-by: Pedro Gonzalez Gomez <pegonzal@redhat.com>
2024-03-22 08:26:12 +01:00
Venky Shankar
cc26800f66 Merge PR #54581 into main
* refs/pull/54581/head:
	doc/dev: update quiesce developer document
	qa: wrap quiesce verification to dump debugging on error
	qa: update quiesce tests for control via locallock
	qa: set archive path in vstart_runner
	qa: refactor CephFSMount.kill_background to optionally kill all background jobs
	qa: use kwarg for rank parameter
	qa: simplify calls to (rank|mds)_(tell|asok)
	Revert "pybind/mgr/volumes: block quiesce for critical .meta file"
	mds: remove is_root indication on quiesce_inode op
	mds: prevent new lock cache cons when invalidating an existing one
	mds: use XLOCK_WAIT For local lock xlockers
	mds: prevent new wrlocks on LocalLock if there exists any xlock waiter
	mds: block import discover when parent directory inode is quiesced
	mds: avoid issuing exclusive caps to clients lacking w caps
	mds: print lock cache during invalidation
	mds: use inodeno_t to track quiesce requests
	mds: dispatch quiesce_inode ops after dir traversal
	mds: remove quiescelock handling for SimpleLock type
	mds: quiescelock as local lock + cap masking
	qa: run quiesce unit tests in fs:functional
	qa: add quiesce protocol unit tests
	qa: detect partial migrations during large config of dist epin
	qa: use stdin-killer to timeout run_shell_payload
	qa: simplify run_shell argument processing
	doc: add dev docs for quiesce protocol
	pybind/mgr/volumes: block quiesce for critical .meta file
	mds: add vxattr to block quiesce on an inode
	mds: convert encoded ephemeral dist pin to flags
	mds: add counter to throttle quiesce
	mds: add quiesce set feature flag
	mds: skip non-head inodes for quiesce
	mds: add quiesce op
	mds: print all SimpleLock flags in debug output
	mds: pretty print mutation when dumping lock
	mds: add new inode quiescelock
	mds: use 128 bits for waiters on MDSCacheObject
	mds: provide mechanism to authpin while freezing
	mds: add command to get specific op
	mds: finish request before completing internal req
	mds: complete internal op if killed
	mds: avoid killing dead requests
	mds: add command to kill request
	mds: add path argument to `ops` and `dump tree` to stream result to local file
	mds: print internal_request filepaths if present
	mds: add more information to debug message
	mds: remove redundant parenthesis
	mds: implement Mutation::dump method
	mds: make LockType fields const
	mds: annotate mdr with try_rdlock_snap_layout failure
	mds: refactor if into switch
	mds: call Locker method using this
	mds: simplify assert
	mds: dump locks passed to Locker::acquire_locks
	mds: add LockOp::print method for debugging
	mds: use new insert template via print
	mds: add request result to mutation for analysis by tests
	mds: add comment on locking order rules
	mds: allow specifying rdlock position
	mds: remove dead method
	common: provide a template for object dumps
	common: support long running ops without slow warnings
	common: simplify loop
	common: add JSONFormatterFile class
	common: use more efficient vector for stack
	include: use larger int for large gathers

Reviewed-by: Venky Shankar <vshankar@redhat.com>
Reviewed-by: Leonid Usov <leonid.usov@ibm.com>
2024-03-22 12:54:29 +05:30
Venky Shankar
b4d5d7270c Merge PR #56219 into main
* refs/pull/56219/head:
	qa: change log-whitelist to log-ignorelist

Reviewed-by: Venky Shankar <vshankar@redhat.com>
Reviewed-by: Xiubo Li <xiubli@redhat.com>
2024-03-22 12:51:33 +05:30
Venky Shankar
f2a1a2f4f4 Merge PR #56245 into main
* refs/pull/56245/head:
	mds/quiesce-db: always clear the db if a membership is lost

Reviewed-by: Venky Shankar <vshankar@redhat.com>
Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
2024-03-22 12:50:11 +05:30
Venky Shankar
8449bab924
Merge pull request #56298 from batrick/i64986
qa/cephfs: ignorelist clog of MDS_UP_LESS_THAN_MAX

Reviewed-by: Venky Shankar <vshankar@redhat.com>
2024-03-22 12:46:58 +05:30
Venky Shankar
ba0deb568a Merge PR #56299 into main
* refs/pull/56299/head:
	qa/suites/fs/nfs: use standard health ignorelist

Reviewed-by: Venky Shankar <vshankar@redhat.com>
2024-03-22 12:45:10 +05:30
Nizamudeen A
ae777cc01b
Merge pull request #56054 from rhcs-dashboard/open-swagger-new-tab
mgr/dashboard: open api swagger in new tab

Reviewed-by: afreen23 <NOT@FOUND>
Reviewed-by: Ankush Behl <cloudbehl@gmail.com>
Reviewed-by: Nizamudeen A <nia@redhat.com>
2024-03-22 11:42:06 +05:30
Rongqi Sun
29008b1d1a
Merge pull request #56379 from Svelar/doc_oE
doc/install: fix typos in openEuler-installation doc
2024-03-22 13:56:29 +08:00