No Picture
PostgreSQL Performance

How is INSERT lock implemented in PostgreSQL 16?

In PostgreSQL, the lock behavior during an INSERT operation depends on the type of table that the operation is performed on. For a normal table, an INSERT lock is typically acquired on the table, which […]

No Picture
PostgreSQL Internals

How to use pg_largeobject in PostgreSQL?

The pg_largeobject system table in PostgreSQL is used to store and manage large binary objects (BLOBs) of binary data. To use pg_largeobject, you need to perform the following steps: For example, the following code shows […]

No Picture
PostgreSQL Performance

How does cache trashing happen in PostgreSQL 15?

Cache trashing in PostgreSQL 15 occurs when there is high contention for the shared buffer cache. This can happen when there are many concurrent queries accessing the same data, or when there is a lack […]

No Picture
PostgreSQL Performance

How is the transaction model implemented in PostgreSQL?

How is the transaction model implemented in PostgreSQL? In PostgreSQL, transactions are implemented using the Multi-Version Concurrency Control (MVCC) model. This means that each transaction is given a snapshot of the database at the start […]

No Picture
PostgreSQL Performance

Understanding locks and deadlocks in PostgreSQL

Understanding locks and deadlocks in PostgreSQL Locks in PostgreSQL are used to ensure that concurrent transactions do not interfere with each other. When a transaction modifies a piece of data, it will take out an [...]
No Picture
PostgreSQL Performance

How to use Sparse Index in PostgreSQL 15?

How to use Sparse Index in PostgreSQL 15? Sparse indexes are used in PostgreSQL when the table contains many null or empty values in the indexed column. These indexes can greatly reduce the size of [...]