system.symbols 시스템 테이블

system.symbols 시스템 테이블

system.symbolsclickhouse 바이너리를 내부 조사(introspection)하기 위한 정보를 담고 있어요. 접근하려면 introspection 권한이 필요해요. 이 테이블은 C++ 전문가와 ClickHouse 엔지니어에게만 유용해요.

출처: 문서

본문

Description

clickhouse 바이너리를 내부 조사하기 위한 정보를 포함해요. 접근하려면 introspection 권한이 필요해요. 이 테이블은 C++ 전문가와 ClickHouse 엔지니어에게만 유용해요.

Columns

  • symbol (String) — 바이너리 안의 심볼 이름이에요. 맹글링(mangled)된 형태예요. 읽을 수 있는 이름을 얻으려면 demangle(symbol) 을 적용할 수 있어요.

  • symbol_demangled (Nullable(String)) — XRay 인스트루먼테이션에 사용되는 디맹글된 심볼이에요.

  • function_id (Nullable(Int32)) — XRay 인스트루먼테이션 맵의 함수 ID예요.

  • address_begin (UInt64) — 바이너리에서 심볼의 시작 주소예요.

  • address_end (UInt64) — 바이너리에서 심볼의 끝 주소예요.

Example

SELECT
    symbol,
    demangle(symbol) AS symbol_demangled,
    address_begin,
    address_end
FROM system.symbols
LIMIT 5
SETTINGS allow_introspection_functions = 1;
Row 1:
──────
symbol:           _Z15isClickHouseAppNSt3__117basic_string_viewIcNS_11char_traitsIcEEEERNS_6vectorIPcNS_9allocatorIS5_EEEE
symbol_demangled: isClickHouseApp(std::__1::basic_string_view>, std::__1::vector>&)
address_begin:    219229312 -- 219.23 million
address_end:      219231408 -- 219.23 million

Row 2:
──────
symbol:           main
symbol_demangled: main
address_begin:    219231872 -- 219.23 million
address_end:      219233485 -- 219.23 million

Row 3:
──────
symbol:           _ZN12_GLOBAL__N_19printHelpEiPPc
symbol_demangled: (anonymous namespace)::printHelp(int, char**)
address_begin:    219233536 -- 219.23 million
address_end:      219233902 -- 219.23 million

Row 4:
──────
symbol:           _ZNSt3__110filesystem4pathC2B8se210105IPcvEERKT_NS1_6formatE
symbol_demangled: std::__1::filesystem::path::path[abi:se210105](char* const&, std::__1::filesystem::path::format)
address_begin:    219234496 -- 219.23 million
address_end:      219234620 -- 219.23 million

Row 5:
──────
symbol:           _ZNSt3__113unordered_setINS_17basic_string_viewIcNS_11char_traitsIcEEEENS_4hashIS4_EENS_8equal_toIS4_EENS_9allocatorIS4_EEEC2ESt16initializer_listIS4_E
symbol_demangled: std::__1::unordered_set>, std::__1::hash>>, std::__1::equal_to>>, std::__1::allocator>>>::unordered_set(std::initializer_list>>)
address_begin:    219235584 -- 219.24 million
address_end:      219235708 -- 219.24 million

더 알아보기 (Learn more)