pg_locks
Viewpg_locks
Cung cấp quyền truy cập vào thông tin về các kèo bóng đá pháp được tổ chức bởi các quy trình hoạt động trong máy chủ cơ sở dữ liệu. Nhìn thấyChương 13Để thảo luận thêm về kèo bóng đá pháp.
pg_locks
Chứa một hàng trên mỗi đối tượng có thể kèo bóng đá pháp hoạt động, chế độ kèo bóng đá pháp được yêu cầu và quy trình liên quan. Do đó, cùng một đối tượng có thể kèo bóng đá pháp có thể xuất hiện nhiều lần, nếu nhiều quy trình đang giữ hoặc chờ kèo bóng đá pháp trên đó.
10698_10991pg_descrip
hoặcpg_depend
). Ngoài ra, quyền mở rộng một mối quan hệ được biểu diễn dưới dạng đối tượng có thể kèo bóng đá pháp riêng, như quyền cập nhậtpg_database
.Datfrozenxid
. Cũng,HồiTư vấnHồikèo bóng đá pháp có thể được thực hiện trên các số có ý nghĩa do người dùng xác định.
Bảng 51.74.pg_locks
cột
tên | loại | Tài kèo bóng đá pháp tham khảo | Mô tả |
---|---|---|---|
LockType |
Text |
Loại đối tượng có thể kèo bóng đá pháp:quan hệ ,mở rộng ,frozenid ,trang ,Tuple ,TranstercentID ,VirtualXid ,Đối tượng ,userlock hoặcTư vấn |
|
Cơ sở dữ kèo bóng đá pháp |
oid |
|
OID của cơ sở dữ liệu trong đó mục tiêu kèo bóng đá pháp tồn tại hoặc không nếu mục tiêu là đối tượng được chia sẻ hoặc null nếu mục tiêu là ID giao dịch |
Mối quan hệ |
OID |
|
OID của mối quan hệ được nhắm mục tiêu bởi kèo bóng đá pháp hoặc null nếu mục tiêu không phải là mối quan hệ hoặc một phần của mối quan hệ |
trang |
Số nguyên |
Số trang được nhắm mục tiêu bởi kèo bóng đá pháp trong quan hệ hoặc null nếu mục tiêu không phải là trang quan hệ hoặc tuple | |
Tuple |
SmallInt |
Số tuple được nhắm mục tiêu bởi kèo bóng đá pháp trong trang hoặc null nếu mục tiêu không phải là một tuple | |
VirtualXid |
Text |
ID ảo của giao dịch được nhắm mục tiêu bởi kèo bóng đá pháp hoặc null nếu mục tiêu không phải là ID giao dịch ảo | |
TranstercentID |
XID |
ID của giao dịch được nhắm mục tiêu bởi kèo bóng đá pháp hoặc null nếu mục tiêu không phải là ID giao dịch | |
classId |
oid |
|
OID của danh mục hệ thống chứa mục tiêu kèo bóng đá pháp hoặc null nếu mục tiêu không phải là đối tượng cơ sở dữ liệu chung |
objid |
oid |
bất kỳ cột oid nào | oid của mục tiêu kèo bóng đá pháp trong danh mục hệ thống của nó hoặc null nếu mục tiêu không phải là đối tượng cơ sở dữ liệu chung |
objsubid |
SmallInt |
Số cột được nhắm mục tiêu bởi kèo bóng đá pháp (TheclassID vàobjid Tham khảo bản thân bảng) hoặc không nếu mục tiêu là một số đối tượng cơ sở dữ kèo bóng đá pháp chung khác hoặc null nếu mục tiêu không phải là đối tượng cơ sở dữ kèo bóng đá pháp chung |
|
VirtualTransaction |
Text |
ID ảo của giao dịch đang giữ hoặc chờ kèo bóng đá pháp này | |
PID |
Số nguyên |
ID xử lý của quy trình máy chủ giữ hoặc chờ kèo bóng đá pháp này hoặc null nếu kèo bóng đá pháp được tổ chức bởi một giao dịch đã chuẩn bị | |
Mode |
Text |
Tên của chế độ kèo bóng đá pháp được giữ hoặc mong muốn bởi quy trình này (xemPhần 13.3.1vàPhần 13.2.3) | |
được cấp |
Boolean |
Đúng nếu kèo bóng đá pháp được giữ, sai nếu kèo bóng đá pháp được chờ đợi | |
Fastpath |
Boolean |
Đúng nếu kèo bóng đá pháp được thực hiện qua đường dẫn nhanh, sai nếu được lấy qua bảng kèo bóng đá pháp chính |
được cấp
là đúng trong một hàng đại diện cho một kèo bóng đá pháp được giữ bởi quy trình được chỉ định. Sai chỉ ra rằng quá trình này hiện đang chờ đợi để có được kèo bóng đá pháp này, trong đó ngụ ý rằng ít nhất một quy trình khác đang giữ hoặc chờ chế độ kèo bóng đá pháp mâu thuẫn trên cùng một đối tượng có thể kèo bóng đá pháp.
Trong suốt quá trình chạy giao dịch, quy trình máy chủ giữ kèo bóng đá pháp độc quyền trên ID giao dịch ảo của giao dịch. Nếu ID vĩnh viễn được gán cho giao dịch (thường chỉ xảy ra nếu giao dịch thay đổi trạng thái của cơ sở dữ liệu), nó cũng giữ kèo bóng đá pháp độc quyền trên ID giao dịch vĩnh viễn của giao dịch cho đến khi kết thúc.
Mặc dù các bộ dữ liệu là một loại đối tượng có thể kèo bóng đá pháp, thông tin về kèo bóng đá pháp cấp hàng được lưu trữ trên đĩa, không phải trong bộ nhớ và do đó kèo bóng đá pháp cấp hàng thường không xuất hiện trong chế độ xem này. Nếu một quá trình đang chờ kèo bóng đá pháp cấp hàng, nó thường sẽ xuất hiện trong chế độ xem khi chờ ID giao dịch vĩnh viễn của chủ sở hữu hiện tại của kèo bóng đá pháp hàng đó.
kèo bóng đá pháp tư vấn có thể được mua trên các kèo bóng đá pháp bao gồm mộtBigint
Giá trị hoặc hai giá trị số nguyên. MỘTBigint
kèo bóng đá pháp được hiển thị với một nửa thứ tự cao của nó trongclassID
Cột, một nửa thứ tự thấp kèo bóng đá pháp nó trongobjid
Cột vàobjsubid
bằng 1. Bản gốcBigint
Giá trị có thể được lắp lại với biểu thức(classid :: Bigint << 32) | objid :: Bigint
. Các phím số nguyên được hiển thị với phím đầu tiên trongclassID
Cột, phím thứ hai trongobjid
Cột vàobjsubid
bằng 2. Ý nghĩa thực tế của các kèo bóng đá pháp tùy thuộc vào người dùng. kèo bóng đá pháp tư vấn là cục bộ cho mỗi cơ sở dữ liệu, vì vậyCơ sở dữ kèo bóng đá pháp
Cột có ý nghĩa đối với kèo bóng đá pháp tư vấn.
pg_locks
Cung cấp chế độ xem toàn cầu về tất cả các kèo bóng đá pháp trong cụm cơ sở dữ liệu, không chỉ những cái liên quan đến cơ sở dữ liệu hiện tại. Mặc dù nóMối quan hệ
Cột có thể được kết hợp vớipg_ class
.OID
Để xác định các mối quan hệ bị kèo bóng đá pháp, điều này sẽ chỉ hoạt động chính xác cho các mối quan hệ trong cơ sở dữ liệu hiện tại (những người màCơ sở dữ kèo bóng đá pháp
Cột là OID hoặc không cơ sở dữ kèo bóng đá pháp hiện tại).
ThePID
Cột có thể được nối vớiPID
Cột kèo bóng đá pháppg_stat_activity
Xem để nhận thêm thông tin về việc giữ phiên hoặc chờ từng kèo bóng đá pháp, ví dụ
Chọn * từ pg_locks pl trái tham gia pg_stat_activity psa
Ngoài ra, nếu bạn đang sử dụng các giao dịch đã chuẩn bị,VirtualTransaction
Cột có thể được nối vớiGiao dịch
Cột kèo bóng đá pháppg_prepared_xacts
Xem để có thêm thông tin về các giao dịch đã chuẩn bị giữ kèo bóng đá pháp. (Một giao dịch đã chuẩn bị không bao giờ có thể chờ kèo bóng đá pháp, nhưng nó tiếp tục giữ các kèo bóng đá pháp mà nó có được trong khi chạy.) Ví dụ:
Chọn * từ pg_locks pl trái tham gia pg_prepared_xacts ppx
Mặc dù có thể có được thông tin về các quy kèo bóng đá pháp nào chặn các quy kèo bóng đá pháp khác bằng cách tham giapg_locks
Chống lại chính nó, điều này rất khó để có được đúng chi tiết. Một truy vấn như vậy sẽ phải mã hóa kiến thức về chế độ kèo bóng đá pháp nào xung đột với những người khác.pg_locks
Xem không tiết lộ thông tin về các quy trình nào ở phía trước những người khác trong hàng đợi kèo bóng đá pháp, cũng như thông tin về quy trình nào là công nhân song song chạy thay mặt cho các phiên khách hàng khác. Tốt hơn là sử dụngpg_blocking_pids ()
hàm (xemBảng 9.60) Để xác định quy kèo bóng đá pháp chờ nào bị chặn phía sau.
Thepg_locks
Xem hiển thị dữ liệu từ cả trình quản lý kèo bóng đá pháp thông thường và trình quản lý kèo bóng đá pháp vị ngữ, là các hệ thống riêng biệt; Ngoài ra, trình quản lý kèo bóng đá pháp thông thường chia các kèo bóng đá pháp của nó thành thông thường vàđường dẫn nhanhkèo bóng đá pháp. Dữ liệu này không được đảm bảo là hoàn toàn phù hợp.Fastpath
=TRUE
) được thu thập từ mỗi phụ trợ mỗi lần một lần, mà không đóng băng trạng thái của toàn bộ trình quản lý kèo bóng đá pháp, do đó có thể kèo bóng đá pháp hoặc phát hành kèo bóng đá pháp trong khi thông tin được thu thập. Tuy nhiên, lưu ý rằng các kèo bóng đá pháp này được biết là không xung đột với bất kỳ kèo bóng đá pháp nào khác hiện đang có.
kèo bóng đá pháp trình quản lý kèo bóng đá pháp thông thường và/hoặc vị từ có thể có một số tác động đến hiệu suất cơ sở dữ liệu nếu chế độ xem này được truy cập rất thường xuyên. Các kèo bóng đá pháp chỉ được giữ trong khoảng thời gian tối thiểu cần thiết để có được dữ liệu từ các trình quản lý kèo bóng đá pháp, nhưng điều này không hoàn toàn loại bỏ khả năng tác động hiệu suất.