Re: WAL, xl_heap_insert and tuple oid mystry
От | Heikki Linnakangas |
---|---|
Тема | Re: WAL, xl_heap_insert and tuple oid mystry |
Дата | |
Msg-id | 4DA4829D.6050800@enterprisedb.com обсуждение исходный текст |
Ответ на | Re: WAL, xl_heap_insert and tuple oid mystry (jagan <jaganrvce@yahoo.com>) |
Ответы |
Re: WAL, xl_heap_insert and tuple oid mystry
|
Список | pgsql-hackers |
On 12.04.2011 19:42, jagan wrote: >>> Where is the OID of tuple stored in a WAL record of a >>> tuple? If not with xl_heap_header, where is it stored? Is it >>> stored at all? > > > It's stored in the "tuple data" portion. > > Is the OID also recorded with xl_heap_delete record as well or just the xl_heaptid? From my reading of the code it is notrecorded. Correct, it's not. > In general, why is OID of a tuple relegated as just another tuple data, when it can replace xl_heaptid as a much more stabletuple identifier. I understand that by recording tuples in terms of xl_heaptid (i.e., page/offset) means that the dbcan recover quickly but isn't there some value to storing a much "higher level" information in the WAL logs? For example,tuple manipulations, if recorded in terms of manipulation on tuple oids, can support applications such as these: > > http://blogs.enterprisedb.com/2011/03/03/more-musings-on-logical-replication/ Possibly. On the other hand, another common complaint is that PostgreSQL writes a lot of WAL, much more than other DBMSs. Adding more higher-level information to WAL records would make that issue even worse. At the moment we only include the minimum amount of information needed for recovery. -- Heikki Linnakangas EnterpriseDB http://www.enterprisedb.com
В списке pgsql-hackers по дате отправления: