From: | "Hiroshi Inoue" <Inoue(at)tpf(dot)co(dot)jp> |
---|---|
To: | "Bruce Momjian" <pgman(at)candle(dot)pha(dot)pa(dot)us> |
Cc: | <tgl(at)sss(dot)pgh(dot)pa(dot)us>, <pgsql-hackers(at)postgreSQL(dot)org>, "Jan Wieck" <wieck(at)debis(dot)com> |
Subject: | RE: [HACKERS] LONG |
Date: | 1999-12-13 05:19:27 |
Message-ID: | 00e001bf4529$a05405e0$2801007e@cadzone.tpf.co.jp |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
> -----Original Message-----
> From: owner-pgsql-hackers(at)postgreSQL(dot)org
> [mailto:owner-pgsql-hackers(at)postgreSQL(dot)org]On Behalf Of Bruce Momjian
>
> > >
> > > > The solution I see is to give any out of line datum another
> > > > Oid, that is part of it's header and stamped into the
> > > > reference data. That way, the long attribute lookup can use
> > > > SnapshotAny using this Oid, there can only be one that
> > > > exists, so SnapshotAny is safe here and forces that only the
> > > > visibility of the master tuple in the main table counts at
> > > > all.
> > >
> > > This is a great idea. Get rid of my use of the attribute
> number. Make
> > > the varlena long value be:
> > >
> > > long-bit|length|longrelid|longoid|longlen
> > >
> > > No need for attno in there anymore.
> >
> > I still need it to explicitly remove one long value on
> > update, while the other one is untouched. Otherwise I would
> > have to drop all long values for the row together and
> > reinsert all new ones.
>
> I am suggesting the longoid is not the oid of the primary or long*
> table, but a unque id we assigned just to number all parts of the long*
> tuple. I thought that's what your oid was for.
>
Unfortunately I couldn't follow this issue correctly.
Is the format of long value relation different from Jan's original now ?
- At CREATE TABLE, a long value relation named
"_LONG<tablename>" is created for those tables who need it.
And of course dropped and truncated appropriate. The schema
of this table is
rowid Oid, -- oid of our main data row
rowattno int2, -- the attribute number in main data
chunk_seq int4, -- the part number of this data chunk
chunk text -- the content of this data chunk
I thought that there's an unique index (rowid,rowattno,chunk_seq).
Seems we could even update partially(specified chunk_seq only)
without problem.
Regards.
Hiroshi Inoue
Inoue(at)tpf(dot)co(dot)jp
From | Date | Subject | |
---|---|---|---|
Next Message | Bruce Momjian | 1999-12-13 05:59:21 | Re: [HACKERS] LONG |
Previous Message | Tom Lane | 1999-12-13 04:57:49 | Re: [HACKERS] update_pg_pwd |