YugabyteDB (2.13.0.0-b42, bfc6a6643e7399ac8a0e81d06a3ee6d6571b33ab)

Coverage Report

Created: 2022-03-09 17:30

/Users/deen/code/yugabyte-db/src/yb/master/master_admin_service.cc
Line
Count
Source
1
// Copyright (c) YugaByte, Inc.
2
//
3
// Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except
4
// in compliance with the License.  You may obtain a copy of the License at
5
//
6
// http://www.apache.org/licenses/LICENSE-2.0
7
//
8
// Unless required by applicable law or agreed to in writing, software distributed under the License
9
// is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
10
// or implied.  See the License for the specific language governing permissions and limitations
11
// under the License.
12
//
13
14
#include "yb/master/catalog_manager.h"
15
#include "yb/master/master_admin.service.h"
16
#include "yb/master/master_service.h"
17
#include "yb/master/master_service_base.h"
18
#include "yb/master/master_service_base-internal.h"
19
20
#include "yb/util/flag_tags.h"
21
22
DEFINE_test_flag(bool, timeout_non_leader_master_rpcs, false,
23
                 "Timeout all master requests to non leader.");
24
25
namespace yb {
26
namespace master {
27
28
namespace {
29
30
class MasterAdminServiceImpl : public MasterServiceBase, public MasterAdminIf {
31
 public:
32
  explicit MasterAdminServiceImpl(Master* master)
33
5.42k
      : MasterServiceBase(master), MasterAdminIf(master->metric_entity()) {}
34
35
  void IsInitDbDone(const IsInitDbDoneRequestPB* req,
36
                    IsInitDbDoneResponsePB* resp,
37
806
                    rpc::RpcContext rpc) override {
38
806
    HANDLE_ON_LEADER_WITHOUT_LOCK(CatalogManager, IsInitDbDone);
39
806
  }
40
41
  MASTER_SERVICE_IMPL_ON_LEADER_WITH_LOCK(
42
      CatalogManager,
43
      (CompactSysCatalog)
44
      (CreateTransactionStatusTable)
45
      (DdlLog)
46
      (DeleteNotServingTablet)
47
      (FlushSysCatalog)
48
      (SplitTablet)
49
  )
50
51
  MASTER_SERVICE_IMPL_ON_LEADER_WITH_LOCK(
52
      FlushManager,
53
      (FlushTables)
54
      (IsFlushTablesDone)
55
  )
56
};
57
58
} // namespace
59
60
5.42k
std::unique_ptr<rpc::ServiceIf> MakeMasterAdminService(Master* master) {
61
5.42k
  return std::make_unique<MasterAdminServiceImpl>(master);
62
5.42k
}
63
64
} // namespace master
65
} // namespace yb