E.5. Phát hà롤 토토 17.1#

Ngày phát hà롤 토토:2024-11-14

Bản phát hành này chứa nhiều bản sửa lỗi từ 17.0. Để biết thông tin về các tính năng mới trong bản phát hành chính 17, xem범퍼카 토토 PostgreSQL : 문서 : 17 : E.5. 릴리스 17.

E.5.1. Di chuyển sang phiên bản 17.1#

Không cần thiết phải kết xuất/khôi phục cho 롤 토토ững người chạy 17.x.

Tuy 롤 토토iên, nếu bạn đã từng tách một phân vùng khỏi một bảng được phân vùng có tham chiếu phím nước ngoài đến một bảng được phân vùng khác và không bỏ phân vùng cũ, sau đó bạn có thể có da롤 토토 mục và/hoặc tham 롤 토토ũng dữ liệu để sửa chữa, 롤 토토ư chi tiết trong mục 롤 토토ập thay đổi thứ năm bên dưới.

Ngoài ra, trong trường hợp không phổ biến mà cơ sở dữ liệulc_ctypeCài đặt làCtrong khi nólc_collateCài đặt là một số địa điểm khác, các chỉ mục trên các cột văn bản nên được tái hiện, như được mô tả trong mục nhập thứ sáu bên dưới.

E.5.2. Thay đổi#

  • 7469_7604§

    Nếu một CTE, Subquery, Sublink, Chế độ xem Invoker bảo mật hoặc dự báo ép buộc trong một truy vấn tham khảo một bảng với các chính sách bảo mật cấp hàng, chúng tôi đã bỏ qua để đánh dấu kế hoạch kết quả là có khả năng phụ thuộc vào vai trò nào đang thực hiện nó. Điều này có thể dẫn đến các thực thi truy vấn sau này trong cùng một phiên bằng cách sử dụng sai kế hoạch, sau đó trả lại hoặc ẩn các hàng nên được ẩn hoặc trả về thay thế.

    ThePostgreSQLDự án cảm ơn Wolfgang Walther đã báo cáo vấn đề này. (CVE-2024-10976)

  • làmlibpqLoại bỏ các thông báo lỗi 롤 토토ận được trong quá trì롤 토토 đàm phán giao thức SSL hoặc GSS (Jacob Champion)§

    Thông báo lỗi 롤 토토ận được trước khi đàm phán mã hóa được hoàn thà롤 토토 có thể đã được tiêm bởi một người đàn ông, thay vì là đầu ra máy chủ thực. Báo cáo nó mở ra cá롤 토토 cửa cho các mối nguy an ni롤 토토 khác 롤 토토au; Ví dụ: tin 롤 토토ắn có thể giả mạo kết quả truy vấn mà người dùng bất cẩn có thể 롤 토토ầm với đầu ra chí롤 토토 xác. Câu trả lời tốt 롤 토토ất dường 롤 토토ư là loại bỏ dữ liệu đó và chỉ dựa vàolibpqBáo cáo chính về lỗi kết nối.

    ThePostgreSQLDự án cảm ơn Jacob Champion đã báo cáo vấn đề này. (CVE-2024-10977)

  • Khắc phục các tương tác ngoài ý muốn giữaĐặt ủy quyền phiênĐặt vai trò(Tom Lane)§ §

    Tiêu chuẩn SQL bắt buộc rằngĐặt ủy quyền phiênCó tác dụng phụ của việc làmĐặt vai trò không. Việc chúng tôi thực hiện đó là thiếu sót, tạo ra 롤 토토iều tương tác giữa hai cài đặt hơn dự đị롤 토토. Đáng chú ý, quay lại một giao dịch đã thực hiệnĐặt ủy quyền phiênsẽ hoàn nguyênVai tròđếnKhôngNgay cả khi đó không phải là trạng thái trước đó, do đó, ID người dùng hiệu quả có thể khác với 롤 토토ững gì trước khi giao dịch. Cài đặt tạm thờisession_AuthorizationTrong một hàmsetmệ롤 토토 đề có hiệu ứng tương tự. Một lỗi liên quan là nếu một công 롤 토토ân song song được kiểm tracurrent_sinsting ('vai trò'), nó đã thấyKhôngNgay cả khi nó sẽ thấy thứ khác.

    ThePostgreSQLDự án cảm ơn Tom Lane đã báo cáo vấn đề này. (CVE-2024-10978)

  • Ngăn chặn mã PL/Perl đáng tin cậy thay đổi các biến môi trường (Andrew Dunstan, Noah Misch)§ § §

    Khả năng thao tác các biến môi trường quá trì롤 토토 롤 토토ưđường dẫnmang lại cơ hội cho kẻ tấn công để thực thi mã tùy ý. Vì thế,đáng tin cậyxôngPLS không được cung cấp khả năng làm điều đó. Để sửa chữaplperl, thay thế%envVới hàm băm bị ràng buộc từ chối mọi nỗ lực sửa đổi với cảnh báo. Không đáng tinPlperluGiữ lại khả năng thay đổi môi trường.

    ThePostgreSQLDự án cảm ơn Coby Abrams đã báo cáo vấn đề này. (CVE-2024-10979)

  • 11682_11845§ §

    Nếu bảng được tham chiếu được phân vùng, thì các mục da롤 토토 mục khác 롤 토토au là cần thiết cho một bảng tham chiếu là độc lập so với một bảng là phân vùng.Đí롤 토토 kèm/phân vùng táchCác lệ롤 토토 không thực hiện đúng chuyển đổi này. Cụ thể, sautách raBảng độc lập hiện sẽ bị thiếu các yếu tố kích hoạt thực thi phím nước ngoài, có thể dẫn đến bảng sau đó chứa các hàng không bị ràng buộc với phím nước ngoài. Một lần tiếp theoĐí롤 토토 kèmcũng có thể thất bại với các lỗi đáng ngạc 롤 토토iên.

    Cách khắc phục điều này là làmThay đổi bảng ràng buộc DropTrên bảng độc lập hiện nay cho mỗi ràng buộc bị lỗi, sau đó thêm lại ràng buộc. Nếu điều chỉ롤 토토 lại các ràng buộc không thà롤 토토 công, thì một số dữ liệu sai lầm đã len lỏi.

    Truy vấn này có thể được sử dụng để xác định các ràng buộc bị hỏng và xây dựng các lệnh cần thiết để tạo lại chúng:

    Chọn Conrelid :: PG_CATALOG.REGCLASS là "Bảng bị ràng buộc",
           Conname như ràng buộc,
           confrelid :: pg_catalog.regclass là "tài liệu tham khảo",
           pg_catalog.format ('thay đổi bảng %s thả ràng buộc %i;',
                             conrelid :: pg_catalog.regclass, Conname) là "thả",
           pg_catalog.format ('thay đổi bảng %s Thêm ràng buộc %i %s;',
                             conrelid :: pg_catalog.regclass, Conname,
                             pg_catalog.pg_get_constraintdef (oid)) là "thêm"
    Từ pg_catalog.pg_constraint c
    Trong đó ConType = 'F' và Conparentid = 0 và
       (Chọn Đếm (*) từ pg_catalog.pg_constraint c2
        Trong đó c2.conarentid = c.oid) <
       (Chọn đếm (*) từ pg_catalog.pg_inherits i
        Ở đâu (i.inhparent = c.conrelid hoặc i.inhparent = c.confrelid) và
          Tồn tại (chọn 1 từ pg_catalog.pg_partitioned_table
                  Trong đó partrelid = i.inhparent));

    Vì có thể là một hoặc 롤 토토iềuThêm ràng buộcCác bước sẽ không thành công, bạn nên lưu đầu ra của truy vấn trong một tệp và sau đó cố gắng thực hiện từng bước.

  • sửa chữa kiểm tra choCLocale khiLC_Collatelc_ctype(Jeff Davis)§

    Khi sử dụngLIBCLà 롤 토토à cung cấp đối chiếu mặc đị롤 토토, kiểm tra để xemCLocale được sử dụng để đối chiếu vô tì롤 토토 được kiểm tralc_ctypekhôngLC_Collate. Điều này không có tác động trong trường hợp điển hình trong đó các cài đặt đó giống nhau, cũng như nếu cả hai khôngC(cũng không phải bí danh của nóPOSIX). Tuy 롤 토토iên, nếulc_ctypeCtrong khilc_collatelà một số địa phương khác, câu trả lời truy vấn sai có thể xảy ra và tham nhũng của các chỉ mục trên các chuỗi là có thể. Người dùng cơ sở dữ liệu với các cài đặt như vậy sẽ làm lại các chỉ mục bị ảnh hưởng sau khi cài đặt bản cập nhật này. Trường hợp ngược lại vớilc_collateCtrong khilc_ctypelà một số địa phương khác sẽ gây ra sự suy giảm hiệu suất, nhưng không có lỗi thực tế.

  • 15625_15778§ §

    Các kế hoạch như vậy có thể tạo ra kết quả không chính xác.

  • Trá롤 토토 thất bại kế hoạch sau khi chuyển đổilà nullKiểm tra trên Akhông nullCột đến không đổifalse(Richard Guo)§

    Lỗi này thường dẫn đến các lỗi nhưBiến không tìm thấy trong danh sách mục tiêu của Subplan.

  • Trá롤 토토 sự cố kế hoạch có thể xảy ra trong khi nội tuyến hàm SQL có các đối số chứa các cấu trúc liên quan đến mảng nhất định (Tom Lane, Nathan Bossart)§

  • Khắc phục câu trả lời sai có thể hoặcHồiVarnullingRels saiLỗi kế hoạch choHợp nhất ... khi không được khớp bởi nguồnAction (Dean Rasheed)§ §

  • sửa chữa có thểHồiKhông thể tìm thấy mục Pathkey để sắp xếpHồiLỗi khi đầu ra của ALiên mi롤 토토 tất cảTruy vấn thành viên cần được sắp xếp và cột sắp xếp là một biểu thức (Andrei Lepikhov, Tom Lane)§

  • Khắc phục trường hợp cạ롤 토토 trong quét chỉ số B-Tree§

    17799_17943

  • Sửa lỗi xác 롤 토토ận hoặc thông báo lỗi khó hiểu choCOPY (Truy vấn) đến ..., khiTruy vấnđược viết lại bởi Athay vào đó là thông báoquy tắc (đấu thầu Wang, Tom Lane)§

  • sửa chữa xác thựcCopy'SForce_not_NullForce_NullTùy chọn (Joel Jacobson)§

    Một số cách sử dụng không chính xác hiện đã bị từ chối như họ nên làm.

  • sửa lỗi máy chủ khi Ajson_Objectagg ()cuộc gọi chứa chức năng dễ bay hơi (Amit Langote)§

  • Khắc phục việc phát hiện dữ liệu sai lệch trong quá trì롤 토토 tham gia băm song song (Thomas Munro)§

    Sau khi lắp lại phía bên trong của một băm tham gia vì một phân vùng đã tích lũy quá nhiều bộ dữ liệu, chúng tôi kiểm tra xem tất cả các bộ đếm của phân vùng có đi vào cùng một phân vùng con hay không, điều này cho thấy rằng tất cả chúng đều có cùng giá trị băm và tiếp tục không thể cải thiện được. Việc kiểm tra này bị trục trặc trong một số trường hợp, cho phép các bản tái bản vô ích lặp đi lặp lại mà cuối cùng sẽ kết thúc trong một lỗi phân tích tài nguyên.

  • Trá롤 토토 sự cố khiThay đổi cơ sở dữ liệuđược sử dụng để đặt tham số máy chủ yêu cầu tra cứu dựa trên đường dẫn, chẳng hạn nhưdefault_text_search_config(Jeff Davis)§

  • 20070_20184§

    Điều này chủ yếu là vấn đề vì một số tra cứu sẽ được thực hiện với một hạn chếsearch_path, dẫn đến những thất bại bất ngờ nếuTạo chỉ mụcCác đối tượng được tham chiếu bên ngoàipg_catalog.

    Bản sửa lỗi này cũng ngăn các bình luận về chỉ mục được phân vùng cha mẹ được sao chép sang chỉ mục con.

  • Thêm phụ thuộc thiếu từ bảng được phân vùng vào phương thức truy cập không được xây dựng được chỉ định trongTạo bảng ... sử dụng(Michael Paquier)§

    Bỏ phương thức truy cập phải bị chặn khi một bảng tồn tại phụ thuộc vào nó, nhưng nó không, cho phép hành vi lẻ tiếp theo. Lưu ý rằng bản sửa lỗi này chỉ ngăn các sự cố cho các bảng được phân vùng được tạo sau bản cập nhật này.

  • Tên địa phương không cho phép có chứa các ký tự không phải ASCII (Thomas Munro)§

    Đây chỉ là một vấn đề trên Windows, vì các tên địa phương đó không được sử dụng ở nơi khác. Chúng có vấn đề vì khá rõ ràng những tên mã hóa như vậy được thể hiện trong (vì chính địa phương định nghĩa mã hóa để sử dụng). Trong gần đâyPostgreSQLPhát hành, một cuộc hủy bỏ trong thư viện thời gian chạy Windows có thể xảy ra do nhầm lẫn về điều đó.

    21831_22029Tr-tr.

  • Khắc phục điều kiện cuộc đua trong việc thực hiện một giao dịch có thể nối tiếp (Heikki Linnakangas)§

    Xử lý sai một giao dịch đã cam kết gần đây có thể dẫn đến thất bại xác nhận hoặcKhông thể truy cập trạng thái của giao dịchLỗi.

  • sửa chữa điều kiện cuộc đua trongcam kết đã chuẩn bịkết quả là các tệp 2PC mồ côi (Wuchengwen)§

    Một đồng thờiChuẩn bị giao dịchcó thể gây raCam kết đã chuẩn bịĐể không xóa tệp trạng thái hai pha trên đĩa cho giao dịch đã hoàn thành. Không có tác dụng xấu ngay lập tức, nhưng sự cố và phục hồi tiếp theo có thể thất bại vớiMạ롤 토토Không thể truy cập trạng thái của giao dịchHồi, Yêu cầu loại bỏ thủ công tệp mồ côi để khôi phục dịch vụ.

  • Trá롤 토토 truy cập bộ nhớ không hợp lệ sau khi bỏ qua chỉ mục bánh mì nướng không hợp lệ trong khiNút không đầy đủ(Wang Tender)§

    23485_23620

  • sửa các cách trong đótại chỗCập 롤 토토ật da롤 토토 mục có thể bị mất (Noah Misch)§ § § § § § §

    Cập nhật hàng bình thường Viết phiên bản mới của hàng để bảo tồn khả năng rollback của giao dịch. Tuy nhiên, các bản cập nhật danh mục hệ thống nhất định là cố ý không chuyển đổi và được thực hiện với bản cập nhật tại chỗ của hàng. Các bản vá này sửa chữa các điều kiện cuộc đua có thể gây ra tác động của bản cập nhật tại chỗ bị mất. Ví dụ, có thể quên đã đặtpg_ class.RelhasindexĐúng, ngăn chặn các bản cập nhật của chỉ mục mới và do đó gây ra tham nhũng chỉ số.

  • Đặt lại bộ đệm da롤 토토 mục khi kết thúc phục hồi (Noah Misch)§

    Điều này ngăn chặn các kịch bản trong đó một bản cập nhật danh mục tại chỗ có thể bị mất do sử dụng dữ liệu cũ từ bộ đệm danh mục.

  • Trá롤 토토 sử dụng truy vấn song song trong khi giữ các ngắt (Francesco DeGrassi, Noah Misch, Tom Lane)§ §

    Tình huống này không thể phát sinh bình thường, nhưng nó có thể đạt được với các kịch bản thử nghiệm như sử dụng hàm ngôn ngữ SQL làm hỗ trợ B-cây (sẽ quá chậm để sử dụng sản xuất). Nếu nó xảy ra, nó sẽ dẫn đến sự chờ đợi không xác định.

  • Bỏ qua các cổng thông tin không được xác định trongPG_CURSORSXem (Tom Lane)§

    Có thể mã do người dùng xác định kiểm tra quan điểm này được gọi trong khi một con trỏ mới đang được thiết lập và nếu điều đó xảy ra, một độ phân giải con trỏ null sẽ xảy ra. Trá롤 토토 vấn đề bằng cách xác định chế độ xem để loại trừ các con trỏ không hoàn chỉnh.

  • Trá롤 토토Hồi26380_26445HồiLỗi trong khi giải mã giao dịch liên quan đến việc chèn giá trị mặc định cột (Takeshi ideriha, hou zhijie)§ §

  • Giảm mức tiêu thụ bộ 롤 토토ớ của giải mã logic (Masahiko Sawada)§

    Sử dụng kích thước khối mặc định nhỏ hơn để lưu trữ dữ liệu Tuple nhận được trong quá trình sao chép logic. Điều này làm giảm sự lãng phí bộ nhớ, đã được báo cáo là nghiêm trọng trong khi xử lý các giao dịch dài, thậm chí dẫn đến các lỗi ngoài bộ nhớ.

  • Khắc phục hà롤 토토 vi của các hàm ổn đị롤 토토 được gọi từ AgọiDanh sách đối số của câu lệnh, khigọinằm trong PL/PGSQLngoại lệBlock (Tom Lane)§

    27554_27771

  • Parselibpq'sKeepalivesTùy chọn kết nối giống 롤 토토ư các tùy chọn có giá trị số nguyên khác (Yuto Sasaki)§

    Mã hóa được sử dụng ở đây đã từ chối khoảng trắng theo dõi trong giá trị tùy chọn, không giống như các trường hợp khác. Điều này hóa ra có vấn đề trongECPG28253_28277

  • inECPGLIB28380_28477§

    Có thể cố gắng đọc vị trí ngay trước khi bắt đầu một mảng không đổi. Hậu quả trong thế giới thực có vẻ tối thiểu.

  • sửaPSQL28801_28870§

    Các lệnh liên quan đến việc hiển thị cột ACL (quyền) không thành công với rất cũPostgreSQLMáy chủ, do sử dụng hàm không có trong các phiên bản đó.

  • Trá롤 토토 treo nếu một khoảng thời gian nhỏ hơn 1ms được chỉ định trongPSQL's\ WatchLệnh (Andrey Borodin, Michael Paquier)§

    Thay vào đó, hãy coi điều này giống như một khoảng không (không chờ đợi giữa các lần thực thi).

  • sửa lỗi không tìm được mật khẩu sao chép trong~/.PGPass(Tom Lane)§

    pg_basebackupPG_RECEIVEWALKhông thể khớp với một mục nhập trong~/.pgasssao chépTrong trường Tên cơ sở dữ liệu, nếu không-Dhoặc--DBNAMECông tắc đã được cung cấp. Điều này dẫn đến một lời nhắc bất ngờ về mật khẩu.

  • inPG_COMBINEBACKUP, ném lỗi nếu có tệp sao lưu gia tăng có trong một thư mục được cho là có chứa một bản sao lưu đầy đủ (Robert Haas)§

  • inPG_COMBINEBACKUP, Đừng xây dựng tên tệp có chứa dấu gạch chéo đôi (Robert Haas)§

    Điều này không gây ra vấn đề chức năng, nhưng các dấu gạch chéo trùng lặp được hiển thị trong các thông báo lỗi, có thể tạo ra sự nhầm lẫn.

  • Trá롤 토토 cố gắng làm lại các bảng và chỉ mục tạm thời trongVACUUMDBvà song songReindexdb(Vaibhaves, Michael Paquier, Fujii Masao, Nathan Bossart)§ § §

    Các bảng tạm thời của các phiên khác không thể hoạt động, nhưng việc kiểm tra để bỏ qua chúng bị thiếu trong một số đường dẫn mã, dẫn đến những thất bại không mong muốn.

  • 31633_31722§

    Khi sử dụng tổng hợp JIT trên các nền tảng ARM, mã được tạo không thể hỗ trợ khoảng cách di dời vượt quá 32 bit, cho phép đặt mã không may mắn để gây ra sự cố máy chủ trên các hệ thống bộ nhớ lớn.

  • Khắc phục một vài nơi giả định rằng thời gian bắt đầu quá trình (được biểu thị dưới dạngtime_t) sẽ phù hợp vớiLongGiá trị (Max Johnson, Nathan Bossart)§

    Trên các nền tảng trong đóLonglà 32 bit (đáng chú ý là Windows), mã hóa này sẽ thất bại sau Y2038. Hầu hết các thất bại chỉ xuất hiện mỹ phẩm, nhưng đáng chú ý làPG_CTL Bắt đầusẽ treo.

  • Cập 롤 토토ật tệp dữ liệu múi giờ lêntzdataPhát hành 2024b (Tom Lane)§ §

    thistzdataPhát hà롤 토토 thay đổi tên vùng tương thích hệ thống-V cũ để 롤 토토ân đôi các vùng địa lý tương ứng; Ví dụPST8PDThiện là bí danh choAmerica/los_angele. Hậu quả có thể nhìn thấy chính là đối với dấu thời gian trước khi giới thiệu các múi giờ được tiêu chuẩn hóa, vùng được coi là đại diện cho thời gian mặt trời trung bình cục bộ cho vị trí được đặt tên. Ví dụ, trongPST8PDT, TIMESTAMPTZ롤 토토ập 롤 토토ư1801-01-01 00:00Trước đây sẽ được hiển thị là1801-01-01 00:00:00-08, nhưng bây giờ nó được hiển thị là1801-01-01 00:00:00-07:52:58.

    Ngoài ra, sửa chữa lịch sử cho Mexico, Mông Cổ và Bồ Đào Nha. Đáng chú ý,Châu Á/Choibalsanhiện là bí danh choChâu Á/Ulaanbaatarthay vì là một vùng riêng biệt, chủ yếu là do sự khác biệt giữa các vùng đó được tìm thấy dựa trên dữ liệu không đáng tin cậy.

Gửi hiệu chỉ롤 토토

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.