|
| 1 | +-- Copyright (c) 2016-2018 Timescale, Inc. All Rights Reserved. |
| 2 | +-- |
| 3 | +-- This file is licensed under the Apache License, see LICENSE-APACHE |
| 4 | +-- at the top level directory of the TimescaleDB distribution. |
| 5 | + |
| 6 | +CREATE OR REPLACE FUNCTION time_bucket_gapfill(bucket_width SMALLINT, ts SMALLINT, "start" SMALLINT, "end" SMALLINT) RETURNS SMALLINT |
| 7 | + AS '@MODULE_PATHNAME@', 'ts_gapfill_int16_bucket' LANGUAGE C IMMUTABLE PARALLEL RESTRICTED STRICT; |
| 8 | + |
| 9 | +CREATE OR REPLACE FUNCTION time_bucket_gapfill(bucket_width INT, ts INT, "start" INT, "end" INT) RETURNS INT |
| 10 | + AS '@MODULE_PATHNAME@', 'ts_gapfill_int32_bucket' LANGUAGE C IMMUTABLE PARALLEL RESTRICTED STRICT; |
| 11 | + |
| 12 | +CREATE OR REPLACE FUNCTION time_bucket_gapfill(bucket_width BIGINT, ts BIGINT, "start" BIGINT, "end" BIGINT) RETURNS BIGINT |
| 13 | + AS '@MODULE_PATHNAME@', 'ts_gapfill_int64_bucket' LANGUAGE C IMMUTABLE PARALLEL RESTRICTED STRICT; |
| 14 | + |
| 15 | +CREATE OR REPLACE FUNCTION time_bucket_gapfill(bucket_width INTERVAL, ts DATE, "start" DATE, "end" DATE) RETURNS DATE |
| 16 | + AS '@MODULE_PATHNAME@', 'ts_gapfill_date_bucket' LANGUAGE C IMMUTABLE PARALLEL RESTRICTED STRICT; |
| 17 | + |
| 18 | +CREATE OR REPLACE FUNCTION time_bucket_gapfill(bucket_width INTERVAL, ts TIMESTAMP, "start" TIMESTAMP, "end" TIMESTAMP) RETURNS TIMESTAMP |
| 19 | + AS '@MODULE_PATHNAME@', 'ts_gapfill_timestamp_bucket' LANGUAGE C IMMUTABLE PARALLEL RESTRICTED STRICT; |
| 20 | + |
| 21 | +CREATE OR REPLACE FUNCTION time_bucket_gapfill(bucket_width INTERVAL, ts TIMESTAMPTZ, "start" TIMESTAMPTZ, "end" TIMESTAMPTZ) RETURNS TIMESTAMPTZ |
| 22 | + AS '@MODULE_PATHNAME@', 'ts_gapfill_timestamptz_bucket' LANGUAGE C IMMUTABLE PARALLEL RESTRICTED STRICT; |
| 23 | + |
| 24 | +-- locf function |
| 25 | +CREATE OR REPLACE FUNCTION locf(value ANYELEMENT, prev ANYELEMENT=NULL) RETURNS ANYELEMENT |
| 26 | + AS '@MODULE_PATHNAME@', 'ts_gapfill_marker' LANGUAGE C IMMUTABLE PARALLEL RESTRICTED; |
| 27 | + |
| 28 | +-- interpolate functions |
| 29 | +CREATE OR REPLACE FUNCTION interpolate(value SMALLINT,prev RECORD=NULL,next RECORD=NULL) RETURNS SMALLINT |
| 30 | + AS '@MODULE_PATHNAME@', 'ts_gapfill_marker' LANGUAGE C IMMUTABLE PARALLEL RESTRICTED; |
| 31 | + |
| 32 | +CREATE OR REPLACE FUNCTION interpolate(value INT,prev RECORD=NULL,next RECORD=NULL) RETURNS INT |
| 33 | + AS '@MODULE_PATHNAME@', 'ts_gapfill_marker' LANGUAGE C IMMUTABLE PARALLEL RESTRICTED; |
| 34 | + |
| 35 | +CREATE OR REPLACE FUNCTION interpolate(value BIGINT,prev RECORD=NULL,next RECORD=NULL) RETURNS BIGINT |
| 36 | + AS '@MODULE_PATHNAME@', 'ts_gapfill_marker' LANGUAGE C IMMUTABLE PARALLEL RESTRICTED; |
| 37 | + |
| 38 | +CREATE OR REPLACE FUNCTION interpolate(value REAL,prev RECORD=NULL,next RECORD=NULL) RETURNS REAL |
| 39 | + AS '@MODULE_PATHNAME@', 'ts_gapfill_marker' LANGUAGE C IMMUTABLE PARALLEL RESTRICTED; |
| 40 | + |
| 41 | +CREATE OR REPLACE FUNCTION interpolate(value FLOAT,prev RECORD=NULL,next RECORD=NULL) RETURNS FLOAT |
| 42 | + AS '@MODULE_PATHNAME@', 'ts_gapfill_marker' LANGUAGE C IMMUTABLE PARALLEL RESTRICTED; |
| 43 | + |
0 commit comments