[postgis-devel] Question about Postgis serialisation to postgresql varlena

Karel Maesen karel at geovise.com
Wed Aug 26 01:40:49 PDT 2015


Hello Sandro,

Thank you for your quick answer.  How is HEXEWKT different from EWKT?

Regards,

Karel


> On 26 Aug 2015, at 10:34, Sandro Santilli <strk at keybit.net> wrote:
> 
> On Wed, Aug 26, 2015 at 10:27:25AM +0200, Karel Maesen wrote:
>> Hi list,
>> 
>> I’m the lead developer of Hibernate Spatial. Hibernate Spatial adds support for spatial types and operations to the Hibernate Object-Relation Mapping, which is very popular in the Java world. 
>> 
>> Recently I started using my own code to perform the deserialisation from Postgis Geometry to Java objects. As reference I used the description in the source file ./postgis/SERIALIZED_FORM and https://trac.osgeo.org/postgis/wiki/DevWikiPostGISCoding. I was under the impression that, at least from version 1.0 of Postgis, this file documents the internal varlena serialisation format of the Geometry type. 
>> 
>> Now I have received a bug report saying that the deserialization of a geometry failed. Apparently the Geometry returned from the database is encoded in an EWKT text value, not the binary object described in SERIALIZED_FORM.  
>> 
>> Is it possible that a Postgis 1.5.2 database contains geometries serialized as EWKT text? Could any of the Postgis developers confirm that the format in SERIALIZED_FORM is the only format possible?
> 
> The object is stored in the database with a theoretically opaque
> format, and it gets transformed to a "canonical" format when retrived.
> 
> PostgreSQL accounts for two "canonical" forms: binary and text.
> Which one is used depends on the cursor you use for fetching the data
> (binary or text).
> 
> The canonical text output is HEXEWKT, the canonical binary output is EWKB.
> This hasn't changed between 1.5 and 2.0.
> 
> --strk; 
> 
>  ()   Free GIS & Flash consultant/developer
>  /\   http://strk.keybit.net/services.html




More information about the postgis-devel mailing list