You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
RAISE EXCEPTION 'compare_ste_vec_encrypted_term_v1: invalid header for cs_ste_vec_encrypted_term_v1: header "%", body "%', header_a, body_a;
41
+
END CASE;
42
+
END;
43
+
$$ LANGUAGE plpgsql;
44
+
45
+
DROPFUNCTION IF EXISTS cs_ste_vec_encrypted_term_eq(a cs_ste_vec_encrypted_term_v1, b cs_ste_vec_encrypted_term_v1);
46
+
47
+
CREATEFUNCTIONcs_ste_vec_encrypted_term_eq(a cs_ste_vec_encrypted_term_v1, b cs_ste_vec_encrypted_term_v1) RETURNS booleanAS $$
48
+
SELECT __bytea_ct_eq(a.bytes, b.bytes)
49
+
$$ LANGUAGE SQL;
50
+
51
+
DROPFUNCTION IF EXISTS cs_ste_vec_encrypted_term_neq(a cs_ste_vec_encrypted_term_v1, b cs_ste_vec_encrypted_term_v1);
52
+
53
+
CREATEFUNCTIONcs_ste_vec_encrypted_term_neq(a cs_ste_vec_encrypted_term_v1, b cs_ste_vec_encrypted_term_v1) RETURNS booleanAS $$
54
+
SELECT not __bytea_ct_eq(a.bytes, b.bytes)
55
+
$$ LANGUAGE SQL;
56
+
57
+
DROPFUNCTION IF EXISTS cs_ste_vec_encrypted_term_lt(a cs_ste_vec_encrypted_term_v1, b cs_ste_vec_encrypted_term_v1);
58
+
59
+
CREATEFUNCTIONcs_ste_vec_encrypted_term_lt(a cs_ste_vec_encrypted_term_v1, b cs_ste_vec_encrypted_term_v1) RETURNS booleanAS $$
60
+
SELECT compare_ste_vec_encrypted_term_v1(a, b) =-1
61
+
$$ LANGUAGE SQL;
62
+
63
+
DROPFUNCTION IF EXISTS cs_ste_vec_encrypted_term_lte(a cs_ste_vec_encrypted_term_v1, b cs_ste_vec_encrypted_term_v1);
64
+
65
+
CREATEFUNCTIONcs_ste_vec_encrypted_term_lte(a cs_ste_vec_encrypted_term_v1, b cs_ste_vec_encrypted_term_v1) RETURNS booleanAS $$
66
+
SELECT compare_ste_vec_encrypted_term_v1(a, b) !=1
67
+
$$ LANGUAGE SQL;
68
+
69
+
DROPFUNCTION IF EXISTS cs_ste_vec_encrypted_term_gt(a cs_ste_vec_encrypted_term_v1, b cs_ste_vec_encrypted_term_v1);
70
+
71
+
CREATEFUNCTIONcs_ste_vec_encrypted_term_gt(a cs_ste_vec_encrypted_term_v1, b cs_ste_vec_encrypted_term_v1) RETURNS booleanAS $$
72
+
SELECT compare_ste_vec_encrypted_term_v1(a, b) =1
73
+
$$ LANGUAGE SQL;
74
+
75
+
DROPFUNCTION IF EXISTS cs_ste_vec_encrypted_term_gte(a cs_ste_vec_encrypted_term_v1, b cs_ste_vec_encrypted_term_v1);
76
+
77
+
CREATEFUNCTIONcs_ste_vec_encrypted_term_gte(a cs_ste_vec_encrypted_term_v1, b cs_ste_vec_encrypted_term_v1) RETURNS booleanAS $$
78
+
SELECT compare_ste_vec_encrypted_term_v1(a, b) !=-1
79
+
$$ LANGUAGE SQL;
80
+
81
+
DROPOPERATOR IF EXISTS = (cs_ste_vec_encrypted_term_v1, cs_ste_vec_encrypted_term_v1);
82
+
83
+
CREATE OPERATOR = (
84
+
PROCEDURE="cs_ste_vec_encrypted_term_eq",
85
+
LEFTARG=cs_ste_vec_encrypted_term_v1,
86
+
RIGHTARG=cs_ste_vec_encrypted_term_v1,
87
+
NEGATOR =<>,
88
+
RESTRICT = eqsel,
89
+
JOIN= eqjoinsel,
90
+
HASHES,
91
+
MERGES
92
+
);
93
+
94
+
DROPOPERATOR IF EXISTS <> (cs_ste_vec_encrypted_term_v1, cs_ste_vec_encrypted_term_v1);
95
+
96
+
CREATE OPERATOR <> (
97
+
PROCEDURE="cs_ste_vec_encrypted_term_neq",
98
+
LEFTARG=cs_ste_vec_encrypted_term_v1,
99
+
RIGHTARG=cs_ste_vec_encrypted_term_v1,
100
+
NEGATOR ==,
101
+
RESTRICT = eqsel,
102
+
JOIN= eqjoinsel,
103
+
HASHES,
104
+
MERGES
105
+
);
106
+
107
+
DROPOPERATOR IF EXISTS > (cs_ste_vec_encrypted_term_v1, cs_ste_vec_encrypted_term_v1);
108
+
109
+
CREATE OPERATOR > (
110
+
PROCEDURE="cs_ste_vec_encrypted_term_gt",
111
+
LEFTARG=cs_ste_vec_encrypted_term_v1,
112
+
RIGHTARG=cs_ste_vec_encrypted_term_v1,
113
+
NEGATOR =<=,
114
+
RESTRICT = scalarltsel,
115
+
JOIN= scalarltjoinsel,
116
+
HASHES,
117
+
MERGES
118
+
);
119
+
120
+
DROPOPERATOR IF EXISTS < (cs_ste_vec_encrypted_term_v1, cs_ste_vec_encrypted_term_v1);
121
+
122
+
CREATE OPERATOR < (
123
+
PROCEDURE="cs_ste_vec_encrypted_term_lt",
124
+
LEFTARG=cs_ste_vec_encrypted_term_v1,
125
+
RIGHTARG=cs_ste_vec_encrypted_term_v1,
126
+
NEGATOR =>=,
127
+
RESTRICT = scalargtsel,
128
+
JOIN= scalargtjoinsel,
129
+
HASHES,
130
+
MERGES
131
+
);
132
+
133
+
DROPOPERATOR IF EXISTS >= (cs_ste_vec_encrypted_term_v1, cs_ste_vec_encrypted_term_v1);
134
+
135
+
CREATE OPERATOR >= (
136
+
PROCEDURE="cs_ste_vec_encrypted_term_gte",
137
+
LEFTARG=cs_ste_vec_encrypted_term_v1,
138
+
RIGHTARG=cs_ste_vec_encrypted_term_v1,
139
+
NEGATOR =<,
140
+
RESTRICT = scalarltsel,
141
+
JOIN= scalarltjoinsel,
142
+
HASHES,
143
+
MERGES
144
+
);
145
+
146
+
DROPOPERATOR IF EXISTS <= (cs_ste_vec_encrypted_term_v1, cs_ste_vec_encrypted_term_v1);
147
+
148
+
CREATE OPERATOR <= (
149
+
PROCEDURE="cs_ste_vec_encrypted_term_lte",
150
+
LEFTARG=cs_ste_vec_encrypted_term_v1,
151
+
RIGHTARG=cs_ste_vec_encrypted_term_v1,
152
+
NEGATOR =>,
153
+
RESTRICT = scalargtsel,
154
+
JOIN= scalargtjoinsel,
155
+
HASHES,
156
+
MERGES
157
+
);
158
+
159
+
DROPOPERATOR FAMILY IF EXISTS cs_ste_vec_encrypted_term_v1_btree_ops USING btree;
160
+
161
+
CREATEOPERATORFAMILY cs_ste_vec_encrypted_term_v1_btree_ops USING btree;
162
+
163
+
DROPOPERATOR CLASS IF EXISTS cs_ste_vec_encrypted_term_v1_btree_ops USING btree;
164
+
165
+
CREATEOPERATOR CLASScs_ste_vec_encrypted_term_v1_btree_ops DEFAULT FOR TYPE cs_ste_vec_encrypted_term_v1 USING btree FAMILY cs_ste_vec_encrypted_term_v1_btree_ops AS
166
+
OPERATOR 1<,
167
+
OPERATOR 2<=,
168
+
OPERATOR 3=,
169
+
OPERATOR 4>=,
170
+
OPERATOR 5>,
171
+
FUNCTION 1 compare_ste_vec_encrypted_term_v1(a cs_ste_vec_encrypted_term_v1, b cs_ste_vec_encrypted_term_v1);
172
+
173
+
CREATETYPEcs_ste_vec_v1_entryAS (
6
174
tokenized_selector text,
7
-
term ore_cllw_8_v1,
175
+
term cs_ste_vec_encrypted_term_v1,
8
176
ciphertext text
9
177
);
10
178
11
179
CREATETYPEcs_ste_vec_index_v1AS (
12
-
entries ste_vec_v1_entry[]
180
+
entries cs_ste_vec_v1_entry[]
13
181
);
14
182
183
+
DROPFUNCTION IF EXISTS cs_ste_vec_value_v1(col jsonb, selector jsonb);
184
+
185
+
-- col: already encrypted payload
186
+
-- selector: already encrypted payload
187
+
-- returns a value in the format of our custom jsonb schema that will be decrypted
0 commit comments