Thread

  1. Re: [HACKERS] Priorities for 6.6

    Peter Galbavy <peter.galbavy@knowledge.com> — 1999-06-04T11:56:46Z

    On Thu, Jun 03, 1999 at 11:27:14PM -0400, Bruce Momjian wrote:
    > > Implementation seems easy:
    > > 
    > > struct varlena
    > > {
    > >     int32       vl_len;
    > >     char        vl_dat[1];
    > > };
    > > 
    > > 1. make vl_len uint32;
    > > 2. use vl_len & 0x80000000 as flag that underlying data is
    > >    in another place;
    > > 3. put oid of external "relation" (where data is stored),
    > >    blocknumber and item position (something else?) to vl_dat.
    > > ...
    > 
    > Yes, it would be very nice to have this.
    
    I hate to be fussy - normally I am just watching, but could we
    *please* keep any flag like above in another field. That way, when
    the size of an object reaches 2^31 we will not have legacy problems..
    
    struct varlena
    {
        size_t  vl_len;
        int     vl_flags;
        caddr_t vl_dat[1];
    };
    
    (Please:)
    
    Regards,
    -- 
    Peter Galbavy
    Knowledge Matters Ltd
    http://www.knowledge.com/