[postgis-devel] Validity flag

Paul Ramsey pramsey at cleverelephant.ca
Mon Feb 29 08:50:02 PST 2016


Yes, it's our most complete, but it's not fully complete I think,
since the 3d stuff wasn't documented in it, though they just follow
the pattern of polygons, I believe.

WE CANNOT JUST TACK IN ANOTHER BYTE.

Remember that. The whole header is carefully set up to ensure that all
the ordinates are on 8-byte alignment, so adding in an other single
header byte destroys that, and all the direct coordinate access that
has been added to the system since then. Any attempt to add more flags
will have to go with a comprehensive reorganization of the
serialization to try and maintain compactness and also maintain
alignment.

P.


On Mon, Feb 29, 2016 at 8:34 AM, Sandro Santilli <strk at keybit.net> wrote:
> On Mon, Feb 29, 2016 at 02:01:39PM +0100, Hugo Mercier wrote:
>
>> The first bit in the byte is now documented as "Version". What does it
>> mean ? It is precisely to mark it as a future "extended" version ?
>
> By documented you mean in liblwgeom/g_serialized.txt ?
>
> There I see:
>
>   uchar flags; /* Version, Validity, Solid, ReadOnly, IsGeodetic, HasZ, HasM, HasBBox */
>
> It would be helpful to expand that documentation more,
> if it is all we have .
>
> I believe "Version" was just made up in Paris, I didn't partecipate
> to that discussion and think it could be re-started here.
>
> My feeling is that one of the bits should be used as an "extend" bit,
> bringing in another byte (or more) of flags.
>
> Besides, I don't think the "ReadOnly" flag belongs in the serialized
> format at all (would make no sense there!).
>
> So I'd first of all ask everyone: is g_serialized.txt our most
> complete document on the format ? Is it _correct_ ?
>
> --strk;
> _______________________________________________
> postgis-devel mailing list
> postgis-devel at lists.osgeo.org
> http://lists.osgeo.org/mailman/listinfo/postgis-devel



More information about the postgis-devel mailing list