Skip to content
GitLab
Explore
Sign in
Register
Primary navigation
Search or go to…
Project
P
postgres-lambda-diff
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Wiki
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Build
Pipelines
Jobs
Pipeline schedules
Artifacts
Deploy
Releases
Container Registry
Model registry
Operate
Environments
Monitor
Incidents
Analyze
Value stream analytics
Contributor analytics
CI/CD analytics
Repository analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
Jakob Huber
postgres-lambda-diff
Commits
4ca7b4d2
Commit
4ca7b4d2
authored
25 years ago
by
Vadim B. Mikheev
Browse files
Options
Downloads
Patches
Plain Diff
More about chained mode and isolation.
parent
962c66d8
No related branches found
No related tags found
No related merge requests found
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
src/man/begin.l
+33
-9
33 additions, 9 deletions
src/man/begin.l
with
33 additions
and
9 deletions
src/man/begin.l
+
33
−
9
View file @
4ca7b4d2
.\" This is -*-nroff-*-
.\" This is -*-nroff-*-
.\" XXX standard disclaimer belongs here....
.\" XXX standard disclaimer belongs here....
.\" $Header: /cvsroot/pgsql/src/man/Attic/begin.l,v 1.
5
199
8
/0
3/25 01:54:48 momjian
Exp $
.\" $Header: /cvsroot/pgsql/src/man/Attic/begin.l,v 1.
6
199
9
/0
6/11 05:40:18 vadim
Exp $
.TH BEGIN SQL 11/05/95 PostgreSQL PostgreSQL
.TH BEGIN SQL 11/05/95 PostgreSQL PostgreSQL
.SH NAME
.SH NAME
begin - begins a transaction
begin - begins a transaction
in chained mode
.SH SYNOPSIS
.SH SYNOPSIS
.nf
.nf
\fBbegin\fP \fB[transaction|work]\fR
\fBbegin\fP \fB[transaction|work]\fR
.fi
.fi
.SH DESCRIPTION
.SH DESCRIPTION
This command begins a user transaction which Postgres will guarantee is
serializable with respect to all concurrently executing transactions.
By default, Postgres executes transactions in unchained mode (also known as
Postgres uses two-phase locking to perform this task. If the transaction
autocommit feature in other DBMSes). In other words, each user statement is
is committed, Postgres will ensure that all updates are done or none of
executed in its own transaction and commit is implicit (if execution was
them are done. Transactions have the standard ACID (atomic,
successfull). BEGIN initiates a user transaction in chained mode, i.e. all
consistent, isolatable, and durable) property.
user statements after BEGIN command will be executed in single transaction
untill explicit COMMIT, ROLLBACK or execution abort. Statements in chained
mode are executed much faster, because of transaction start/commit requires
significant CPU and disk activity. This mode is also required for
consistency when changing one of related tables.
Default transaction isolation level in Postgres is READ COMMITTED one, when
queries inside transaction see only changes committed before query
execution. So, you have to use SET TRANSACTION ISOLATION LEVEL SERIALIZABLE
command just after BEGIN if you need in better transaction isolation. In
SERIALIZABLE mode queries will see only changes committed before entire
transaction began (actually, before execution of first DML statement in
serializable transaction).
If the transaction is committed, Postgres will ensure either that all
updates are done or else that none of them are done. Transactions have the
standard ACID (atomic, consistent, isolatable, and durable) property.
\fBNote\fR: There is no explicit BEGIN command in SQL92; transaction
initiation is always implicit and it terminates either with a COMMIT or with
a ROLLBACK statement (i.e. all transactions are chained). SQL92 also
requires SERIALIZABLE to be default transaction isolation level.
.SH "SEE ALSO"
.SH "SEE ALSO"
rollback(l),
rollback(l),
commit(l).
commit(l),
set(l),
lock(l).
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment