mirror of
https://github.com/timescale/timescaledb.git
synced 2025-05-17 11:03:36 +08:00
Add the type for min/max segment meta object. Segment metadata objects keep metadata about data in segments (compressed rows). The min/max variant keeps the min and max values inside the compressed object. It will be used on compression order by columns to allow queries that have quals on those columns to be able to exclude entire segments if no uncompressed rows in the segment may match the qual. We also add generalized infrastructure for datum serialization / deserialization for arbitrary types to and from memory as well as binary strings.
19 lines
865 B
SQL
19 lines
865 B
SQL
-- This file and its contents are licensed under the Apache License 2.0.
|
|
-- Please see the included NOTICE for copyright information and
|
|
-- LICENSE-APACHE for a copy of the license.
|
|
|
|
CREATE FUNCTION _timescaledb_internal.segment_meta_min_max_get_min(_timescaledb_internal.segment_meta_min_max, ANYELEMENT)
|
|
RETURNS ANYELEMENT
|
|
AS '@MODULE_PATHNAME@', 'ts_segment_meta_min_max_get_min'
|
|
LANGUAGE C IMMUTABLE;
|
|
|
|
CREATE FUNCTION _timescaledb_internal.segment_meta_min_max_get_max(_timescaledb_internal.segment_meta_min_max, ANYELEMENT)
|
|
RETURNS ANYELEMENT
|
|
AS '@MODULE_PATHNAME@', 'ts_segment_meta_min_max_get_max'
|
|
LANGUAGE C IMMUTABLE;
|
|
|
|
CREATE FUNCTION _timescaledb_internal.segment_meta_min_max_has_null(_timescaledb_internal.segment_meta_min_max)
|
|
RETURNS boolean
|
|
AS '@MODULE_PATHNAME@', 'ts_segment_meta_min_max_has_null'
|
|
LANGUAGE C IMMUTABLE;
|