Postgresql 9.3.25 문서 | ||||
---|---|---|---|---|
PostgreSQL : 문서 : 9.3 : 테토토 캔 실행 | 롤 토토 : 문서 : 9.3 : 롤 토토 테스트 | 30 장. 회귀 스포츠 토토 | PostgreSQL : 문서 : 9.3 : 변형 비교 토토 |
일부는 올바르게 설치되고 완전히 작동합니다postgresql설치 CAN"실패"이러한 회귀 스포츠 토토 중 일부는 그로 인해 발생합니다 다양한 부동 소수점과 같은 플랫폼 별 아티팩트 표현 및 메시지 문구. 스포츠 토토는 현재입니다 간단한 사용diff비교 참조 시스템에서 생성 된 출력에 대해 결과가 작은 시스템 차이에 민감합니다. 스포츠 토토가보고 될 때 처럼"실패", 항상 검사하십시오 예상 결과와 실제 결과의 차이; 당신은 찾을 수 있습니다 차이가 중요하지 않습니다. 그럼에도 불구하고 우리는 여전히 지원되는 모든에서 정확한 참조 파일을 유지하기 위해 노력하십시오 플랫폼, 따라서 모든 스포츠 토토가 통과 될 것으로 예상 할 수 있습니다.
회귀 스포츠 토토의 실제 출력은 파일에 있습니다src/test/regess/results디렉토리. 그만큼 스포츠 토토 스크립트 사용diff각각을 비교합니다 에 저장된 참조 출력에 대한 출력 파일src/test/regress/expect디렉토리. 어느 검사에 대한 차이가 저장됩니다.src/test/regress/regression.diffs. (a 핵심 스포츠 토토 이외의 스포츠 토토 스위트,이 파일은 물론 나타납니다. 관련 하위 디렉토리에서src/test/regress.)
당신이 마음에 들지 않는다면diff옵션 기본적으로 사용되며 환경 변수 설정PG_REGRESS_DIFF_OPTS, 예를 들어PG_REGRESS_DIFF_OPTS = '-U'. (또는 실행할 수 있습니다diff자신, 원하는 경우)
어떤 이유로 든 특정 플랫폼이 a를 생성합니다."실패"주어진 스포츠 토토의 경우 출력 검사 결과 결과가 유효하다고 확신합니다. 실패 보고서를 침묵시키기 위해 새 비교 파일을 추가 할 수 있습니다. 향후 스포츠 토토가 실행됩니다. 보다PostgreSQL : 문서 : 9.3 : 변형 비교 토토자세한 내용.
일부 회귀 스포츠 토토에는 의도적 인 유효하지 않은 입력이 포함됩니다 값. 오류 메시지는에서 나올 수 있습니다.PostgreSQL코드 또는 호스트 플랫폼에서 시스템 루틴. 후자의 경우 메시지는마다 다를 수 있습니다 플랫폼이지만 유사한 정보를 반영해야합니다. 이것들 메시지의 차이로 인해 A가 발생합니다."실패"검증 할 수있는 회귀 스포츠 토토 점검.
초기화 된 서버에 대해 스포츠 토토를 실행하는 경우 C 이외의 Collation-Lorder 로케일이있을 수 있습니다. 정렬 순서 및 후속 실패로 인한 차이. 그만큼 회귀 스포츠 토토 스위트는 대체를 처리하는 것으로 알려진 대체 결과 파일 로케일의 수.
사용할 때 다른 로케일에서 스포츠 토토를 실행하려면 임시 설치 방법은 적절한 로케일 관련을 통과시킵니다 의 환경 변수gmakecommand 예를 들어 라인 :
gmake check lang = de_de.utf8
(회귀 스포츠 토토 드라이버 UnsetsLC_ALL이므로 사용하는 로케일을 선택하는 것은 작동하지 않습니다. 해당 변수).) 로케일을 사용하지 않으려면 모든 로케일 관련이 없습니다. 환경 변수 (또는이를 설정C) 또는 다음과 같은 특수 호출을 사용하십시오.
gmake check no_locale = 1
기존 설치에 대한 스포츠 토토를 실행할 때 로케일 설정은 기존 설치에 의해 결정됩니다. 변경하려면 그것은 다른 로케일로 데이터베이스 클러스터를 초기화합니다. 적절한 옵션 전달initdb.
일반적으로 회귀 스포츠 토토를 실행하는 것이 좋습니다. 생산 사용에 원하는 로케일 설정에서 로케일 및 인코딩 관련 코드 부분을 운동하십시오 실제로 생산에 사용됩니다. 운영 체제에 따라 환경, 당신은 실패를 얻을 수 있지만 최소한 현실을 달릴 때 어떤 로케일 별 행동이 기대할 것인지 알고 있습니다 응용 프로그램.
대부분의 날짜 및 시간 결과는 시간대에 따라 다릅니다. 환경. 참조 파일은 시간대에 대해 생성됩니다pst8pdt(캘리포니아 버클리) 및 거기에 그 시간이 지남에 따라 스포츠 토토가 실행되지 않으면 명백한 실패가 될 것입니다. 구역 설정. 회귀 스포츠 토토 드라이버는 환경 변수를 설정합니다pgtztopst8pdt, 일반적으로 적절한 결과를 보장합니다.
일부 스포츠 토토에는 64 비트 플로팅 포인트를 계산하는 것이 포함됩니다 숫자 (이중 정밀) 테이블에서 열. 수학적 기능과 관련된 결과의 차이이중 정밀열이 관찰되었습니다. 그만큼float8and지오메트리스포츠 토토는 특히 작습니다 플랫폼 또는 다른 컴파일러의 차이점 최적화 설정. 인간 안구 비교가 필요합니다 이러한 차이점의 실제 중요성을 결정하십시오 보통 10 진수 오른쪽에있는 10 개의 장소.
일부 시스템은 제로를 제로로 표시합니다-0, 다른 사람들은 그냥 보여 주지만0.
일부 시스템 신호 오류pow ()
andexp ()
전류가 기대하는 메커니즘과 다르게PostgreSQL코드.
동일한 행이 예상 파일에 나타나는 것과는 다른 순서입니다. 대부분 사례는 엄격하게 말하면 버그가 아닙니다. 대부분의 회귀 스포츠 토토 스크립트는 사용하기에 만족스럽지 않습니다주문 by모든 단일select, 결과 행 순서는 그렇지 않습니다 SQL 사양에 따라 잘 정의됩니다. 실제로, 그 이후로 우리는 동일한 데이터에서 실행되는 것과 동일한 쿼리를보고 있습니다. 동일한 소프트웨어로 일반적으로 동일한 결과 주문을받습니다. 모든 플랫폼이므로 부족주문 byis 문제가 아닙니다. 일부 쿼리에는 크로스 플랫폼 순서가 나타납니다 그러나 차이점. 이미 설치된 스포츠 토토시 서버, 차이 차이는 C가 아닌 로케일로 인해 발생할 수 있습니다. 사용자 정의 값과 같은 설정 또는 비 기본 매개 변수 설정 의work_mem또는 플래너 비용 매개 변수.
따라서 순서 차이가 보이면 무언가가 아닙니다. 쿼리에 쿼리가 없다면 걱정하기 위해주문 by결과가 위반되고 있습니다. 하지만, 어쨌든 우리가 추가 할 수 있도록보고하십시오주문 by해당 특정 쿼리에 가짜"실패"향후 릴리스.
왜 우리가 모든 회귀 스포츠 토토를 주문하지 않는지 궁금 할 것입니다. 이 문제를 한 번에 제거하기 위해 명시 적으로 쿼리합니다. 그만큼 이유는 회귀 스포츠 토토가 덜 유용하기 때문입니다. 더 이상 그렇지 않은 사람들을 제외하기 위해 주문한 결과를 생성합니다.
오류서버에서 결과를 스포츠 토토합니다 에서 충돌infinite_recurse () 선택명령, 프로세스 스택 크기에 대한 플랫폼의 한계가 있음을 의미합니다. 보다 작습니다.max_stack_depth매개 변수가 표시됩니다. 아래에서 서버를 실행하여 수정할 수 있습니다 더 높은 스택 크기 제한 (기본값으로 4MB가 권장됩니다. 의 가치max_stack_depth). 당신이라면 그렇게 할 수 없다면 대안은의 가치를 줄이는 것입니다.max_stack_depth.
지원 플랫폼getRlimit ()
, 서버는 자동으로해야합니다
안전한 값을 선택하십시오max_stack_depth; 그래서
이 설정을 수동으로 재정의하지 않는 한, 이것의 실패
친절은보고 가능한 버그입니다.
therandom스포츠 토토 스크립트가 의도되었습니다 무작위 결과를 생성합니다. 매우 드문 경우가 발생하면 이로 인해 발생합니다 회귀 스포츠 토토 실패. 타자:
diff results/random.out random.out/random.out
는 하나 또는 몇 줄의 차이 만 생성해야합니다. 당신은 필요합니다 임의의 스포츠 토토가 반복적으로 실패하지 않으면 걱정하지 마십시오.
기존 설치에 대한 스포츠 토토를 실행할 때 일부 비 디폴라 매개 변수 설정으로 인해 스포츠 토토가 실패 할 수 있습니다. 을 위한 예,와 같은 매개 변수 변경enable_seqscan또는enable_indexscan는 계획 변경을 유발할 수 있습니다 사용하는 스포츠 토토 결과에 영향을 미칩니다설명.
이전 | 배트맨 토토 : 문서 : 9.3 : 배트맨 토토 9.3.25 문서화 | 다음 |
스포츠 토토 실행 | 롤 토토 : 문서 : 9.3 : 롤 토토 테스트 | 변형 비교 파일 |