-- complain if script is sourced in psql, rather than via CREATE EXTENSION \echo Use "ALTER EXTENSION vector UPDATE TO '0.5.0'" to load this file. \quit CREATE FUNCTION l1_distance(vector, vector) RETURNS float8 AS 'MODULE_PATHNAME' LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; CREATE FUNCTION vector_mul(vector, vector) RETURNS vector AS 'MODULE_PATHNAME' LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; CREATE OPERATOR * ( LEFTARG = vector, RIGHTARG = vector, PROCEDURE = vector_mul, COMMUTATOR = * ); CREATE FUNCTION vector_sum(double precision[]) RETURNS vector AS 'MODULE_PATHNAME' LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; CREATE AGGREGATE sum(vector) ( SFUNC = vector_accum, STYPE = double precision[], FINALFUNC = vector_sum, COMBINEFUNC = vector_combine, INITCOND = '{0}', PARALLEL = SAFE );