xmin increasing within a transaction block?

From: Luca Ferrari <fluca1978(at)infinito(dot)it>
To: pgsql-general <pgsql-general(at)postgresql(dot)org>
Subject: xmin increasing within a transaction block?
Date: 2017-11-06 09:36:06
Message-ID: CAKoxK+5Wm6RazPnU8AqB97XRqx5zbY7us00QSVrQgobbgmf8hQ@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

Hi all,
I suspect this has a trivial explaination, but this is what I'm experiencing:

> CREATE TABLE foo( i int );
> BEGIN;
* > INSERT INTO foo(i) VALUES( 1 );
* > INSERT INTO foo(i) VALUES( 2 );
* > SELECT xmin, cmin, xmax, cmax, i FROM foo;
xmin | cmin | xmax | cmax | i
------+------+------+------+---
2466 | 0 | 0 | 0 | 1
2467 | 1 | 0 | 1 | 2
(2 rows)

* > SELECT txid_current();
txid_current
--------------
2465
(1 row)

Why is xmin greater than the current transaction id (and most notably
not "fixed")?
What am I missing here?
I'm running 9.6.5.

> select version();

version
------------------------------------------------------------------------------------------------------------------------------------------------------
PostgreSQL 9.6.5 on amd64-portbld-freebsd11.0, compiled by FreeBSD
clang version 3.8.0 (tags/RELEASE_380/final 262564) (based on LLVM
3.8.0), 64-bit
(1 row)

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Sachin Kotwal 2017-11-06 10:33:25 Naming conventions for column names
Previous Message hmidi slim 2017-11-06 08:17:25 Combine multiple text search configuration