@@ -149,7 +149,8 @@ DETAIL:  Key (city)=(Berkeley) is not present in table "cities".
149149    systems.  The essential point of a transaction is that it bundles
150150    multiple steps into a single, all-or-nothing operation.  The intermediate
151151    states between the steps are not visible to other concurrent transactions,
152-     and if some failure occurs that prevents the transaction from completing,
152+     and if <link linkend="tutorial-transactions-aborted">an error</link>
153+     occurs that prevents the transaction from completing,
153154    then none of the steps affect the database at all.
154155   </para>
155156
@@ -218,7 +219,8 @@ UPDATE branches SET balance = balance + 100.00
218219   <para>
219220    In <productname>PostgreSQL</productname>, a transaction is set up by surrounding
220221    the SQL commands of the transaction with
221-     <command>BEGIN</command> and <command>COMMIT</command> commands.  So our banking
222+     <xref linkend="sql-begin"/> and
223+     <xref linkend="sql-commit"/> commands.  So our banking
222224    transaction would actually look like:
223225
224226<programlisting>
@@ -233,7 +235,7 @@ COMMIT;
233235   <para>
234236    If, partway through the transaction, we decide we do not want to
235237    commit (perhaps we just noticed that Alice's balance went negative),
236-     we can issue the command <command>ROLLBACK</command > instead of
238+     we can issue the command <xref linkend="sql-rollback"/ > instead of
237239    <command>COMMIT</command>, and all our updates so far will be canceled.
238240   </para>
239241
@@ -256,6 +258,16 @@ COMMIT;
256258    </para>
257259   </note>
258260
261+    <para id="tutorial-transactions-aborted">
262+     When an error occurs within a transaction block the transaction is not ended
263+     but instead goes into an aborted state.  While in this state all commands except
264+     <xref linkend="sql-commit"/> and <xref linkend="sql-rollback"/> are ignored and,
265+     importantly, both those commands behave identically - they roll-back and close
266+     the current transaction, returning the session to a state where new commands can
267+     be issued.  They will also automatically begin a new transaction if executed
268+     with an <literal>AND CHAIN</literal> parameter.
269+    </para>
270+ 
259271   <para>
260272    It's possible to control the statements in a transaction in a more
261273    granular fashion through the use of <firstterm>savepoints</firstterm>.  Savepoints
0 commit comments