Skip to content

feat(parity): bind TJSONB temporal JSONB type#201

Open
estebanzimanyi wants to merge 1 commit into
MobilityDB:feat/parity-pin-11cfrom
estebanzimanyi:feat/parity-tjsonb
Open

feat(parity): bind TJSONB temporal JSONB type#201
estebanzimanyi wants to merge 1 commit into
MobilityDB:feat/parity-pin-11cfrom
estebanzimanyi:feat/parity-tjsonb

Conversation

@estebanzimanyi

Copy link
Copy Markdown
Member

Adds TJSONB as a temporal JSONB type backed by the MEOS tjsonb family. The type is stored as a BLOB alias. Constructors accept a JSON string, a (JSON, timestamptz) pair, or a (JSON, tstzspan) pair. The sequence constructor takes a LIST(TJSONB). Value accessors startValue/endValue/valueAtTimestamp return VARCHAR. Generic temporal operations (timeSpan, tempSubtype, interp, memSize, merge, setInterp, tjsonbInst) are wired via the shared TemporalFunctions helpers. Round-trip I/O covers tjsonbFromHexWKB/tjsonbFromHexEWKB/tjsonbFromBinary/tjsonbFromMFJSON and asHexWKB/asHexEWKB output. A shared TemporalToBlob/BlobToTemporal utility in src/temporal/temporal_blob consolidates the blob round-trip idiom used across all type bindings. Smoke tests cover instant round-trip, two-argument construction, start/end value, step sequence, tempSubtype, and HexWKB round-trip.

@estebanzimanyi estebanzimanyi force-pushed the feat/parity-tjsonb branch 7 times, most recently from 9f7c151 to 9f04ddc Compare June 12, 2026 12:42
Adds the TJSONB type backed by MEOS's tjsonb family. The type is stored
as a BLOB alias. Constructors accept a JSON string, a (JSON, timestamptz)
pair, or a (JSON, tstzspan) pair. The sequence constructor takes a
LIST(TJSONB). Value accessors startValue/endValue/valueAtTimestamp return
VARCHAR. Generic temporal operations (timeSpan, tempSubtype, interp,
memSize, merge, setInterp, tjsonbInst) are wired via the shared
TemporalFunctions helpers. Round-trip I/O covers tjsonbFromHexWKB /
tjsonbFromHexEWKB / tjsonbFromBinary / tjsonbFromMFJSON and asHexWKB /
asHexEWKB output. A shared TemporalToBlob / BlobToTemporal utility in
src/temporal/temporal_blob consolidates the blob round-trip idiom used
across all type bindings. Smoke tests cover instant round-trip,
two-argument construction, start/end value, step sequence, tempSubtype,
and HexWKB round-trip.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant