thePageInspect
모듈은 데이터베이스 롤 토토의 내용을 낮은 레벨에서 검사 할 수있는 기능을 제공하며, 이는 디버깅 목적으로 유용합니다. 이러한 모든 기능은 슈퍼업자에 의해서만 사용될 수 있습니다.
get_raw_page (relname 텍스트, 포크 텍스트, blkno bigint) bytea를 반환합니다
get_raw_page
지정된 관계의 지정된 블록을 읽고 사본을 A로 반환합니다BYTEA
값. 이를 통해 블록의 단일 일관된 사본을 얻을 수 있습니다.포크
'main'
기본 데이터 포크의 경우'FSM'
용PostgreSQL : 문서 : 17 : 65.3. 여유 배트맨 토토, 'vm'
용토토 베이 : 문서 : 17 : 65.4. 가시성 맵또는'init'
초기화 포크 용
get_raw_page (Relname Text, Blkno bigint) Bytea를 반환합니다
속기 버전의get_raw_page
, 메인 포크에서 읽기. 동등한get_raw_page (relname, 'main', blkno)
page_header (Page Bytea) 레코드를 반환
page_header
모든 것에 공통적 인 필드를 보여줍니다PostgreSQL힙 및 인덱스 롤 토토.
획득 한 롤 토토 이미지get_raw_page
인수로 전달되어야합니다. 예를 들어:
test =# select * from page_header (get_raw_page ( 'pg_class', 0)); LSN | 체크섬 | 깃발 | 더 낮은 | 상단 | 스페셜 | Pagesize | 버전 | prune_xid -----------+----------+--------+------------------------------------------------------------------------------------------------------ 0/24A1B50 | 0 | 1 | 232 | 368 | 8192 | 8192 | 4 | 0
반환 된 열은의 필드에 해당합니다.PageHeaderData
구조. 보다src/include/storage/bufpage.h
자세한 내용.
theChecksum
필드는 롤 토토에 저장된 체크섬이며, 롤 토토가 어떻게 든 손상되면 부정확 할 수 있습니다. 이 인스턴스에 대한 데이터 체크섬이 활성화되지 않으면 저장된 값은 의미가 없습니다.
page_checksum (Page Bytea, Blkno bigint)을 반환
page_checksum
주어진 블록에있는 것처럼 롤 토토의 체크섬을 계산합니다.
획득 한 롤 토토 이미지get_raw_page
인수로 통과해야합니다. 예를 들어:
test =# select page_checksum (get_raw_page ( 'pg_class', 0), 0); page_checksum ----------------- 13443
체크섬은 블록 번호에 따라 달라 지므로 일치하는 블록 번호를 전달해야합니다 (밀교 디버깅을 수행 할 때 제외)..
이 함수로 계산 된 체크섬은와 비교할 수 있습니다.CheckSum
함수의 결과 필드page_header
. 이 인스턴스에 대한 데이터 체크섬이 활성화되면 두 값이 같아야합니다.
fsm_page_contents (page bytea) 텍스트를 반환
FSM_PAGE_CONTENTS
AN의 내부 노드 구조 표시FSM롤 토토. 예를 들어:
test =# 선택 fsm_page_contents (get_raw_page ( 'pg_class', 'fsm', 0));
출력은 멀티 라인 문자열이며 페이지 내 바이너리 트리의 노드 당 한 줄 당 1 줄입니다. 0이 아닌 노드 만 인쇄됩니다. 페이지에서 반환 할 다음 슬롯을 가리키는 소위 "다음"포인터도 인쇄됩니다.
참조SRC/백엔드/스토리지/프리 스페이스/readme
AN의 구조에 대한 자세한 내용은FSM롤 토토.
Heap_Page_Items (Page Bytea) 레코드를 반환
heap_page_items
힙 롤 토토에 모든 줄 포인터가 표시됩니다. 사용중인 라인 포인터의 경우 튜플 헤더 및 튜플 원시 데이터도 표시됩니다. 튜플이 원시 롤 토토를 복사 할 때 MVCC 스냅 샷으로 보이는지 여부에 관계없이 모든 튜플이 표시됩니다.
획득 한 힙 롤 토토 이미지get_raw_page
인수로 전달되어야합니다. 예를 들어:
test =# heap_page_items에서 * select * (get_raw_page ( 'pg_class', 0));
참조src/include/storage/itemid.h
andsrc/include/access/htup_details.h
반환 된 필드에 대한 설명.
theheap_tuple_infomask_flags
함수는의 플래그 비트를 풀기 위해 사용될 수 있습니다.T_INFOMASK
andT_INFOMASK2
힙 튜플 용.
tuple_data_split (rel_oid oid, t_data bytea, t_infomask integer, t_infomask2 integer, t_bits 텍스트 [, do_detoast bool]) bytea []를 반환합니다.
tuple_data_split
백엔드 내부와 같은 방식으로 튜플 데이터를 속성으로 분할합니다.
test =# 선택 tuple_data_split ( 'pg_class':: regclass, t_data, t_infomask, t_infomask2, t_bits)에서 heap_page_items (get_raw_page ( 'pg_class', 0));;
이 함수는의 반환 속성과 동일한 인수와 함께 호출되어야합니다.heap_page_items
.
ifdo_detoast
istrue
, 속성은 필요에 따라 해소됩니다. 기본값은거짓
.
heap_page_item_attrs (페이지 bytea, rel_oid regclass [, do_detoast bool]) record를 반환
heap_page_item_attrs
heap_page_items
튜플 원시 데이터를 선택적으로 고용 할 수있는 속성 배열로 튜플을 반환하는 것을 제외하고do_detoast
거짓
기본적으로.
획득 한 힙 롤 토토 이미지get_raw_page
인수로 통과해야합니다. 예를 들어:
test =# heap_page_item_attrs에서 * select * select *
heap_tuple_infomask_flags (t_infomask inger, t_infomask2 정수) 레코드를 반환
heap_tuple_infomask_flags
디코딩T_INFOMASK
andT_INFOMASK2
반환heap_page_items
깃발 이름으로 만들어진 사람이 읽을 수있는 배열 세트로, 모든 플래그에 대해 하나의 열, 결합 된 플래그에는 열이 있습니다. 예를 들어:
test =# t_ctid, raw_flags, combined_flags를 선택하십시오 heap_page_items에서 (get_raw_page ( 'pg_class', 0)), 측면 heap_tuple_infomask_flags (t_infomask, t_infomask2) t_infomask가 null이 아닌 경우, t_infomask2는 null이 아닙니다;
이 함수는의 반환 속성과 동일한 인수와 함께 호출되어야합니다.heap_page_items
.
결합 된 플래그는 소스 레벨 매크로에 대해 표시됩니다.heap_xmin_frozen
.
참조src/include/access/htup_details.h
플래그 이름에 대한 설명은 반환되었습니다.
BT_METAP (RELNAME TEXT) 레코드를 반환
bt_metap
B-Tree 지수의 메타지에 대한 정보를 반환합니다. 예를 들어:
test =# select * from bt_metap ( 'pg_cast_oid_index'); -[레코드 1] ------------+------- 마술 | 340322 버전 | 4 루트 | 1 레벨 | 0 Fastroot | 1 FastLevel | 0 last_cleanup_num_delpages | 0 last_cleanup_num_tuples | 230 Allequalimage | 에프
BT_PAGE_STATS (Relname Text, Blkno Bigint)를 반환합니다
BT_PAGE_STATS
B-Tree 지수의 데이터 페이지에 대한 요약 정보를 반환합니다. 예를 들어:
test =# select * from bt_page_stats ( 'pg_cast_oid_index', 1); -[레코드 1]-+---- Blkno | 1 유형 | 엘 live_items | 224 dead_items | 0 avg_item_size | 16 page_size | 8192 free_size | 3668 btpo_prev | 0 btpo_next | 0 btpo_level | 0 btpo_flags | 3
bt_multi_page_stats (Relname 텍스트, blkno bigint, blk_count bigint) setof record를 반환합니다
bt_multi_page_stats
동일한 정보를 반환합니다BT_PAGE_STATS
,하지만에서 시작하는 롤 토토 범위의 각 롤 토토에 대해Blkno
그리고 확장blk_count
롤 토토. 만약에blk_count
음수입니다.Blkno
지수의 끝까지보고됩니다. 예를 들어:
test =# select * from bt_multi_page_stats ( 'pg_proc_oid_index', 5, 2); -[레코드 1]-+---- Blkno | 5 유형 | 엘 live_items | 367 dead_items | 0 avg_item_size | 16 page_size | 8192 free_size | 808 btpo_prev | 4 btpo_next | 6 btpo_level | 0 btpo_flags | 1 -[레코드 2]-+---- Blkno | 6 유형 | 엘 live_items | 367 dead_items | 0 avg_item_size | 16 page_size | 8192 free_size | 808 btpo_prev | 5 btpo_next | 7 btpo_level | 0 btpo_flags | 1
BT_PAGE_ITEMS (Relname Text, Blkno BigInt)를 반환합니다
bt_page_items
B-Tree Index 페이지의 모든 항목에 대한 자세한 정보를 반환합니다. 예를 들어:
test =# itemoffset, ctid, itemlen, nulls, vars, data, dead, htid, tids [0 : 2] sode _tids bt_page_items ( 'tenk2_hundred', 5); ItemOffset | ctid | ItemLen | 널스 | vars | 데이터 | 죽은 | htid | some_tids -------------+-----------+---------+-------+-------+------------------------------------------------------------------------------------------------ 1 | (16,1) | 16 | f | f | 30 00 00 00 00 00 00 00 | | | 2 | (16,8292) | 616 | f | f | 24 00 00 00 00 00 00 00 | f | (1,6) | "(1,6)", "(10,22)" 3 | (16,8292) | 616 | f | f | 25 00 00 00 00 00 00 00 | f | (1,18) | "(1,18)", "(4,22)" 4 | (16,8292) | 616 | f | f | 26 00 00 00 00 00 00 00 | f | (4,18) | "(4,18)", "(6,17)" 5 | (16,8292) | 616 | f | f | 27 00 00 00 00 00 00 00 | f | (1,2) | "(1,2)", "(1,19)" 6 | (16,8292) | 616 | f | f | 28 00 00 00 00 00 00 00 | f | (2,24) | "(2,24)", "(4,11)" 7 | (16,8292) | 616 | f | f | 29 00 00 00 00 00 00 00 | f | (2,17) | "(2,17)", "(11,2)" 8 | (16,8292) | 616 | f | f | 2A 00 00 00 00 00 00 00 | f | (0,25) | "(0,25)", "(3,20)" 9 | (16,8292) | 616 | f | f | 2B 00 00 00 00 00 00 00 | f | (0,10) | "(0,10)", "(0,14)" 10 | (16,8292) | 616 | f | f | 2C 00 00 00 00 00 00 00 | f | (1,3) | "(1,3)", "(3,9)" 11 | (16,8292) | 616 | f | f | 2d 00 00 00 00 00 00 00 00 | f | (6,28) | "(6,28)", "(11,1)" 12 | (16,8292) | 616 | f | f | 2E 00 00 00 00 00 00 00 00 | f | (0,27) | "(0,27)", "(1,13)" 13 | (16,8292) | 616 | f | f | 2F 00 00 00 00 00 00 00 | f | (4,17) | "(4,17)", "(4,21)"
이것은 B- 트리 리프 롤 토토입니다. 테이블을 가리키는 모든 튜플은 목록 튜플을 게시합니다 (모두 총 100 개의 바이트 TID를 저장). 도 있습니다.“높은 키”튜플 atitemoffset
번호 1CTID
이 예제에서 각 튜플에 대한 인코딩 된 정보를 저장하는 데 사용되지만 잎 롤 토토 튜플은 종종 힙 정리를 직접 저장합니다CTID
대신 필드tids
게시 목록으로 저장된 TID 목록입니다.
내부 롤 토토 (표시되지 않음)에서 블록 번호 부분CTID
is“다운 링크”, 인덱스 자체의 다른 롤 토토의 블록 번호입니다. 오프셋 부분 (두 번째 숫자)의CTID
존재하는 열의 수와 같은 튜플에 대한 인코딩 된 정보 (접미사 절단은 불필요한 접미사 열을 제거했을 수 있음). 잘린 열은 가치가있는 것으로 취급“마이너스 인피니티”.
htid
기본 튜플 표현에 관계없이 튜플의 힙 삭제를 보여줍니다. 이 값은 일치 할 수 있습니다CTID
또는 내부 페이지에서 목록 튜플 및 튜플을 게시하여 사용되는 대체 표현에서 디코딩 될 수 있습니다. 내부 페이지의 튜플은 일반적으로 구현 레벨 힙 TID 열이 잘려서 널로 표시됩니다htid
value.
가장 오른쪽이 아닌 롤 토토의 첫 번째 항목 (에 0이 아닌 모든 롤 토토btpo_next
필드)는 롤 토토입니다“높은 키”, 그 의미데이터
롤 토토에 나타나는 모든 항목의 상한 역할을하는 반면CTID
필드는 다른 블록을 가리키지 않습니다. 또한 내부 페이지에서 최초의 실제 데이터 항목 (높은 키가 아닌 첫 번째 항목)은 모든 열이 잘려 나서 실제 값을 남기지 않습니다.데이터
필드. 이러한 항목은 유효한 다운 링크가 있습니다.CTID
필드.
B- 트리 지수의 구조에 대한 자세한 내용은 참조섹션 64.1.4.1. 중복 제거 및 게시 목록에 대한 자세한 내용은 참조하십시오.섹션 64.1.4.3.
bt_page_items (page bytea) 레코드를 반환
롤 토토를 전달할 수도 있습니다bt_page_items
asBYTEA
값. 와 함께 얻은 롤 토토 이미지get_raw_page
인수로 통과해야합니다. 마지막 예제는 다음과 같이 다시 작성할 수 있습니다.
test =# itemoffset, ctid, itemlen, nulls, vars, data, dead, htid, tids [0 : 2] sode as some_tids bt_page_items에서 (get_raw_page ( 'tenk2_hundred', 5)); ItemOffset | ctid | ItemLen | 널스 | vars | 데이터 | 죽은 | htid | some_tids -------------+-----------+---------+-------+-------+------------------------------------------------------------------------------------------------ 1 | (16,1) | 16 | f | f | 30 00 00 00 00 00 00 00 | | | 2 | (16,8292) | 616 | f | f | 24 00 00 00 00 00 00 00 | f | (1,6) | "(1,6)", "(10,22)" 3 | (16,8292) | 616 | f | f | 25 00 00 00 00 00 00 00 | f | (1,18) | "(1,18)", "(4,22)" 4 | (16,8292) | 616 | f | f | 26 00 00 00 00 00 00 00 | f | (4,18) | "(4,18)", "(6,17)" 5 | (16,8292) | 616 | f | f | 27 00 00 00 00 00 00 00 | f | (1,2) | "(1,2)", "(1,19)" 6 | (16,8292) | 616 | f | f | 28 00 00 00 00 00 00 00 | f | (2,24) | "(2,24)", "(4,11)" 7 | (16,8292) | 616 | f | f | 29 00 00 00 00 00 00 00 | f | (2,17) | "(2,17)", "(11,2)" 8 | (16,8292) | 616 | f | f | 2A 00 00 00 00 00 00 00 | f | (0,25) | "(0,25)", "(3,20)" 9 | (16,8292) | 616 | f | f | 2B 00 00 00 00 00 00 00 | f | (0,10) | "(0,10)", "(0,14)" 10 | (16,8292) | 616 | f | f | 2C 00 00 00 00 00 00 00 | f | (1,3) | "(1,3)", "(3,9)" 11 | (16,8292) | 616 | f | f | 2d 00 00 00 00 00 00 00 00 | f | (6,28) | "(6,28)", "(11,1)" 12 | (16,8292) | 616 | f | f | 2E 00 00 00 00 00 00 00 00 | f | (0,27) | "(0,27)", "(1,13)" 13 | (16,8292) | 616 | f | f | 2F 00 00 00 00 00 00 00 | f | (4,17) | "(4,17)", "(4,21)"
다른 모든 세부 사항은 이전 항목에서 설명한 것과 동일합니다.
brin_page_type (page bytea) 텍스트를 반환
brin_page_type
주어진 페이지 유형을 반환브린인덱스 페이지 또는 페이지가 유효하지 않은 경우 오류를 버립니다브린롤 토토. 예를 들어:
test =# select brin_page_type (get_raw_page ( 'brinidx', 0)); brin_page_type --------------- 메타
brin_metapage_info (Page Bytea) 레코드를 반환
brin_metapage_info
A에 대한 다양한 정보를 반환합니다브린인덱스 메타지. 예를 들어:
test =# select * from brin_metapage_info (get_raw_page ( 'brinidx', 0)); 마술 | 버전 | PagesperRange | lastevmappage ------------+---------+---------------------------------- 0xa8109cfa | 1 | 4 | 2
brin_revmap_data (page bytea) setof tid 반환
brin_revmap_data
A에서 튜플 식별자 목록을 반환합니다브린인덱스 범위 맵 롤 토토. 예를 들어:
test =# select * from brin_revmap_data (get_raw_page ( 'brinidx', 2)) 한계 5; 페이지 ------- (6,137) (6,138) (6,139) (6,140) (6,141)
brin_page_items (페이지 bytea, index oid) setof record를 반환합니다
brin_page_items
에 저장된 데이터를 반환합니다브린데이터 롤 토토. 예를 들어:
test =# select * from brin_page_items (get_raw_page ( 'brinidx', 5), 'brinidx') Blknum, Attnum Limit 6에 의한 주문; ItemOffset | Blknum | Attnum | allnulls | Hasnulls | 자리 표시 자 | 빈 | 값 ------------+--------+-------+---------------------------------------------------------------------------------------------------------------------- 137 | 0 | 1 | t | f | f | f | 137 | 0 | 2 | f | f | f | f | 1 .. 88 138 | 4 | 1 | t | f | f | f | 138 | 4 | 2 | f | f | f | f | 89 .. 176 139 | 8 | 1 | t | f | f | f | 139 | 8 | 2 | f | f | f | f | 177 .. 264
반환 된 열은의 필드에 해당합니다.brinmemtuple
andBrinValues
structs. 보다src/include/access/brin_tuple.h
자세한 내용.
gin_metapage_info (Page Bytea) 레코드를 반환
gin_metapage_info
A에 대한 정보를 반환합니다진인덱스 메타지. 예를 들어:
test =# select * from gin_metapage_info (get_raw_page ( 'gin_index', 0)); -[레코드 1] ----+----------- ending_head | 4294967295 pending_tail | 4294967295 tail_free_size | 0 n_pending_pages | 0 n_pending_tuples | 0 n_total_pages | 7 n_entry_pages | 6 N_DATA_PAGES | 0 n_entries | 693 버전 | 2
GIN_PAGE_OPAQUE_INFO (PAGE BYTEA) 레코드를 반환
gin_page_opaque_info
A에 대한 정보를 반환합니다진롤 토토 유형과 같은 색인 불투명 영역. 예를 들어:
test =# select * from gin_page_opaque_info (get_raw_page ( 'gin_index', 2)); 오른쪽 링크 | Maxoff | 깃발 -----------+-------+---------------------------- 5 | 0 | 데이터, 잎, 압축
gin_leafpage_items (page bytea) 레코드를 반환
gin_leafpage_items
압축에 저장된 데이터에 대한 정보를 반환gin잎 롤 토토. 예를 들어:
test =# first_tid, nbytes, tids [0 : 5]를 some_tids로 선택하십시오 gin_leafpage_items에서 (get_raw_page ( 'gin_test_idx', 2)); First_tid | nbytes | some_tids -----------+-------+------------------------------------------------------------------- (8,41) | 244 | "(8,41)", "(8,43)", "(8,44)", "(8,45)", "(8,46)" (10,45) | 248 | "(10,45)", "(10,46)", "(10,47)", "(10,48)", "(10,49)" (12,52) | 248 | "(12,52)", "(12,53)", "(12,54)", "(12,55)", "(12,56)" (14,59) | 320 | "(14,59)", "(14,60)", "(14,61)", "(14,62)", "(14,63)" (167,16) | 376 | "(167,16)", "(167,17)", "(167,18)", "(167,19)", "(167,20)" (170,30) | 376 | "(170,30)", "(170,31)", "(170,32)", "(170,33)", "(170,34)" (173,44) | 197 | "(173,44)", "(173,45)", "(173,46)", "(173,47)", "(173,48)"
GIST_PAGE_OPAQUE_INFO (PAGE BYTEA) 레코드를 반환
gist_page_opaque_info
A에서 정보를 반환합니다gistNSN, 오른쪽 링크 및 롤 토토 유형과 같은 색인 롤 토토의 불투명 영역. 예를 들어:
test =# select * from gist_page_opaque_info (get_raw_page ( 'test_gist_idx', 2)); LSN | NSN | 오른쪽 링크 | 깃발 -----+-----+----------+-------- 0/1 | 0/0 | 1 | 잎
GIST_PAGE_ITEMS (Page Bytea, Index_oid Regclass) 레코드를 반환
gist_page_items
a에 저장된 데이터에 대한 정보를 반환합니다gist색인. 예를 들어:
test =# select * from gist_page_items (get_raw_page ( 'test_gist_idx', 0), 'test_gist_idx'); ItemOffset | ctid | ItemLen | 죽은 | 열쇠 -------------+-----------+--------+-------+------------------------------------------------------------------ 1 | (1,65535) | 40 | f | (p) = ( "(185,185), (1,1)") 2 | (2,65535) | 40 | f | (P) = ( "(370,370), (186,186)") 3 | (3,65535) | 40 | f | (P) = ( "(555,555), (371,371)") 4 | (4,65535) | 40 | f | (P) = ( "(740,740), (556,556)") 5 | (5,65535) | 40 | f | (P) = ( "(870,870), (741,741)") 6 | (6,65535) | 40 | f | (P) = ( "(1000,1000), (871,871)") (6 줄)
GIST_PAGE_ITEMS_BYTEA (Page Bytea) 레코드를 반환
동일gist_page_items
그러나 키 데이터를 원시로 리턴합니다BYTEA
blob. 키를 해독하려고 시도하지 않으므로 어떤 인덱스가 관련되어 있는지 알 필요가 없습니다. 예를 들어:
test =# select * from gist_page_items_bytea (get_raw_page ( 'test_gist_idx', 0)); ItemOffset | ctid | ItemLen | 죽은 | key_data ------------+-----------+---------+------+------------------------------------------------------------------------------------ 1 | (1,65535) | 40 | f | \ x00000100FFFFF28000000000000C06400000000000000000000000000F03F000000000000F03F 2 | (2,65535) | 40 | f | \ x00000200FFFFF28000000000000C0740000000000000000000000000E060000000000000E06440 3 | (3,65535) | 40 | f | \ x00000300FFFFF28000000000000207F4000000000000000000000000000000D074000000000000000000D07440 4 | (4,65535) | 40 | f | \ X00000400FFFFF28000000000000C0840000000000000000000000000000077F400000000000307F40 5 | (5,65535) | 40 | f | \ x00000500FFFFF28000000000000F089400000000000000000000000000C8440000000000000000000000000000000000c88440 6 | (6,65535) | 40 | f | \ x00000600FFFFF2800000000000028F400000000000000000000000000000F889400000000000F88940 7 | (7,65535) | 40 | f | \ x00000700FFFFF28000000000000408F4000000000000000000000000000000002888F4000000000000000288F40 (7 줄)
hash_page_type (page bytea) 텍스트를 반환
hash_page_type
주어진 페이지 유형을 반환Hash색인 롤 토토. 예를 들어:
test =# select hash_page_type (get_raw_page ( 'con_hash_index', 0)); hash_page_type --------------- 전달
hash_page_stats (page bytea) 레코드를 반환
hash_page_stats
a 버킷 또는 오버플로 페이지에 대한 정보를 반환합니다HASH색인. 예를 들어:
test =# select * from hash_page_stats (get_raw_page ( 'con_hash_index', 1)); -[레코드 1] ---+---------- live_items | 407 dead_items | 0 page_size | 8192 free_size | 8 hasho_prevblkno | 4096 hasho_nextblkno | 8474 Hasho_bucket | 0 hasho_flag | 66 hasho_page_id | 65408
hash_page_items (page bytea) 레코드를 반환
hash_page_items
a 버킷 또는 오버플로 페이지에 저장된 데이터에 대한 정보를 반환합니다HASH색인 롤 토토. 예를 들어:
test =# select * from hash_page_items (get_raw_page ( 'con_hash_index', 1)) 한계 5; ItemOffset | ctid | 데이터 ------------+----------+------------ 1 | (899,77) | 1053474816 2 | (897,29) | 1053474816 3 | (894,207) | 1053474816 4 | (892,159) | 1053474816 5 | (890,111) | 1053474816
hash_bitmap_info (색인 OID, Blkno bigint)를 반환합니다
hash_bitmap_info
비트 맵 롤 토토에 특정 오버플로 롤 토토에 대한 비트의 상태가HASH색인. 예를 들어:
test =# select * from hash_bitmap_info ( 'con_hash_index', 2052); Bitmapblkno | Bitmapbit | Bitstatus ------------+----------+------------ 65 | 3 | 티
hash_metapage_info (Page Bytea) 레코드를 반환
hash_metapage_info
a 메타 페이지에 저장된 정보를 반환합니다.HASH색인. 예를 들어:
test =# 마술, 버전, ntuples, ffactor, bsize, bmsize, bmshift, bmshift, 테스트-# Maxbucket, Highmask, Lowmask, Ovflpoint, Firstfree, NMAPS, Procid, 테스트-# regexp_replace (spares :: text, '(, 0)*', '')). test-# regexp_replace (mapp :: text, '(, 0)*', ''))) hash_metapage_info에서 test-# (get_raw_page ( 'con_hash_index', 0)); -[레코드 1] ---------------------------------------------------------------------------------- 마술 | 105121344 버전 | 4 ntuples | 500500 ffactor | 40 bsize | 8152 bmsize | 4096 bmshift | 15 Maxbucket | 12512 하이 마스크 | 16383 로우 마스크 | 8191 ovflpoint | 28 1 피리 | 1204 nmaps | 1 Procid | 450 스페어 | 0,0,0,0,0,1,1,1,1,1,1,1,1,4,4,4,45,55,58,59, 508,567,628,704,1193,1202,1204
문서에 올바른 것이 없다면 일치하지 않습니다. 특정 기능에 대한 귀하의 경험 또는 추가 설명이 필요합니다. 사용이 양식문서 문제를보고하려면