PostgreSQL: soi kèo bóng đá truoctran | |||
---|---|---|---|
prev | UP | Phụ lục E. Ghi chú kèo bóng đá c1 | NEXT |
Ngày kèo bóng đá c1: 2020-08-13
Bản kèo bóng đá c1 này chứa nhiều bản sửa lỗi từ 9.5.22. Để biết thông tin về các tính năng mới trong bản kèo bóng đá c1 chính 9.5, xemPhần E.26.
ThePostgreSQLCộng đồng sẽ ngừng kèo bóng đá c1 các bản cập nhật cho loạt kèo bóng đá c1 9.5.x vào tháng 2 năm 2021. Người dùng được khuyến khích cập nhật lên một chi nhánh kèo bóng đá c1 mới hơn.
Không cần thiết phải kết xuất/khôi phục cho những người chạy 9.5.x.
Tuy nhiên, nếu bạn đang nâng cấp từ phiên kèo bóng đá c1 sớm hơn 9.5.20, xemPhần E.6.
Tạo kèo bóng đá c1 tập lệnh cài đặt của mô -đun đóng góp an toàn hơn (Tom Lane)
Các cuộc tấn công tương tự như được mô tả trong CVE-2018-1058 có thể được thực hiện đối với tập lệnh cài đặt mở rộng, nếu kẻ tấn công có thể tạo các đối tượng trong lược đồ mục tiêu của tiện ích mở rộng hoặc lược đồ của kèo bóng đá c1 số tiện ích mở rộng điều kiện tiên quyết. Vì các tiện ích mở rộng thường yêu cầu đặc quyền SuperUser để cài đặt, điều này có thể mở kèo bóng đá c1 đường dẫn để có được đặc quyền siêu nhân.search_pathĐược sử dụng để chạy tập lệnh cài đặt; vô hiệu hóaCheck_Function_BodiesTrong tập lệnh; và sửa chữa các truy vấn điều chỉnh danh mục được sử dụng trong kèo bóng đá c1 số mô-đun đóng góp để đảm bảo chúng được bảo mật.
7370_7494
Đây là kèo bóng đá c1 vấn đề tương đối nhỏ khi sử dụng sao chép logic tích hợp, bởi vì con hải mã tích hợp sẽ gửi kèo bóng đá c1 câu trả lời phản hồi (dù sao cũng xóa trạng thái không chính xác). Nhưng với kèo bóng đá c1 số hệ thống sao chép khác, chẳng hạn nhưPGLogical, nó gây ra kèo bóng đá c1 vấn đề hiệu suất đáng kể.
Đảm bảolặp lại ()
Hàm có thể bị gián đoạn bởi truy vấn Hủy (Joe Conway)
7975_8015Giải thíchs Định dạng đầu ra không phải là văn kèo bóng đá c1 (Tom Lane, Euler Taveira)
Khắc phục thời gian xác nhận xác nhận lại ràng buộc trongBảng thay đổi(David Rowley)
nếuBảng thay đổiCần viết lại đầy đủ nội dung của bảng (ví dụ: do thay đổi kiểu dữ liệu của kèo bóng đá c1 cột) và cũng cần quét bảng để xác định lại các khóa nước ngoài hoặcKiểm trakèo bóng đá c1 ràng buộc, đôi khi nó đã làm những việc không đúng thứ tự, dẫn đến kèo bóng đá c1 lỗi kỳ lạ như"Không thể đọc khối 0 trong tệp" cơ sở/nnnnn/nnnnn ": Chỉ đọc 0 trên 8192 byte".
đối phó vớibênTài liệu tham khảo trong các mệnh đề hạn chế được gắn vào kèo bóng đá c1 phụ không được làm phẳngChọntrongtừmệnh đề (Tom Lane)
Giám sát này có thể dẫn đến sự cố khẳng định hoặc sự cố khi thực hiện truy vấn.
Tránh tin rằng kèo bóng đá c1 bàn nước ngoài không bao giờ được phân tích không có bộ dữ liệu không (Tom Lane)
Điều này chủ yếu ảnh hưởng đến ước tính của người lập kế hoạch về số lượng nhóm sẽ thu được bởiNhóm bởi.
Cải thiện xử lý lỗi trong máy chủBuffileMô -đun (Thomas Munro)
Khắc phục kèo bóng đá c1 số trường hợp lỗi I/O không thể phân biệt được với việc tiếp cận EOF hoặc hoàn toàn không được báo cáo. Ngoài ra, thêm chi tiết như số khối và số byte khi thích hợp.
Khắc phục sự bất thường kiểm tra xung đột trongserializableChế độ cách ly (Peter Geoghegan)
Nếu kèo bóng đá c1 tuple được chèn đồng thời được cập nhật bởi kèo bóng đá c1 giao dịch đồng thời khác và không thể nhìn thấy phiên bản Tuple nào đối với ảnh chụp nhanh của giao dịch hiện tại, kiểm tra xung đột tuần tự hóa có thể đưa ra kết luận sai về việc liệu Tuple có liên quan đến kết quả của giao dịch hiện tại hay không. Điều này có thể cho phép kèo bóng đá c1 giao dịch có thể thực hiện được khi nó không thành công với lỗi tuần tự hóa.
Tránh đánh dấu lặp đi lặp lại của kèo bóng đá c1 mục chỉ mục Btree đã chết như đã chết (Masahiko Sawada)
Trong khi vô hại về mặt chức năng, điều này dẫn đến lưu lượng WAL vô dụng khi tổng kiểm tra được bật hoặcwal_log_hintsđang trên.
Khắc phục sự thất bại của kèo bóng đá c1 số đường dẫn mã để có được khóa chính xác trước khi sửa đổiPG_Control(Nathan Bossart, Fujii Masao)
Giám sát này có thể cho phépPG_Control10493_10651PG_ControlCập nhật.
sửa lỗi trongcurrtid ()
vàcurrtid2 ()
(Michael Paquier)
kèo bóng đá c1 chức năng này (không có giấy tờ và chỉ được sử dụng bởi kèo bóng đá c1 phiên bản cổ của trình điều khiển ODBC) có chứa kèo bóng đá c1 lỗi mã hóa có thể dẫn đến sự cố hoặc trong kèo bóng đá c1 thông báo lỗi gây nhầm lẫn như"Không thể mở tệp"Khi áp dụng cho kèo bóng đá c1 mối quan hệ không có lưu trữ.
Tránh gọiELOG ()
hoặcpalloc ()
Trong khi cầm spinlock (Michael Paquier, Tom Lane)
Logic liên quan đến các khe sao chép có kèo bóng đá c1 số vi phạm quy tắc mã hóa này. Mặc dù tỷ lệ rắc rối khá thấp, kèo bóng đá c1 lỗi trong hàm được gọi sẽ dẫn đến kèo bóng đá c1 spinlock bị mắc kẹt.
Báo cáo lỗi ngoài không gian đúng cách trongpg_dumpvàpg_basebackup(Justin Pryzby, Tom Lane, Álvaro Herrera)
kèo bóng đá c1 số đường dẫn mã có thể tạo ra các báo cáo ngớ ngẩn như"Không thể ghi tệp: Thành công".
Khắc phục bản khôi phục song song của kèo bóng đá c1 bảng có cả hai đặc quyền cấp bảng và đặc quyền trên mỗi cột (Tom Lane)
Các khoản tài trợ đặc quyền cấp bảng phải được áp dụng trước, nhưng kèo bóng đá c1 khôi phục song song không đáng tin cậy đặt hàng theo cách đó; Điều này có thể dẫn đến"Cập nhật đồng thời"Lỗi hoặc biến mất kèo bóng đá c1 số khoản tài trợ đặc quyền trên mỗi cột. Việc sửa chữa cho điều này là bao gồm các liên kết phụ thuộc giữa các mục như vậy trong tệp lưu trữ, có nghĩa là kèo bóng đá c1 kết xuất mới phải được thực hiện với kèo bóng đá c1 bản sửa lỗipg_dumpĐể đảm bảo rằng vấn đề sẽ không tái diễn.
Đảm bảo rằngpg_upgradeChạy vớiVACUUM_DEFER_CLEANUP_AGEĐặt thành 0 trong cụm đích (Bruce Momjian)
12600_12665VACUUM_DEFER_CLEANUP_AGEVới giá trị khác, điều đó đã ngăn chặn việc đóng băng kèo bóng đá c1 danh mục hệ thống hoạt động đúng, điều này khiến việc nâng cấp thất bại theo những cách khó hiểu. Đảm bảo rằng bất kỳ cài đặt nào như vậy đều được ghi đè trong thời gian nâng cấp.
sửapg_recvlogicalĐể thoát khỏi tin nhắn đang chờ xử lý trước khi thoát (Noah Misch)
Không có điều này, người gửi sao chép có thể kèo bóng đá c1 hiện một lỗi gửi và thoát mà không thực hiện bản cập nhật cuối cùng dự kiến cho vị trí LSN của khe sao chép. Điều đó dẫn đến việc truyền lại dữ liệu sau kết nối tiếp theo.pg_recvlogicalmuốn tiêu thụ.
sửaPG_REWINDxử lý kèo bóng đá c1 tệp vừa bị xóa trong thư mục dữ liệu nguồn (Justin Pryzby, Michael Paquier)
Khi làm việc với cơ sở dữ kèo bóng đá c1 nguồn trực tuyến, việc xóa tệp đồng thời là có thể, nhưngPG_REWINDSẽ bị nhầm lẫn nếu việc xóa xảy ra giữa việc xem mục nhập thư mục của tệp và kiểm tra nó bằngstat ()
.
làmpg_test_fsyncSử dụng chế độ I/O nhị phân trên Windows (Michael Paquier)
Trước đây nó đã viết tệp kiểm tra ở chế độ văn kèo bóng đá c1, không phải là sự phản ánh chính xác củaPostgreSQLS sử dụng thực tế.
Khắc phục thất bại trong việc khởi tạo trạng thái cục bộ kèo bóng đá c1 cách chính xác trongPREDT/DBLINK(Joe Conway)
Với sự kết hợp đúng của hoàn cảnh, điều này có thể dẫn đếndblink_close ()
kèo bóng đá c1 điều khiển từ xa không mong muốncam kết.
sửaPREDT/PGCRYPTO14495_14510deflate ()
(Tom Lane)
Thepgp_sym_encrypt
kèo bóng đá c1 chức năng có thể tạo ra dữ liệu nén không chính xác do xử lý sai củaZLIB'yêu cầu API. Chúng tôi không có báo cáo về lỗi này biểu hiện với Stockzlib, nhưng nó có thể được nhìn thấy khi sử dụng IBM'sZLIBNXtriển khai.
Khắc phục trường hợp góc trong logic giải nén trongPREDT/PGCRYPTO'sPGP_SYM_DECRYPT
Chức năng (Kyotaro Horiguchi, Michael Paquier)
kèo bóng đá c1 luồng nén có thể kết thúc kèo bóng đá c1 cách hợp lệ bằng kèo bóng đá c1 gói trống, nhưng bộ giải nén không thể xử lý việc này và sẽ phàn nàn về dữ liệu bị hỏng.
Sử dụng Posix-Standardstrsignal ()
thay cho BSD-ishsys_siglist [](Tom Lane)
Điều này tránh kèo bóng đá c1 thất bại xây dựng với kèo bóng đá c1 phiên bản rất gần đây củaglibc.
Hỗ trợ xây dựng mã NLS của chúng tôi với Microsoft Visual Studio 2015 trở lên (Juan José Santamaría Flecha, Davinder Singh, Amit Kapila)
Tránh lỗi có thể xảy ra của tập lệnh cài đặt MSVC của chúng tôi khi có kèo bóng đá c1 tệp có tênCấu hìnhkèo bóng đá c1 số cấp trên cây mã nguồn (Arnold Müller)
Điều này có thể gây nhầm lẫn cho kèo bóng đá c1 số logic tìm kiếmCấu hìnhĐể xác định mức cao nhất của cây nguồn.