Phiên bản được hỗ trợ:hiện tại(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
Tài liệu này dành cho phiên bản không được hỗ trợ của PostgreSQL.
Bạn có thể muốn xem cùng một trang chohiện tạiPhiên bản hoặc một trong soi kèo bóng đá truoctran phiên bản được hỗ trợ khác được liệt kê ở trên thay thế.

64.1. soi kèo bóng đá truoctran#

8397_8568

Lưu ý

Bản ghi soi kèo bóng đá truoctran chung bị bỏ qua trongkèo bóng đá hôm. Nếu giải mã logic là bắt buộc cho tiện ích mở rộng của bạn, hãy xem xét Trình quản lý tài nguyên soi kèo bóng đá truoctran tùy chỉnh.

API để xây dựng các bản ghi soi kèo bóng đá truoctran chung được xác định trongAccess/Generic_xlog.hvà được triển khai trongAccess/transam/Generic_xlog.c.

9093_9189

  1. state = GenericXlogStart (quan hệ)- Bắt đầu xây dựng một bản ghi soi kèo bóng đá truoctran chung cho mối quan hệ đã cho.

  2. page = GenericXlogRegisterBuffer (trạng thái, bộ đệm, cờ)- Đăng ký bộ đệm sẽ được sửa đổi trong bản ghi soi kèo bóng đá truoctran chung hiện tại. Hàm này trả về một con trỏ vào một bản sao tạm thời của trang của bộ đệm, nơi cần sửa đổi.Generic_xlog_full_image, chỉ ra rằng một hình ảnh toàn trang thay vì cập nhật delta nên được đưa vào bản ghi soi kèo bóng đá truoctran. Thông thường, cờ này sẽ được đặt nếu trang mới hoặc đã được viết lại hoàn toàn.10173_10200Có thể lặp lại nếu hành động soi kèo bóng đá truoctran-Logged cần sửa đổi nhiều trang.

  3. Áp dụng soi kèo bóng đá truoctran sửa đổi cho hình ảnh trang thu được trong bước trước.

  4. GenericXlogfinish (State)- Áp dụng các thay đổi cho bộ đệm và phát ra bản ghi soi kèo bóng đá truoctran chung.

Xây dựng bản ghi soi kèo bóng đá truoctran có thể bị hủy giữa bất kỳ bước nào trên bằng cách gọiGenericXLogabort (State). Điều này sẽ loại bỏ tất cả soi kèo bóng đá truoctran thay đổi cho soi kèo bóng đá truoctran bản sao hình ảnh trang.

Xin lưu ý các điểm sau khi sử dụng cơ sở bản ghi soi kèo bóng đá truoctran chung:

  • Không được phép sửa đổi trực tiếp bộ đệm! Tất cả soi kèo bóng đá truoctran sửa đổi phải được thực hiện trong soi kèo bóng đá truoctran bản sao có được từGenericXLogRegisterBuffer (). Nói cách khác, mã tạo ra các bản ghi soi kèo bóng đá truoctran chung không bao giờ được gọiBufferGetPage ()cho chính nó. Tuy nhiên, nó vẫn là trách nhiệm của người gọi đối với pin/unpin và khóa/mở khóa soi kèo bóng đá truoctran bộ đệm vào thời điểm thích hợp.GenericXlogRegisterBuffer ()cho đến sauGenericXlogfinish ().

  • Đăng ký bộ đệm (Bước 2) và sửa đổi hình ảnh trang (Bước 3) có thể được trộn tự do, tức là, cả hai bước có thể được lặp lại trong bất kỳ chuỗi nào. Hãy nhớ rằng soi kèo bóng đá truoctran bộ đệm nên được đăng ký theo cùng một thứ tự trong đó soi kèo bóng đá truoctran khóa sẽ được lấy trên chúng trong quá trình phát lại.

  • Số lượng bộ đệm tối đa có thể được đăng ký cho bản ghi soi kèo bóng đá truoctran chung làMAX_GENERIC_XLOG_PAGES. Một lỗi sẽ bị ném nếu vượt quá giới hạn này.

  • soi kèo bóng đá truoctran chung cho rằng các trang cần sửa đổi có bố cục tiêu chuẩn và đặc biệt là không có dữ liệu hữu ích giữaPD_LOWERPD_UPPER.

  • Vì bạn đang sửa đổi soi kèo bóng đá truoctran bản sao của soi kèo bóng đá truoctran trang bộ đệm,GenericXlogStart ()không bắt đầu một phần quan trọng. Vì vậy, bạn có thể thực hiện phân bổ bộ nhớ, ném lỗi, v.v.GenicXlogStart ()GenericXlogfinish (). Phần quan trọng thực tế duy nhất có mặt bên trongGenericXlogfinish (). Không cần phải lo lắng về việc gọiGenericXLogabort ()Trong khi thoát lỗi.

  • GenericXlogfinish ()Chăm sóc đánh dấu bộ đệm bẩn và đặt LSN của họ. Bạn không cần phải làm điều này một cách rõ ràng.

  • Đối với các mối quan hệ không được tính, mọi thứ đều hoạt động giống nhau ngoại trừ việc không có bản ghi soi kèo bóng đá truoctran thực tế nào được phát ra. Do đó, bạn thường không cần phải thực hiện bất kỳ kiểm tra rõ ràng nào cho các mối quan hệ chưa được tính.

  • Chức năng soi kèo bóng đá truoctran Redo chung sẽ có được các khóa độc quyền cho bộ đệm theo thứ tự giống như chúng đã được đăng ký. Sau khi làm lại tất cả các thay đổi, các khóa sẽ được phát hành theo cùng một thứ tự.

  • nếuGeneric_xlog_full_imagekhông được chỉ định cho bộ đệm đã đăng ký, bản ghi soi kèo bóng đá truoctran chung chứa một đồng bằng giữa hình ảnh trang cũ và trang mới. Delta này dựa trên so sánh byte-byte.