Thread: Is a high tab_reloid worrying?
I just added a new table to a slony relication set. The new table seems to have a really high tab_reloid value of 94,198,669 I'm using Slon 1.1.5 with pg 7.4.6 and 7.4.11 on unix On the master I see (wcprogallery is the new table added to set 4) tab_id|tab_reloid|tab_relname |tab_nspname|tab_set|tab_idxname -------+----------+------------+-----------+-------+------------------- 4005| 18284|wccustomer |customer | 4|wccustomer_pkey ... 4035| 18858|wcrecommend |customer | 4|wcrecommend_pkey 4036| 94198669|wcprogallery|customer | 4|wcprogallery_pkey On the slave I see tab_id|tab_reloid|tab_relname |tab_nspname|tab_set|tab_idxname -------+----------+------------+-----------+-------+------------------- 4005| 1671239|wccustomer |customer | 4|wccustomer_pkey ... 4035| 1671608|wcrecommend |customer | 4|wcrecommend_pkey 4036| 5741203|wcprogallery|customer | 4|wcprogallery_pkey Is this something I should be worried about? Can I find out where all the intermediate OIDs have gone? I have around 70 tables and about 200 pgplsql functions in the database. John
Ühel kenal päeval, N, 2006-04-13 kell 10:06, kirjutas John Sidney-Woollett: > I just added a new table to a slony relication set. The new table seems > to have a really high tab_reloid value of 94,198,669 ... > Is this something I should be worried about? Can I find out where all > the intermediate OIDs have gone? probably to data rows, unless you have all your tables defined using WITHOUT OID. OIDs are assigned from a global "sequence". -------- Hannu
My tables are defined "WITHOUT OID" - does that make a difference? John Hannu Krosing wrote: > Ühel kenal päeval, N, 2006-04-13 kell 10:06, kirjutas John > Sidney-Woollett: > >>I just added a new table to a slony relication set. The new table seems >>to have a really high tab_reloid value of 94,198,669 > > ... > >>Is this something I should be worried about? Can I find out where all >>the intermediate OIDs have gone? > > > probably to data rows, unless you have all your tables defined using > WITHOUT OID. OIDs are assigned from a global "sequence". > > -------- > Hannu > > > ---------------------------(end of broadcast)--------------------------- > TIP 4: Have you searched our list archives? > > http://archives.postgresql.org
In an attempt to throw the authorities off his trail, johnsw@wardbrook.com (John Sidney-Woollett) transmitted: > I just added a new table to a slony relication set. The new table > seems to have a really high tab_reloid value of 94,198,669 I presume the database instance has been around for a while? If so, then I wouldn't worry too much. I'm not certain comprehensively what would consume OIDs, but I expect temp tables would, so if you have applications that generate them, that would naturally lead to increases in OID values. The only time you get *low* values is if you define tables immediately after creating the database. -- output = ("cbbrowne" "@" "gmail.com") http://linuxdatabases.info/info/slony.html As of next Tuesday, all terminal input will be line-at-a-time. Please update your programs.
Thanks for the reassurance. You're right the db has been around for a while. Doea anyone know if OIDs for data and system (DDL) objects from the same number generator? John Christopher Browne wrote: > In an attempt to throw the authorities off his trail, johnsw@wardbrook.com (John Sidney-Woollett) transmitted: > >>I just added a new table to a slony relication set. The new table >>seems to have a really high tab_reloid value of 94,198,669 > > > I presume the database instance has been around for a while? If so, > then I wouldn't worry too much. > > I'm not certain comprehensively what would consume OIDs, but I expect > temp tables would, so if you have applications that generate them, > that would naturally lead to increases in OID values. > > The only time you get *low* values is if you define tables immediately > after creating the database.
On 4/13/2006 6:19 AM, John Sidney-Woollett wrote: > My tables are defined "WITHOUT OID" - does that make a difference? That's good so far. The other thing that is eating OID's are temporary objects. I personally consider the implementation of temp tables broken for precisely that matter. If your application uses temp tables, sooner or later it will cause an OID counter wrap around and then you run the risk of random transaction failures due to duplicate key errors on CREATE TEMP TABLE. Jan > John > Hannu Krosing wrote:> Ühel kenal päeval, N, 2006-04-13 kell 10:06, kirjutas John> Sidney-Woollett:> >>I just added a newtable to a slony relication set. The new table seems >>to have a really high tab_reloid value of 94,198,669> > ...> >>Isthis something I should be worried about? Can I find out where all >>the intermediate OIDs have gone?> > > probably todata rows, unless you have all your tables defined using> WITHOUT OID. OIDs are assigned from a global "sequence".> > -------->Hannu> > > ---------------------------(end of broadcast)---------------------------> TIP 4: Have you searched ourlist archives?> > http://archives.postgresql.org_______________________________________________Slony1-generalmailing listSlony1-general@gborg.postgresql.orghttp://gborg.postgresql.org/mailman/listinfo/slony1-general -- #======================================================================# # It's easier to get forgiveness for being wrong than for being right. # # Let's break this rule - forgive me. # #================================================== JanWieck@Yahoo.com #
Jan Wieck <JanWieck@Yahoo.com> writes: > The other thing that is eating OID's are temporary objects. I personally > consider the implementation of temp tables broken for precisely that > matter. If your application uses temp tables, sooner or later it will > cause an OID counter wrap around and then you run the risk of random > transaction failures due to duplicate key errors on CREATE TEMP TABLE. Not as of 8.1. regards, tom lane