Reset oid , starting value=1
Hello,
i have a bug in a php application based on postgres 7.2.2 , which cannot
handle oid's greater than
2147483647 .
So I have to reset the used oids to start from 1 again, so that we have more
time to correct this bug, I tried to delete dropdb, createdb and read back
the data, but the oids are not reseted , they start at the high values.
How can i reset this oid-starting from value ?
Are OIDs used once per postgres-installation (so they are unique over all
databases, seem to be that way) , or are they only counted up in the current
database ?
There must be a global value which sets the last oid, i need to set this to
"1" or to fill up from 1 , so i have no oids >= 2147483647 for the near
future.. how can i do this ? Fixing the mentioned above will take more time.
What i am looking for is a vacuumdb -a --forgetthoseoids ;-) , but I cannot
find infos about that.
bye,
Andre Gellert
The only way to reset oids is to destroy the entire data directory and
initdb again. In recent versions you can create tables without oids, thus
reducing their usage.
Hope this helps,
On Tue, Dec 09, 2003 at 11:22:15AM +0100, Gellert, Andre wrote:
Hello,
i have a bug in a php application based on postgres 7.2.2 , which cannot
handle oid's greater than
2147483647 .
So I have to reset the used oids to start from 1 again, so that we have more
time to correct this bug, I tried to delete dropdb, createdb and read back
the data, but the oids are not reseted , they start at the high values.
How can i reset this oid-starting from value ?
Are OIDs used once per postgres-installation (so they are unique over all
databases, seem to be that way) , or are they only counted up in the current
database ?
There must be a global value which sets the last oid, i need to set this to
"1" or to fill up from 1 , so i have no oids >= 2147483647 for the near
future.. how can i do this ? Fixing the mentioned above will take more time.What i am looking for is a vacuumdb -a --forgetthoseoids ;-) , but I cannot
find infos about that.bye,
Andre Gellert---------------------------(end of broadcast)---------------------------
TIP 8: explain analyze is your friend
--
Martijn van Oosterhout <kleptog@svana.org> http://svana.org/kleptog/
Show quoted text
(... have gone from d-i being barely usable even by its developers
anywhere, to being about 20% done. Sweet. And the last 80% usually takes
20% of the time, too, right?) -- Anthony Towns, debian-devel-announce
Hi Martijn,
There must be a global value which sets the last oid, i need to set this
to
"1" or to fill up from 1 , so i have no oids >= 2147483647 for the near
future.. how can i do this ? Fixing the mentioned above will take more
time.
The only way to reset oids is to destroy the entire data directory and
initdb again. In recent versions you can create tables
without oids, thus
reducing their usage.
So pg_dump all databases, initdb and playback ? This means a offline-time
for my
systems. Do i need to backup template1 , too ?
Hope this helps,
To be honest :-) : Not what i was hoping for ...
thx, Andre
Import Notes
Resolved by subject fallback