"Christopher Kings-Lynne" <chriskl@familyhealth.com.au> writes:
> Ah. What about in 7.0.3 and below?
There is no good way --- if there were, we'd not have bothered to invent
datlastsysoid. pg_dump used to use the OID of the template1 database
as an estimate of the last built-in OID. This was wrong to begin with,
and is completely untenable in 7.1 (template1's OID is now 1).
> Basically this because I am attempting to select all built-in
> functions.
If you only care about functions then it's probably possible to
hard-wire an assumption that system functions have OIDs < 16384.
Right now all built-in functions have manually-assigned OIDs,
so that works. But I wouldn't want to promise that it'll work
forever. It already doesn't work for aggregates, for example
(were you including aggregates in "functions"?).
regards, tom lane