Thread: xid type

xid type

From
Michael Robinson
Date:
Is there a fundamental rationale underlying this behavior, or is this 
merely something no one has bothered to do:

=> select min(xmin) from mytable where xmax = 0;
ERROR:  Unable to select an aggregate function min(xid)

=> select max(xmin) from mytable;
ERROR:  Unable to select an aggregate function max(xid)

=> select * from mytable where xmin > 150000;
ERROR:  Unable to identify an operator '>' for types 'xid' and 'int4'       You will have to retype this query using an
explicitcast
 

=> select * from mytable where xmin > 150000::xid;
ERROR:  Unable to identify an operator '>' for types 'xid' and 'xid'       You will have to retype this query using an
explicitcast
 

=> select * from mytable where xmin::int4 > 150000;
ERROR:  No such function 'int4' with the specified attributes

The reason I ask is that it would be fairly straightforward to implement
a poor-man's database replication server if this worked.
-Michael Robinson