PostgreSQL
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> PostgreSQL

Phân số TX và XID đại diện cho điều gì trong công cụ postgres pgadmin

ID giao dịch ảo có định dạng "n / nnnn". XID thực chỉ là số nguyên. Phần đầu tiên của xid ảo là một mã định danh phụ trợ duy nhất cho mỗi kết nối; phần thứ hai là id giao dịch tạm thời được chỉ định bởi phần phụ trợ của kết nối đó cho các giao dịch của nó.

Xem định nghĩa của VirtualTransactionId trong src/include/storage/lock.h để biết chi tiết.

Các cột đó dường như tương ứng với virtualxid và / hoặc transactionidvirtualtransaction các cột trong pg_locks . Xem tài liệu .

Nếu tôi đúng trong đó thì:

  • "TX" là ID giao dịch ảo của giao dịch đang giữ hoặc đang chờ khóa.
  • "XID" là ID giao dịch ảo của giao dịch được nhắm mục tiêu bởi giao dịch đang chờ, nếu mục tiêu là xid ảo. Trong PgAdmin, nó cũng có thể hiển thị xid của mục tiêu nếu đó là xid bình thường.

ID giao dịch ảo là ID giao dịch tạm thời, thoáng qua mà PostgreSQL phân bổ cho mọi giao dịch khi bắt đầu giao dịch. Chúng không được ghi trên đĩa. Một xid thực chỉ được cấp phát khi giao dịch thực hiện điều gì đó yêu cầu ghi giao dịch vào đĩa.

Theo sách hướng dẫn được liên kết:




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Tổng hợp PostgreSQL với nhiều tham số

  2. Cách kết nối với Postgres qua Node.js

  3. Xử lý giao dịch postgresql với java

  4. Báo cáo Jasper:không thể nhận giá trị cho trường 'x' của lớp 'org.postgresql.util.PGmoney'

  5. Có cách nào để * không * sử dụng các câu lệnh được chuẩn bị từ phía máy chủ trong Postgresql không?