Skip to content

Commit

Permalink
[#25746] DocDB: Support use of version_info.proto in RPC messages
Browse files Browse the repository at this point in the history
Summary:
Switch `version_info.proto` to use `YRPC_GENERATE` so that it can be used in RPC messages.
Moving `version_info.proto`, `version_info.cc` and `init.cc` to `yb_common` lib since `YRPC_GENERATE` depends on `yb_util` lib.

Fixes #25746
Jira: DB-15027

Test Plan: Jenkins

Reviewers: sergei, asrivastava

Reviewed By: sergei

Subscribers: esheng, ybase, yql

Differential Revision: https://phorge.dev.yugabyte.com/D41470
  • Loading branch information
hari90 committed Jan 25, 2025
1 parent 69b5f97 commit 6281c17
Show file tree
Hide file tree
Showing 45 changed files with 64 additions and 98 deletions.
11 changes: 6 additions & 5 deletions src/yb/client/client.cc
Original file line number Diff line number Diff line change
Expand Up @@ -64,18 +64,20 @@
#include "yb/client/tablet_server.h"
#include "yb/client/yb_table_name.h"

#include "yb/common/common.pb.h"
#include "yb/common/common_flags.h"
#include "yb/common/common_util.h"
#include "yb/common/common.pb.h"
#include "yb/common/entity_ids.h"
#include "yb/common/wire_protocol.h"
#include "yb/dockv/partition.h"
#include "yb/common/init.h"
#include "yb/common/pg_types.h"
#include "yb/common/ql_type.h"
#include "yb/common/roles_permissions.h"
#include "yb/common/schema_pbutil.h"
#include "yb/common/schema.h"
#include "yb/common/transaction.h"
#include "yb/common/schema_pbutil.h"
#include "yb/common/wire_protocol.h"

#include "yb/dockv/partition.h"

#include "yb/gutil/bind.h"
#include "yb/gutil/map-util.h"
Expand Down Expand Up @@ -104,7 +106,6 @@
#include "yb/util/debug-util.h"
#include "yb/util/flags.h"
#include "yb/util/format.h"
#include "yb/util/init.h"
#include "yb/util/logging.h"
#include "yb/util/logging_callback.h"
#include "yb/util/mem_tracker.h"
Expand Down
3 changes: 0 additions & 3 deletions src/yb/client/client_pch.h
Original file line number Diff line number Diff line change
Expand Up @@ -242,7 +242,6 @@
#include "yb/util/hash_util.h"
#include "yb/util/hdr_histogram.h"
#include "yb/util/high_water_mark.h"
#include "yb/util/init.h"
#include "yb/util/io.h"
#include "yb/util/jsonreader.h"
#include "yb/util/jsonwriter.h"
Expand Down Expand Up @@ -334,8 +333,6 @@
#include "yb/util/unique_lock.h"
#include "yb/util/uuid.h"
#include "yb/util/varint.h"
#include "yb/util/version_info.h"
#include "yb/util/version_info.pb.h"
#include "yb/util/version_tracker.h"
#include "yb/util/web_callback_registry.h"
#include "yb/util/write_buffer.h"
Expand Down
3 changes: 3 additions & 0 deletions src/yb/common/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -47,6 +47,7 @@ YRPC_GENERATE(
ql_protocol.proto
transaction.proto
value.proto
version_info.proto
wire_protocol.proto
)
ADD_YB_LIBRARY(yb_common_proto
Expand Down Expand Up @@ -88,6 +89,7 @@ set(COMMON_SRCS
hybrid_time.cc
doc_hybrid_time.cc # must be after hybrid_time.cc
id_mapping.cc
init.cc
key_encoder.cc
opid.cc
pgsql_error.cc
Expand All @@ -107,6 +109,7 @@ set(COMMON_SRCS
transaction_error.cc
wire_protocol.cc
llvm_profile_dumper.cc
version_info.cc
xcluster_util.cc
ysql_utils.cc
)
Expand Down
1 change: 0 additions & 1 deletion src/yb/common/common_pch.h
Original file line number Diff line number Diff line change
Expand Up @@ -206,7 +206,6 @@
#include "yb/util/format.h"
#include "yb/util/hdr_histogram.h"
#include "yb/util/high_water_mark.h"
#include "yb/util/init.h"
#include "yb/util/io.h"
#include "yb/util/jsonwriter.h"
#include "yb/util/kv_util.h"
Expand Down
32 changes: 20 additions & 12 deletions src/yb/util/init.cc → src/yb/common/init.cc
Original file line number Diff line number Diff line change
Expand Up @@ -30,22 +30,20 @@
// under the License.
//

#include "yb/util/init.h"
#include "yb/common/init.h"

#include <signal.h>
#include <string>

#include "yb/gutil/cpu.h"
#include "yb/gutil/strings/split.h"
#include "yb/gutil/strings/substitute.h"
#include "yb/util/env.h"
#include "yb/util/env_util.h"
#include "yb/util/errno.h"
#include "yb/util/flags.h"
#include "yb/util/logging.h"
#include "yb/util/path_util.h"
#include "yb/util/status.h"
#include "yb/util/version_info.h"
#include "yb/common/version_info.h"

#if defined(__linux__)
#include <sys/prctl.h>
Expand All @@ -61,8 +59,26 @@ DEFINE_NON_RUNTIME_bool(stop_on_parent_termination, false,
"When specified, this process will terminate when parent process terminates."
"Linux-only.");

DECLARE_bool(version);
TAG_FLAG(version, stable);

namespace yb {

namespace {

void ShowVersionAndExit() {
if (!FLAGS_version) {
return;
}
std::cout << VersionInfo::GetShortVersionString() << std::endl;
exit(0);
}
// REGISTER_CALLBACK cannot be used since this flag is defined in the gflags library.
auto show_version_callback = flags_callback_internal::RegisterGlobalFlagUpdateCallback(
&FLAGS_version, "ShowVersionAndExit", &ShowVersionAndExit);

} // namespace

const char* kTopLevelDataDirName = "yb-data";

Status BadCPUStatus(const base::CPU& cpu, const char* instruction_set) {
Expand Down Expand Up @@ -127,14 +143,6 @@ void SetGLogHeader(const std::string& server_info) {
google::SetApplicationFingerprint(VersionInfo::GetShortVersionString() + server_info);
}

Status InstallSignalHandler(int signum, void (*handler)(int)) {
struct sigaction sig_action{};
sig_action.sa_handler = handler;
return STATUS_FROM_ERRNO_IF_NONZERO_RV(
Format("InstallSignalHandler failed for signal $0 ($1)", signum, strsignal(signum)),
sigaction(signum, &sig_action, nullptr));
}

Status InitYB(const std::string &server_type, const char* argv0) {
#if defined(__linux__)
if (FLAGS_stop_on_parent_termination) {
Expand Down
3 changes: 0 additions & 3 deletions src/yb/util/init.h → src/yb/common/init.h
Original file line number Diff line number Diff line change
Expand Up @@ -48,9 +48,6 @@ Status SetupLogDir(const std::string& server_type);

void SetGLogHeader(const std::string& server_info = "");

// Installs signal handler. Safe to call before glog is initialized. This is not thread safe.
Status InstallSignalHandler(int signum, void (*handler)(int));

// Initialize YB, checking that the platform we are running on is supported, etc.
// Issues a FATAL log message if we fail to init.
// argv0 is passed to InitGoogleLoggingSafe.
Expand Down
2 changes: 1 addition & 1 deletion src/yb/common/termination_monitor.cc
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@

#include "yb/util/callsite_profiling.h"
#include "yb/util/flags.h"
#include "yb/util/init.h"
#include "yb/util/signal_util.h"
#include "yb/util/thread.h"

DECLARE_bool(TEST_running_test);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@
// under the License.
//

#include "yb/util/version_info.h"
#include "yb/common/version_info.h"

#include <fstream>
#include <string>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@
#include "yb/gutil/macros.h"

#include "yb/util/status_fwd.h"
#include "yb/util/version_info.pb.h"
#include "yb/common/version_info.pb.h"

namespace yb {

Expand Down
File renamed without changes.
2 changes: 1 addition & 1 deletion src/yb/integration-tests/auto_flags-itest.cc
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@

#include "yb/util/flags.h"
#include "yb/util/backoff_waiter.h"
#include "yb/util/version_info.h"
#include "yb/common/version_info.h"

DECLARE_bool(TEST_auto_flags_initialized);
DECLARE_bool(TEST_auto_flags_new_install);
Expand Down
2 changes: 0 additions & 2 deletions src/yb/integration-tests/integration-tests_pch.h
Original file line number Diff line number Diff line change
Expand Up @@ -362,8 +362,6 @@
#include "yb/util/unique_lock.h"
#include "yb/util/uuid.h"
#include "yb/util/varint.h"
#include "yb/util/version_info.h"
#include "yb/util/version_info.pb.h"
#include "yb/util/version_tracker.h"
#include "yb/util/web_callback_registry.h"
#include "yb/util/write_buffer.h"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@
#include "yb/util/debug.h"
#include "yb/util/env_util.h"
#include "yb/util/scope_exit.h"
#include "yb/util/version_info.h"
#include "yb/common/version_info.h"
#include "yb/yql/pgwrapper/libpq_utils.h"

#include "yb/server/server_base.pb.h"
Expand Down
2 changes: 1 addition & 1 deletion src/yb/integration-tests/upgrade-tests/upgrade_test_base.h
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@

#include "yb/integration-tests/external_mini_cluster-itest-base.h"
#include "yb/util/test_thread_holder.h"
#include "yb/util/version_info.pb.h"
#include "yb/common/version_info.pb.h"

namespace yb {

Expand Down
1 change: 0 additions & 1 deletion src/yb/master/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -199,7 +199,6 @@ set(MASTER_DEPS
${MASTER_PROTO_LIBS}
rpc_header_proto
master_util
version_info_proto
yb_pggate_flags
yb_pggate
cdc_util
Expand Down
3 changes: 1 addition & 2 deletions src/yb/master/master-path-handlers.cc
Original file line number Diff line number Diff line change
Expand Up @@ -94,8 +94,7 @@
#include "yb/util/string_case.h"
#include "yb/util/timestamp.h"
#include "yb/util/url-coding.h"
#include "yb/util/version_info.h"
#include "yb/util/version_info.pb.h"
#include "yb/common/version_info.h"

DEFINE_RUNTIME_int32(
hide_dead_node_threshold_mins, 60 * 24,
Expand Down
1 change: 0 additions & 1 deletion src/yb/master/master_main.cc
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,6 @@
#include "yb/server/total_mem_watcher.h"

#include "yb/util/flags.h"
#include "yb/util/init.h"
#include "yb/util/logging.h"
#include "yb/util/main_util.h"
#include "yb/util/mem_tracker.h"
Expand Down
2 changes: 0 additions & 2 deletions src/yb/master/master_pch.h
Original file line number Diff line number Diff line change
Expand Up @@ -364,8 +364,6 @@
#include "yb/util/user.h"
#include "yb/util/uuid.h"
#include "yb/util/varint.h"
#include "yb/util/version_info.h"
#include "yb/util/version_info.pb.h"
#include "yb/util/version_tracker.h"
#include "yb/util/web_callback_registry.h"
#include "yb/util/write_buffer.h"
Expand Down
2 changes: 1 addition & 1 deletion src/yb/master/sys_catalog-test.cc
Original file line number Diff line number Diff line change
Expand Up @@ -51,7 +51,7 @@
#include "yb/util/backoff_waiter.h"
#include "yb/util/net/sockaddr.h"
#include "yb/util/status.h"
#include "yb/util/version_info.h"
#include "yb/common/version_info.h"

using namespace std::literals;

Expand Down
2 changes: 1 addition & 1 deletion src/yb/master/ysql/ysql_catalog_config.cc
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@

#include "yb/master/catalog_entity_info.h"
#include "yb/util/is_operation_done_result.h"
#include "yb/util/version_info.h"
#include "yb/common/version_info.h"

DECLARE_bool(log_ysql_catalog_versions);

Expand Down
2 changes: 1 addition & 1 deletion src/yb/master/ysql/ysql_initdb_major_upgrade_handler.cc
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@
#include "yb/util/pg_util.h"
#include "yb/util/scope_exit.h"
#include "yb/util/status.h"
#include "yb/util/version_info.h"
#include "yb/common/version_info.h"

#include "yb/yql/pgwrapper/pg_wrapper.h"

Expand Down
2 changes: 0 additions & 2 deletions src/yb/rocksdb/rocksdb_pch.h
Original file line number Diff line number Diff line change
Expand Up @@ -224,5 +224,3 @@
#include "yb/util/tsan_util.h"
#include "yb/util/type_traits.h"
#include "yb/util/ulimit.h"
#include "yb/util/version_info.h"
#include "yb/util/version_info.pb.h"
2 changes: 1 addition & 1 deletion src/yb/rocksdb/util/options_parser.cc
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@
#include "yb/util/status_log.h"
#include "yb/util/string_util.h"
#include "yb/util/sync_point.h"
#include "yb/util/version_info.h"
#include "yb/common/version_info.h"

namespace rocksdb {

Expand Down
3 changes: 1 addition & 2 deletions src/yb/server/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -77,8 +77,7 @@ target_link_libraries(server_base_proto
yrpc
yb_common_proto
protobuf
rpc_header_proto
version_info_proto)
rpc_header_proto)

#########################################
# server_process
Expand Down
2 changes: 1 addition & 1 deletion src/yb/server/auto_flags_manager_base.cc
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@
#include "yb/util/logging.h"
#include "yb/util/source_location.h"
#include "yb/util/thread_restrictions.h"
#include "yb/util/version_info.h"
#include "yb/common/version_info.h"

DEFINE_NON_RUNTIME_bool(disable_auto_flags_management, false,
"Disables AutoFlags management. A safety switch to turn off automatic promotion of AutoFlags. "
Expand Down
2 changes: 1 addition & 1 deletion src/yb/server/call_home.cc
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@
#include "yb/util/metrics.h"
#include "yb/util/result.h"
#include "yb/util/user.h"
#include "yb/util/version_info.h"
#include "yb/common/version_info.h"

using std::string;
using std::vector;
Expand Down
3 changes: 1 addition & 2 deletions src/yb/server/default-path-handlers.cc
Original file line number Diff line number Diff line change
Expand Up @@ -86,8 +86,7 @@
#include "yb/util/status_log.h"
#include "yb/util/stack_trace_tracker.h"
#include "yb/util/url-coding.h"
#include "yb/util/version_info.h"
#include "yb/util/version_info.pb.h"
#include "yb/common/version_info.h"

DEFINE_RUNTIME_uint64(web_log_bytes, 1024 * 1024,
"The maximum number of bytes to display on the debug webserver's log page");
Expand Down
2 changes: 1 addition & 1 deletion src/yb/server/server_base.cc
Original file line number Diff line number Diff line change
Expand Up @@ -85,7 +85,7 @@
#include "yb/util/status_log.h"
#include "yb/util/timestamp.h"
#include "yb/util/thread.h"
#include "yb/util/version_info.h"
#include "yb/common/version_info.h"
#include "yb/util/tcmalloc_util.h"

DEFINE_UNKNOWN_int32(num_reactor_threads, -1,
Expand Down
2 changes: 1 addition & 1 deletion src/yb/server/server_base.proto
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@ option java_package = "org.yb.server";

import "yb/common/common_net.proto";
import "yb/common/wire_protocol.proto";
import "yb/util/version_info.proto";
import "yb/common/version_info.proto";

// The status information dumped by a server after it starts.
//
Expand Down
2 changes: 0 additions & 2 deletions src/yb/server/server_pch.h
Original file line number Diff line number Diff line change
Expand Up @@ -274,7 +274,5 @@
#include "yb/util/user.h"
#include "yb/util/uuid.h"
#include "yb/util/varint.h"
#include "yb/util/version_info.h"
#include "yb/util/version_info.pb.h"
#include "yb/util/web_callback_registry.h"
#include "yb/util/zlib.h"
2 changes: 1 addition & 1 deletion src/yb/tools/sys-catalog-tool.cc
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@
#include "yb/util/pb_util.h"
#include "yb/util/string_trim.h"
#include "yb/util/string_util.h"
#include "yb/util/version_info.h"
#include "yb/common/version_info.h"

DEFINE_RUNTIME_bool(show_raw_id, false, "Print binary id in raw format also");

Expand Down
2 changes: 0 additions & 2 deletions src/yb/tools/tools_pch.h
Original file line number Diff line number Diff line change
Expand Up @@ -336,8 +336,6 @@
#include "yb/util/ulimit.h"
#include "yb/util/uuid.h"
#include "yb/util/varint.h"
#include "yb/util/version_info.h"
#include "yb/util/version_info.pb.h"
#include "yb/util/web_callback_registry.h"
#include "yb/util/write_buffer.h"
#include "yb/util/yb_partition.h"
4 changes: 2 additions & 2 deletions src/yb/tserver/db_server_base.cc
Original file line number Diff line number Diff line change
Expand Up @@ -17,15 +17,15 @@
#include "yb/client/transaction_manager.h"
#include "yb/client/transaction_pool.h"

#include "yb/common/init.h"

#include "yb/server/async_client_initializer.h"
#include "yb/server/clock.h"

#include "yb/tserver/tserver_util_fwd.h"
#include "yb/tserver/tserver_shared_mem.h"

#include "yb/util/init.h"
#include "yb/util/mem_tracker.h"
#include "yb/util/scope_exit.h"
#include "yb/util/shared_mem.h"
#include "yb/util/status_log.h"

Expand Down
Loading

0 comments on commit 6281c17

Please sign in to comment.