2025 년 9 월 4 일 :젠 토토 18 RC 1 릴리스!
이 문서는 지원되지 않는 버전의 젠 토토을위한 것입니다.
당신은에 대해 같은 페이지를 볼 수 있습니다토토 : 문서 : 17 : 19.17. 개발자 젠 토토버전 또는 위에 나열된 다른 지원 버전 중 하나입니다.

19.17. 개발자 옵션

다음 매개 변수는 작업을위한 것입니다.젠 토토소스 코드 및 경우에 따라 심하게 ​​손상된 데이터베이스의 복구를 지원합니다. 프로덕션 데이터베이스에서 사용할 이유가 없어야합니다. 따라서 샘플에서 제외되었습니다젠 토토.conf파일. 이러한 매개 변수 중 다수는 전혀 작동하기 위해 특수 소스 컴파일 플래그가 필요합니다.

allow_in_place_tablespaces(부울)

테이블 스페이스가 내부 디렉토리로 만들 수 있습니다PG_TBLSPC, 빈 위치 문자열이 제공되는 경우테이블 스페이스 생성명령. 이는 기본 및 대기 서버가 동일한 시스템에서 실행중인 복제 시나리오를 테스트 할 수 있도록 의존합니다. 이러한 디렉토리는 해당 위치에서 상징적 링크 만 찾을 것으로 예상되는 백업 도구를 혼동 할 수 있습니다. 수퍼 유저만이 설정을 변경할 수 있습니다.

allow_system_table_mods(부울)

시스템 테이블의 구조를 수정할 수 있습니다. 이것은에 의해 사용됩니다.initdb. 이 매개 변수는 서버 시작에서만 설정할 수 있습니다.

IGNORE_SYSTEM_INDEXES(부울)

시스템 테이블을 읽을 때 시스템 인덱스를 무시하십시오 (그러나 테이블을 수정할 때 인덱스를 계속 업데이트하십시오). 이것은 손상된 시스템 인덱스에서 복구 할 때 유용합니다. 이 매개 변수는 세션 시작 후에 변경할 수 없습니다.

post_auth_delay(Integer)

인증 절차를 수행 한 후 새 서버 프로세스가 시작될 때 지연되는 시간. 이는 개발자에게 디버거를 사용하여 서버 프로세스에 첨부 할 수있는 기회를 제공하기위한 것입니다. 이 값이 단위없이 지정되면 몇 초 만에 가져옵니다. 0의 값 (기본값)은 지연을 비활성화합니다. 이 매개 변수는 세션 시작 후에 변경할 수 없습니다.

pre_auth_delay(정수)

인증 프로세스를 수행하기 전에 새 서버 프로세스가 포기 직후 지연 시간의 양. 이는 개발자에게 인증의 오작동을 추적하기 위해 디버거를 사용하여 서버 프로세스에 첨부 할 수있는 기회를 제공하기위한 것입니다. 이 값이 단위없이 지정되면 몇 초 만에 가져옵니다. 0의 값 (기본값)은 지연을 비활성화합니다. 이 매개 변수는에서만 설정할 수 있습니다.젠 토토.conf파일 또는 서버 명령 줄에.

Trace_Notify(부울)

에 대한 많은 양의 디버깅 출력을 생성합니다듣기andNotify명령.client_min_messages또는log_min_messagesDebug1이 출력을 각각 클라이언트 또는 서버 로그로 보내려면.

trace_recovery_messages(enum)

로그를 기록하지 않은 복구 관련 디버깅 출력의 로깅을 활성화합니다. 이 매개 변수는 사용자가의 일반 설정을 무시할 수 있습니다.log_min_messages그러나 특정 메시지에만 해당됩니다. 이것은 핫 스탠드를 디버깅하는 데 사용하기위한 것입니다. 유효한 값은Debug5, Debug4, Debug3, Debug2, Debug1log. 기본값,log, 벌목 결정에 전혀 영향을 미치지 않습니다. 다른 값은 해당 우선 순위 이상의 복구 관련 디버그 메시지를 유발하여 마치 마치 마치 마치 기록 할 수 있습니다.log우선 순위; 의 일반적인 설정log_min_messages이로 인해 무조건 서버 로그로 전송됩니다. 이 매개 변수는에서만 설정할 수 있습니다.젠 토토.conf파일 또는 서버 명령 줄에.

trace_sort(부울)

켜기는 경우 정렬 작업 중에 리소스 사용에 대한 정보를 방출합니다. 이 매개 변수는 만 사용할 수 있습니다.trace_sort매크로가 정의되었을 때젠 토토편집되었습니다. (하지만,trace_sort현재 기본적으로 정의되어 있습니다.)

trace_locks(부울)

켜져있는 경우 잠금 사용에 대한 정보를 방출하십시오. 버려진 정보에는 잠금 작동 유형, 잠금 유형 및 잠금 또는 잠금 해제중인 객체의 고유 식별자가 포함됩니다. 또한이 객체에 이미 부여 된 잠금 유형 과이 객체에서 기다린 잠금 유형에 대한 비트 마스크도 포함되어 있습니다. 각 잠금 유형 A에 대해 부여 된 잠금 및 대기 잠금 장치 수의 수와 총계도 덤프됩니다. 로그 파일 출력의 예가 여기에 표시됩니다.

로그 : Lockacquire : New : Lock (0xB7ACD844) ID (24688,24696,0,0,0,1)
      Grantmask (0) Req (0,0,0,0,0,0,0) = 0 Grant (0,0,0,0,0,0,0) = 0
      대기 (0) 유형 (AccesssharElock)
로그 : Grantlock : Lock (0xB7ACD844) ID (24688,24696,0,0,0,1)
      Grantmask (2) Req (1,0,0,0,0,0,0) = 1 Grant (1,0,0,0,0,0,0) = 1
      대기 (0) 유형 (AccesssharElock)
로그 : UngrantLock : 업데이트 : 잠금 (0xB7ACD844) ID (24688,24696,0,0,0,1)
      Grantmask (0) Req (0,0,0,0,0,0,0) = 0 Grant (0,0,0,0,0,0,0) = 0
      대기 (0) 유형 (AccesssharElock)
로그 : CleanUplock : 삭제 : 잠금 (0xB7ACD844) ID (24688,24696,0,0,0,1)
      Grantmask (0) Req (0,0,0,0,0,0,0) = 0 Grant (0,0,0,0,0,0,0) = 0
      대기 (0) 유형 (무효)

버려진 구조의 세부 사항은에서 찾을 수 있습니다.src/include/storage/lock.h.

이 매개 변수는에만 사용할 수 있습니다lock_debug매크로가 정의되었을 때젠 토토편집되었습니다.

trace_lwlocks(부울)

켜져있는 경우 경량 잠금 사용에 대한 정보를 방출합니다. 경량 잠금은 주로 공유 메모리 데이터 구조에 대한 액세스를 상호 배제하기위한 것입니다.

이 매개 변수는에만 사용할 수 있습니다Lock_Debug매크로가 정의되었을 때젠 토토편집되었습니다.

trace_userlocks(부울)

켜기는 경우 사용자 잠금 사용에 대한 정보를 방출합니다. 출력은와 동일합니다.trace_locks, 자문 잠금 장치에만 해당됩니다.

이 매개 변수는에만 사용할 수 있습니다lock_debug매크로가 정의되었을 때젠 토토편집되었습니다.

trace_lock_oidmin(Integer)

설정된 경우,이 OID 아래 테이블의 잠금을 추적하지 마십시오 (시스템 테이블의 출력을 피하는 데 사용).

이 매개 변수는에만 사용할 수 있습니다lock_debug매크로가 정의되었을 때젠 토토편집되었습니다.

trace_lock_table(정수)

이 표에서 무조건 추적 잠금 장치 (OID).

이 매개 변수는 만 사용할 수 있습니다lock_debug매크로가 정의되었을 때젠 토토편집되었습니다.

debug_deadlocks(부울)

설정된 경우 교착 상태 시간 초과가 발생할 때 모든 현재 잠금에 대한 정보를 덤프합니다.

이 매개 변수는 이면만 사용할 수 있습니다lock_debug매크로가 정의되었을 때젠 토토편집되었습니다.

log_btree_build_stats(부울)

세트 인 경우 다양한 B- 트리 작업에 대한 시스템 리소스 사용 통계 (메모리 및 CPU)를 로그입니다.

이 매개 변수는 만 사용할 수 있습니다btree_build_stats매크로가 정의되었을 때젠 토토편집되었습니다.

Wal_Consistency_checking(String)

이 매개 변수는 WAL REDO 루틴의 버그를 확인하는 데 사용됩니다. 활성화되면 WAL 레코드와 함께 수정 된 버퍼의 전체 페이지 이미지가 레코드에 추가됩니다. 레코드가 이후에 재생되는 경우 시스템은 먼저 각 레코드를 적용한 다음 레코드로 수정 된 버퍼가 저장된 이미지와 일치하는지 테스트합니다. 어떤 경우 (예 : 힌트 비트)에서는 사소한 변형이 허용되며 무시됩니다. 예상치 못한 차이로 인해 치명적인 오류가 발생하여 회복을 종료합니다.

이 설정의 기본값은 빈 문자열로 기능을 비활성화합니다. 로 설정할 수 있습니다.all모든 레코드를 확인하거나 쉼표로 구분 된 리소스 관리자 목록에 해당 리소스 관리자로부터 유래 한 레코드 만 확인합니다. 현재 지원되는 자원 관리자는, Heap2, btree, HASH, , gist, 시퀀스, SPGIST, 브린제네릭. 수퍼 유저만이 설정을 변경할 수 있습니다.

Wal_debug(부울)

켜져 있다면 WAL 관련 디버깅 출력을 방출합니다. 이 매개 변수는 만 사용할 수 있습니다.Wal_debug매크로가 정의되었을 때젠 토토편집되었습니다.

IGNORE_CHECKSUM_FAILURE(부울)

효과가있는 경우에만데이터 체크섬활성화되었습니다.

읽기 중 체크섬 고장 감지 정상적으로 원인젠 토토현재 거래를 중단하고 오류를보고합니다. 환경IGNORE_CHECKSUM_FAILUREON ON은 시스템이 실패를 무시하고 (경고를보고) 계속 처리합니다. 이 행동은부패 또는 기타 심각한 문제로 충돌, 전파 또는 숨기기. 그러나 오류를 지나서 블록 헤더가 여전히 제정신 인 경우 테이블에 여전히 존재할 수있는 손상되지 않은 튜플을 검색 할 수 있습니다. 헤더가 손상되면이 젠 토토이 활성화 된 경우에도 오류 가보고됩니다. 기본 설정은입니다.off

Zero_damaged_Pages(부울)

손상된 페이지 헤더 감지는 일반적으로 원인젠 토토현재 거래를 중단하고 오류를보고합니다. 환경Zero_damaged_pageson on은 시스템이 경고를보고하고 메모리의 손상된 페이지를 제로하고 처리를 계속합니다. 이 행동데이터를 파괴 할 것입니다, 즉 손상된 페이지의 모든 행. 그러나 오류를지나 표에 존재할 수있는 손상되지 않은 페이지에서 행을 검색 할 수 있습니다. 하드웨어 또는 소프트웨어 오류로 인해 손상이 발생한 경우 데이터를 복구하는 데 유용합니다. 테이블의 손상된 페이지에서 데이터를 복구 할 희망을 포기할 때까지 일반적으로 이것을 설정해서는 안됩니다. 제로화 페이지는 디스크를 강제로하지 않으므로이 매개 변수를 다시 끄기 전에 테이블이나 인덱스를 재현하는 것이 좋습니다. 기본 설정은입니다.OFF

jit_debugging_support(부울)

LLVM이 필요한 기능이있는 경우와 함께 등록 된 기능을 등록하는 기능이있는 경우gdb. 이로 인해 디버깅이 더 쉬워집니다. 기본 설정은입니다.OFF. 이 매개 변수는 서버 시작에서만 설정할 수 있습니다.

JIT_DUMP_BITCODE(부울)

생성 된 내용LLVM내부 파일 시스템으로 irdata_directory. 이것은 JIT 구현 내부에서만 작업하는 데 유용합니다. 기본 설정은입니다.OFF. 이 매개 변수는 슈퍼업자에 의해서만 변경 될 수 있습니다.

jit_expressions(부울)

JIT 컴파일이 활성화 될 때 표현식이 JIT 컴파일인지 결정합니다 (참조PostgreSQL : 문서 : 12 : 31.2. 언제 사설). 기본값은on.

jit_profiling_support(부울)

LLVM이 필요한 기능이 있으면 허용하는 데 필요한 데이터를 방출합니다perfJIT에 의해 생성 된 프로파일 함수. 이것은 파일을 작성합니다$ home/.debug/jit/; 사용자는 원하는 경우 정리를 수행 할 책임이 있습니다. 기본 설정은입니다.OFF. 이 매개 변수는 서버 시작에서만 설정할 수 있습니다.

jit_tuple_deforming(부울)

JIT 컴파일이 활성화 될 때 튜플 변형이 JIT 컴파일인지 결정합니다 (참조PostgreSQL : 문서 : 12 : 31.2. 언제 사설). 기본값은on.