Phiên bản được hỗ trợ:3552_3561(17) /16 / 15 / 14 / 13
Phiên bản phát triển:18 / Devel
Phiên bản không được hỗ trợ:12 / 11 / 10 / 9.6 / 9.5 / 9.4 / 9.3 / 9.2 / 9.1 / 9.0 / 8.4 / 8.3 / 8.2 / 7.3 / 7.2

31.1. Chạy các bài tỷ lệ kèo bóng đá#

tỷ lệ kèo bóng đá thử nghiệm hồi quy có thể được chạy đối với máy chủ đã được cài đặt và chạy hoặc sử dụng cài đặt tạm thời trong cây xây dựng. Hơn nữa, có mộtHồisong songvà AHồituần tựHồiChế độ chạy các bài tỷ lệ kèo bóng đá. Phương thức tuần tự chạy từng tập lệnh tỷ lệ kèo bóng đá, trong khi phương thức song song khởi động nhiều quy trình máy chủ để chạy các nhóm thử nghiệm song song. Thử nghiệm song song thêm sự tự tin rằng giao tiếp và khóa xử lý đang hoạt động chính xác. Một số thử nghiệm có thể chạy tuần tự ngay cả trongHồisong songHồiChế độ trong trường hợp điều này được yêu cầu bởi bài tỷ lệ kèo bóng đá.

31.1.1. Chạy các bài tỷ lệ kèo bóng đá chống lại cài đặt tạm thời#

Để chạy các bài tỷ lệ kèo bóng đá hồi quy song song sau khi xây dựng nhưng trước khi cài đặt, hãy loại:

Làm cho tỷ lệ kèo bóng đá

Trong thư mục cấp cao nhất. (Hoặc bạn có thể thay đổi thànhsrc/test/repress12056_12137+Khănvà các bài tỷ lệ kèo bóng đá chạy tuần tự được đặt trước vớiHồi-. Cuối cùng, bạn sẽ thấy một cái gì đó như:

# Tất cả 213 bài tỷ lệ kèo bóng đá được thông qua.

12451_12503Phần 31.212604_12636thất bạiKhănđại diện cho một vấn đề nghiêm trọng.

Vì phương thức thử nghiệm này chạy một máy chủ tạm thời, nó sẽ không hoạt động nếu bạn thực hiện bản dựng với tư cách là người dùng gốc, vì máy chủ sẽ không khởi động dưới dạng root. Quy trình được đề xuất là không thực hiện bản dựng dưới dạng gốc, hoặc nếu không để thực hiện thử nghiệm sau khi hoàn thành cài đặt.

Nếu bạn đã cấu hìnhPostgreSQLĐể cài đặt vào vị trí mà người giàPostgreSQLCài đặt đã tồn tại và bạn thực hiệnLàm cho tỷ lệ kèo bóng đáTrước khi cài đặt phiên bản mới, bạn có thể thấy rằng các bài tỷ lệ kèo bóng đá không thành công vì các chương trình mới cố gắng sử dụng các thư viện chia sẻ đã được cài đặt. .Định cấu hình--Disable-RPATH. Tuy nhiên, bạn không nên sử dụng tùy chọn này để cài đặt cuối cùng.

Bài tỷ lệ kèo bóng đá hồi quy song song bắt đầu khá nhiều quy trình trong ID người dùng của bạn. Hiện tại, đồng thời tối đa là hai mươi tập lệnh tỷ lệ kèo bóng đá song song, có nghĩa là bốn mươi quy trình: có quy trình máy chủ vàPSQLQuá trình cho mỗi tập lệnh tỷ lệ kèo bóng đá. Vì vậy, nếu hệ thống của bạn thực thi giới hạn trên mỗi người dùng về số lượng quy trình, hãy đảm bảo giới hạn này ít nhất là năm mươi hoặc hơn, bạn có thể gặp các lỗi có vẻ ngẫu nhiên trong thử nghiệm song song. Nếu bạn không ở vị trí để tăng giới hạn, bạn có thể cắt giảm mức độ song song bằng cách đặtMax_ConnectionsTham số. Ví dụ:

Tạo Max_Connections = 10 tỷ lệ kèo bóng đá

Chạy không quá mười bài tỷ lệ kèo bóng đá.

31.1.2. Chạy các bài tỷ lệ kèo bóng đá chống lại cài đặt hiện có#

Để chạy các bài tỷ lệ kèo bóng đá sau khi cài đặt (xemChương 17), Khởi tạo thư mục dữ liệu và khởi động máy chủ như được giải thích trongChương 18, sau đó loại:

Tạo Installcheck

hoặc để tỷ lệ kèo bóng đá song song:

Tạo cài đặt, song song

tỷ lệ kèo bóng đá thử nghiệm sẽ liên hệ với máy chủ tại máy chủ cục bộ và số cổng mặc định, trừ khi được định hướng khác bởiPGHOSTPGPORTBiến môi trường. tỷ lệ kèo bóng đá thử nghiệm sẽ được chạy trong cơ sở dữ liệu có tênhồi quy; Bất kỳ cơ sở dữ liệu hiện có nào bằng tên này sẽ bị loại bỏ.

tỷ lệ kèo bóng đá thử nghiệm cũng sẽ tạm thời tạo ra một số đối tượng toàn cụm, chẳng hạn như vai trò, không gian bảng và đăng ký. Những đối tượng này sẽ có tên bắt đầu bằngRegress_. Cẩn thận khi sử dụnginstallCheckChế độ có cài đặt có bất kỳ đối tượng toàn cầu thực tế nào có tên theo cách đó.

31.1.3. tỷ lệ kèo bóng đá bộ thử nghiệm bổ sung#

TheLàm cho tỷ lệ kèo bóng đáTạo Installchecktỷ lệ kèo bóng đá lệnh chỉ chạyCoreHồitỷ lệ kèo bóng đá hồi quy, trong đó tỷ lệ kèo bóng đá chức năng tích hợp củaPostgreSQL16535_16698

Để chạy tất cả tỷ lệ kèo bóng đá bộ thử nghiệm áp dụng cho tỷ lệ kèo bóng đá mô -đun đã được chọn để xây dựng, bao gồm tỷ lệ kèo bóng đá thử nghiệm cốt lõi, nhập một trong tỷ lệ kèo bóng đá lệnh này ở đầu cây xây dựng:

Làm cho thế giới tỷ lệ kèo bóng đá
tạo cài đặt, thế giới

16961_17095Làm cho tỷ lệ kèo bóng đáTạo cài đặt. tỷ lệ kèo bóng đá cân nhắc khác giống như được giải thích trước đây cho mỗi phương thức. Lưu ý rằngLàm cho thế giới tỷ lệ kèo bóng đáXây dựng một thể hiện riêng (thư mục dữ liệu tạm thời) cho mỗi mô -đun được tỷ lệ kèo bóng đá, do đó nó đòi hỏi nhiều thời gian và không gian đĩa hơnTạo Installcheck-World.

Trên một máy hiện đại có nhiều lõi CPU và không có giới hạn hệ điều hành chặt chẽ, bạn có thể làm cho mọi thứ đi nhanh hơn đáng kể với sự song song. Công thức mà hầu hết tỷ lệ kèo bóng đá nhà phát triển PostgreSQL thực sự sử dụng để chạy tất cả tỷ lệ kèo bóng đá thử nghiệm là một cái gì đó giống như

Làm cho tỷ lệ kèo bóng đá -thế giới -j8/dev/null

với A-JGiới hạn gần hoặc nhiều hơn một chút so với số lượng lõi có sẵn. Vứt bỏstdoutLoại bỏ trò chuyện không thú vị khi bạn chỉ muốn xác minh thành công. (Trong trường hợp thất bại,stderrTin nhắn thường đủ để xác định nơi để nhìn gần hơn.)

Ngoài ra, bạn có thể chạy tỷ lệ kèo bóng đá bộ thử nghiệm riêng lẻ bằng cách gõLàm cho tỷ lệ kèo bóng đáhoặcTạo cài đặtTrong thư mục con thích hợp của cây xây dựng. Hãy nhớ rằngTạo cài đặtGiả sử bạn đã cài đặt (tỷ lệ kèo bóng đá) mô -đun có liên quan, không chỉ máy chủ lõi.

tỷ lệ kèo bóng đá thử nghiệm bổ sung có thể được gọi theo cách này bao gồm:

  • tỷ lệ kèo bóng đá hồi quy cho các ngôn ngữ thủ tục tùy chọn. Chúng được đặt dướiSRC/PL.

  • tỷ lệ kèo bóng đá hồi quy choĐóng gópMô -đun, nằm dướiđóng góp. Không phải tất cảĐóng gópMô -đun có các bài tỷ lệ kèo bóng đá.

  • tỷ lệ kèo bóng đá hồi quy cho các thư viện giao diện, nằm trongsrc/giao diện/libpq/testsrc/giao diện/ecpg/test.

  • tỷ lệ kèo bóng đá các phương thức xác thực được hỗ trợ cốt lõi, nằm trongSRC/TEST/Xác thực19515_19575

  • tỷ lệ kèo bóng đá hành vi căng thẳng của các phiên đồng thời, nằm trongSRC/TEST/BẮT ĐẦU.

  • tỷ lệ kèo bóng đá phục hồi sự cố và sao chép vật lý, nằm trongsrc/test/recovery.

  • tỷ lệ kèo bóng đá sao chép logic, nằm trongsrc/test/đăng ký.

  • tỷ lệ kèo bóng đá các chương trình khách hàng, nằm dướisrc/bin.

Khi sử dụngInstallcheckChế độ, các thử nghiệm này sẽ tạo và phá hủy cơ sở dữ liệu tỷ lệ kèo bóng đá có tên bao gồmhồi quy, ví dụPL_REGRESShoặcPREDT_REGRESS. Cẩn thận khi sử dụngInstallcheckChế độ có cài đặt có bất kỳ cơ sở dữ liệu không tỷ lệ kèo bóng đá nào có tên theo cách đó.

Một số bộ thử nghiệm phụ trợ này sử dụng cơ sở hạ tầng TAP được giải thích trongPhần 31.4. tỷ lệ kèo bóng đá thử nghiệm dựa trên TAP chỉ được chạy khi PostgreSQL được cấu hình với tùy chọn--Enable-Tap-Tests. Điều này được khuyến nghị để phát triển, nhưng có thể được bỏ qua nếu không có cài đặt perl phù hợp.

Một số bộ thử nghiệm không được chạy theo mặc định, vì chúng không an toàn để chạy trên hệ thống đa năng, vì chúng yêu cầu phần mềm đặc biệt hoặc vì chúng tốn nhiều tài nguyên. Bạn có thể quyết định các bộ tỷ lệ kèo bóng đá nào sẽ chạy thêm bằng cách đặtlàmhoặc biến môi trườngPG_TEST_EXTRAvới danh sách được tách biệt bởi khoảng trắng, ví dụ:

Làm cho tỷ lệ kèo bóng đá-world pg_test_extra = '

tỷ lệ kèo bóng đá giá trị sau hiện được hỗ trợ:

Kerberos

Chạy bộ tỷ lệ kèo bóng đá dướisrc/test/kerberos. Điều này yêu cầu cài đặt MIT Kerberos và mở ổ cắm TCP/IP Lắng nghe.

LDAP

Chạy bộ tỷ lệ kèo bóng đá dướisrc/test/ldap. Điều này đòi hỏi mộtOpenLDAPCài đặt và mở ổ cắm TCP/IP Lắng nghe.

SSL

Chạy bộ tỷ lệ kèo bóng đá dướisrc/test/ssl. Điều này mở ổ cắm TCP/IP Lắng nghe.

load_balance

Chạy bài tỷ lệ kèo bóng đásrc/giao diện/libpq/t/004_load_balance_dns.pl. Điều này yêu cầu chỉnh sửa hệ thốngMáy chủ22799_22839

libpq_encryption

Chạy bài tỷ lệ kèo bóng đásrc/giao diện/libpq/t/005_negotiate_encryption.pl. Điều này mở ổ cắm TCP/IP Lắng nghe. Nếu nhưPG_TEST_EXTRAcũng bao gồmKerberos, tỷ lệ kèo bóng đá thử nghiệm bổ sung yêu cầu cài đặt MIT Kerberos được bật.

Wal_consistency_checking

sử dụngwal_consistency_checking = allTrong khi chạy các bài tỷ lệ kèo bóng đá nhất định dướisrc/test/recovery. Không được bật theo mặc định vì nó tốn nhiều tài nguyên.

xid_wraparound

Chạy bộ tỷ lệ kèo bóng đá dướisrc/test/modules/xid_wraparound. Không được bật theo mặc định vì nó tốn nhiều tài nguyên.

tỷ lệ kèo bóng đá các tính năng không được hỗ trợ bởi cấu hình bản dựng hiện tại không được chạy ngay cả khi chúng được đề cập trongPG_TEST_EXTRA.

Ngoài ra, còn có các bài tỷ lệ kèo bóng đá trongsrc/test/modulessẽ được điều hành bởiLàm cho tỷ lệ kèo bóng đá-thế giớinhưng không phải bởiTạo Installcheck-World. Điều này là do họ cài đặt tỷ lệ kèo bóng đá tiện ích mở rộng không sản xuất hoặc có tỷ lệ kèo bóng đá tác dụng phụ khác được coi là không mong muốn để cài đặt sản xuất. Bạn có thể sử dụngTạo cài đặtTạo InstallcheckTrong một trong những thư mục con đó nếu bạn muốn, nhưng không nên làm như vậy với máy chủ không tỷ lệ kèo bóng đá.

31.1.4. Locale và mã hóa#

Theo mặc định, tỷ lệ kèo bóng đá thử nghiệm sử dụng cài đặt tạm thời sử dụng locale được xác định trong môi trường hiện tại và mã hóa cơ sở dữ liệu tương ứng như được xác định bởiinitDB. Nó có thể hữu ích để tỷ lệ kèo bóng đá các địa phương khác nhau bằng cách đặt các biến môi trường thích hợp, ví dụ:

Làm cho tỷ lệ kèo bóng đá lang = c
Làm cho tỷ lệ kèo bóng đá lc_collate = en_us.utf8 lc_ctype = fr_ca.utf8

Vì lý do thực hiện, cài đặtlc_allkhông hoạt động cho mục đích này; Tất cả tỷ lệ kèo bóng đá biến môi trường liên quan đến địa phương khác đều hoạt động.

25541_25694

Bạn cũng có thể chọn mã hóa cơ sở dữ liệu rõ ràng bằng cách đặt biếnmã hóa, ví dụ:

Làm cho tỷ lệ kèo bóng đá Lang = c mã hóa = euc_jp

Đặt mã hóa cơ sở dữ liệu theo cách này thường chỉ có ý nghĩa nếu locale là C; Nếu không, mã hóa được chọn tự động từ ngôn ngữ và chỉ định mã hóa không khớp với locale sẽ dẫn đến lỗi.

Mã hóa cơ sở dữ liệu có thể được đặt cho tỷ lệ kèo bóng đá thử nghiệm chống lại một cài đặt tạm thời hoặc hiện có, mặc dù trong trường hợp sau, nó phải tương thích với locale của cài đặt.

31.1.5. Cài đặt máy chủ tùy chỉnh#

Có một số cách để sử dụng cài đặt máy chủ tùy chỉnh khi chạy bộ thử nghiệm. Điều này có thể hữu ích để cho phép ghi nhật ký bổ sung, điều chỉnh giới hạn tài nguyên hoặc bật thêm tỷ lệ kèo bóng đá thời gian chạy, chẳng hạn nhưDebug_Discard_Caches. Nhưng lưu ý rằng không phải tất cả các bài tỷ lệ kèo bóng đá có thể được dự kiến ​​sẽ vượt qua rõ ràng với các cài đặt tùy ý.

tỷ lệ kèo bóng đá tùy chọn bổ sung có thể được chuyển cho tỷ lệ kèo bóng đá khác nhauinitDBtỷ lệ kèo bóng đá lệnh được chạy nội bộ trong quá trình thiết lập thử nghiệm bằng biến môi trườngPG_TEST_INITDB_EXTRA_OPTS. Ví dụ: để chạy thử nghiệm với đã bật tổng tỷ lệ kèo bóng đá và kích thước phân đoạn wal tùy chỉnh vàwork_memCài đặt, sử dụng:

Làm cho tỷ lệ kèo bóng đá pg_test_initdb_extra_opts = '-k-wal-segsize = 4 -c work_mem = 50mb'

Đối với bộ tỷ lệ kèo bóng đá hồi quy cốt lõi và các thử nghiệm khác được điều khiển bởiPG_ERESS, Cài đặt máy chủ thời gian chạy tùy chỉnh cũng có thể được đặt trongpgoptionsBiến môi trường (cho tỷ lệ kèo bóng đá cài đặt cho phép này), ví dụ:

27781_27856

(Điều này sử dụng chức năng được cung cấp bởi libpq; xemTùy chọnĐể biết chi tiết.)

Khi chạy chống lại cài đặt tạm thời, tỷ lệ kèo bóng đá cài đặt tùy chỉnh cũng có thể được đặt bằng cách cung cấp một viết sẵnPostgreSql.conf:

echo 'log_checkpoints = ON' test_postgresql.conf
echo 'work_mem = 50mb'  test_postgresql.conf
Làm cho tỷ lệ kèo bóng đá thêm_regress_opts = "-temp-config = test_postgresql.conf"

31.1.6. Bài tỷ lệ kèo bóng đá bổ sung#

28663_28893Extra_Tests. Ví dụ: để chạynumeric_bigtỷ lệ kèo bóng đá:

Làm cho tỷ lệ kèo bóng đá thêm_tests = numeric_big

Gửi hiệu chỉnh

Nếu bạn thấy bất cứ điều gì trong tài liệu không chính xác, không khớp Kinh nghiệm của bạn với tính năng cụ thể hoặc yêu cầu làm rõ thêm, Vui lòng sử dụngMẫu nàyĐể báo cáo vấn đề tài liệu.