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