Hiroshi Inoue wrote:
>
> > > Does this mean the following ?
> > >
> > > 1. shared cache holds committed system tuples.
> > > 2. private cache holds uncommitted system tuples.
> > > 3. relpages of shared cache are updated immediately by
> > > phisical change and corresponding buffer pages are
> > > marked dirty.
> > > 4. on commit, the contents of uncommitted tuples except
> > > relpages,reltuples,... are copied to correponding tuples
> > ^^^^^^^^^
> > reltuples in shared catalog cache (SCC) will be updated!
> > If transaction inserted some tuples then SCC->reltuples
> > will be incremented, etc.
> >
>
> System tuples are only modifiled or (insert and delet)ed like
> user tuples when reltuples are updated ?
> If only modified,we couldn't use it in SERIALIZABLE mode. ^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^
...this...
I'm not sure that we must provide read consistency
for internal-use columns...
Nevertheless, I agreed that keeping internal-use columns
in table is bad thing, but let's do it for awhile: I believe
that someday we'll re-implement our mdmgr - using separate
file for each table/index is bad thing too, - and move these
columns "somewhere else" in that day.
Vadim