pgsql: Add support for binary I/O of ltree, lquery, and ltxtquery types - Mailing list pgsql-committers

From Tom Lane
Subject pgsql: Add support for binary I/O of ltree, lquery, and ltxtquery types
Date
Msg-id E1jJkxu-0005HI-SY@gemulon.postgresql.org
Whole thread Raw
List pgsql-committers
Add support for binary I/O of ltree, lquery, and ltxtquery types.

Not much to say here --- does what it says on the tin.  The "binary"
representation in each case is really just the same as the text format,
though we prefix a version-number byte in case anyone ever feels
motivated to change that.  Thus, there's not any expectation of improved
speed or reduced space; the point here is just to allow clients to use
binary format for all columns of a query result or COPY data.

This makes use of the recently added ALTER TYPE support to add binary
I/O functions to an existing data type.  As in commit a80818605,
we can piggy-back on there already being a new-for-v13 version of the
ltree extension, so we don't need a new update script file.

Nino Floris, reviewed by Alexander Korotkov and myself

Discussion: https://postgr.es/m/CANmj9Vxx50jOo1L7iSRxd142NyTz6Bdcgg7u9P3Z8o0=HGkYyQ@mail.gmail.com

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/949a9f043eb70a4986041b47513579f9a13d6a33

Modified Files
--------------
contrib/ltree/crc32.c             |   4 +-
contrib/ltree/crc32.h             |   2 +-
contrib/ltree/ltree--1.1--1.2.sql |  37 +++++++
contrib/ltree/ltree_io.c          | 205 +++++++++++++++++++++++++++++++++-----
contrib/ltree/ltxtquery_io.c      |  73 +++++++++++++-
5 files changed, 288 insertions(+), 33 deletions(-)


pgsql-committers by date:

Previous
From: Tom Lane
Date:
Subject: pgsql: Check equality semantics for unique indexes on partitioned table
Next
From: Tom Lane
Date:
Subject: pgsql: Clean up parsing of ltree and lquery some more.