Skip to content

Commit 8c3deaa

Browse files
committed
Revert back to commit 01dcc24
This change reverts this repo back to 01dcc24. The changes reverted include commits from: - #86 - #87 We mostly want to revert the changes in #86 (since they aren't working as intended with Proxy), but #87 is also included since it's more recent (and also includes some ORE-related changes that would be tedious to untangle). Since there aren't many changes after #86, the most pragmatic option is to revert to the last known-good state and redo the install/uninstall changes by hand on top of that. Commands used to revert: ``` git reset --hard 01dcc24 git reset --soft ed460fc ``` This change doesn't use `git revert` because there were > 20 commits to revert and merge commits also don't play well with `git revert`.
1 parent ed460fc commit 8c3deaa

14 files changed

+1405
-471
lines changed

sql/000-ore.sql

Lines changed: 195 additions & 54 deletions
Large diffs are not rendered by default.

sql/011-core-functions.sql

Lines changed: 117 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
DROP FUNCTION IF EXISTS cs_ciphertext_v1_v0_0(val jsonb);
22

3-
CREATE FUNCTION cs_ciphertext_v1(val jsonb)
3+
CREATE FUNCTION cs_ciphertext_v1_v0_0(val jsonb)
44
RETURNS text
55
IMMUTABLE STRICT PARALLEL SAFE
66
AS $$
@@ -13,13 +13,30 @@ AS $$
1313
$$ LANGUAGE plpgsql;
1414

1515

16-
-----------------------------------------------------------------------------
16+
DROP FUNCTION IF EXISTS cs_ciphertext_v1_v0(val jsonb);
17+
18+
CREATE FUNCTION cs_ciphertext_v1_v0(val jsonb)
19+
RETURNS text
20+
LANGUAGE sql IMMUTABLE STRICT PARALLEL SAFE
21+
BEGIN ATOMIC
22+
RETURN cs_ciphertext_v1_v0_0(val);
23+
END;
24+
25+
26+
DROP FUNCTION IF EXISTS cs_ciphertext_v1(val jsonb);
27+
28+
CREATE FUNCTION cs_ciphertext_v1(val jsonb)
29+
RETURNS text
30+
LANGUAGE sql IMMUTABLE STRICT PARALLEL SAFE
31+
BEGIN ATOMIC
32+
RETURN cs_ciphertext_v1_v0_0(val);
33+
END;
1734

1835

1936
-- extracts match index from an emcrypted column
20-
DROP FUNCTION IF EXISTS cs_match_v1(val jsonb);
37+
DROP FUNCTION IF EXISTS cs_match_v1_v0_0(val jsonb);
2138

22-
CREATE FUNCTION cs_match_v1(val jsonb)
39+
CREATE FUNCTION cs_match_v1_v0_0(val jsonb)
2340
RETURNS cs_match_index_v1
2441
IMMUTABLE STRICT PARALLEL SAFE
2542
AS $$
@@ -31,13 +48,31 @@ AS $$
3148
END;
3249
$$ LANGUAGE plpgsql;
3350

34-
-----------------------------------------------------------------------------
51+
52+
DROP FUNCTION IF EXISTS cs_match_v1_v0(val jsonb);
53+
54+
CREATE FUNCTION cs_match_v1_v0(val jsonb)
55+
RETURNS cs_match_index_v1
56+
LANGUAGE sql IMMUTABLE STRICT PARALLEL SAFE
57+
BEGIN ATOMIC
58+
RETURN cs_match_v1_v0_0(val);
59+
END;
60+
61+
62+
DROP FUNCTION IF EXISTS cs_match_v1(val jsonb);
63+
64+
CREATE FUNCTION cs_match_v1(val jsonb)
65+
RETURNS cs_match_index_v1
66+
LANGUAGE sql IMMUTABLE STRICT PARALLEL SAFE
67+
BEGIN ATOMIC
68+
RETURN cs_match_v1_v0_0(val);
69+
END;
3570

3671

3772
-- extracts unique index from an encrypted column
38-
DROP FUNCTION IF EXISTS cs_unique_v1(val jsonb);
73+
DROP FUNCTION IF EXISTS cs_unique_v1_v0_0(val jsonb);
3974

40-
CREATE FUNCTION cs_unique_v1(val jsonb)
75+
CREATE FUNCTION cs_unique_v1_v0_0(val jsonb)
4176
RETURNS cs_unique_index_v1
4277
IMMUTABLE STRICT PARALLEL SAFE
4378
AS $$
@@ -50,12 +85,29 @@ AS $$
5085
$$ LANGUAGE plpgsql;
5186

5287

53-
-----------------------------------------------------------------------------
88+
DROP FUNCTION IF EXISTS cs_unique_v1_v0(val jsonb);
89+
90+
CREATE FUNCTION cs_unique_v1_v0(val jsonb)
91+
RETURNS cs_unique_index_v1
92+
LANGUAGE sql IMMUTABLE STRICT PARALLEL SAFE
93+
BEGIN ATOMIC
94+
RETURN cs_unique_v1_v0_0(val);
95+
END;
96+
97+
98+
DROP FUNCTION IF EXISTS cs_unique_v1(val jsonb);
99+
100+
CREATE FUNCTION cs_unique_v1(val jsonb)
101+
RETURNS cs_unique_index_v1
102+
LANGUAGE sql IMMUTABLE STRICT PARALLEL SAFE
103+
BEGIN ATOMIC
104+
RETURN cs_unique_v1_v0_0(val);
105+
END;
54106

55107
-- extracts json ste_vec index from an encrypted column
56-
DROP FUNCTION IF EXISTS cs_ste_vec_v1(val jsonb);
108+
DROP FUNCTION IF EXISTS cs_ste_vec_v1_v0_0(val jsonb);
57109

58-
CREATE FUNCTION cs_ste_vec_v1(val jsonb)
110+
CREATE FUNCTION cs_ste_vec_v1_v0_0(val jsonb)
59111
RETURNS cs_ste_vec_index_v1
60112
IMMUTABLE STRICT PARALLEL SAFE
61113
AS $$
@@ -67,34 +119,77 @@ AS $$
67119
END;
68120
$$ LANGUAGE plpgsql;
69121

70-
-----------------------------------------------------------------------------
71122

123+
DROP FUNCTION IF EXISTS cs_ste_vec_v1_v0(val jsonb);
72124

73-
DROP FUNCTION IF EXISTS jsonb_array_to_bytea_array(val jsonb);
125+
CREATE FUNCTION cs_ste_vec_v1_v0(val jsonb)
126+
RETURNS cs_ste_vec_index_v1
127+
LANGUAGE sql IMMUTABLE STRICT PARALLEL SAFE
128+
BEGIN ATOMIC
129+
RETURN cs_ste_vec_v1_v0_0(val);
130+
END;
74131

75-
CREATE FUNCTION jsonb_array_to_bytea_array(val jsonb)
76-
RETURNS bytea[] AS $$
77-
SELECT array_agg(decode(value::text, 'hex'))
78-
FROM jsonb_array_elements_text(val) AS value;
79-
$$ LANGUAGE sql;
80132

133+
DROP FUNCTION IF EXISTS cs_ste_vec_v1(val jsonb);
81134

82-
DROP FUNCTION IF EXISTS cs_ore_64_8_v1(val jsonb);
135+
CREATE FUNCTION cs_ste_vec_v1(val jsonb)
136+
RETURNS cs_ste_vec_index_v1
137+
LANGUAGE sql IMMUTABLE STRICT PARALLEL SAFE
138+
BEGIN ATOMIC
139+
RETURN cs_ste_vec_v1_v0_0(val);
140+
END;
83141

84-
CREATE FUNCTION cs_ore_64_8_v1(val jsonb)
85-
RETURNS ore_64_8_index_v1
142+
143+
-- casts text to ore_64_8_v1_term (bytea)
144+
DROP FUNCTION IF EXISTS _cs_text_to_ore_64_8_v1_term_v1_0(t text);
145+
146+
CREATE FUNCTION _cs_text_to_ore_64_8_v1_term_v1_0(t text)
147+
RETURNS ore_64_8_v1_term
148+
LANGUAGE sql IMMUTABLE STRICT PARALLEL SAFE
149+
BEGIN ATOMIC
150+
RETURN t::bytea;
151+
END;
152+
153+
-- cast to cleanup ore_64_8_v1 extraction
154+
DROP CAST IF EXISTS (text AS ore_64_8_v1_term);
155+
156+
CREATE CAST (text AS ore_64_8_v1_term)
157+
WITH FUNCTION _cs_text_to_ore_64_8_v1_term_v1_0(text) AS IMPLICIT;
158+
159+
160+
-- extracts ore index from an encrypted column
161+
DROP FUNCTION IF EXISTS cs_ore_64_8_v1_v0_0(val jsonb);
162+
163+
CREATE FUNCTION cs_ore_64_8_v1_v0_0(val jsonb)
164+
RETURNS ore_64_8_v1
86165
IMMUTABLE STRICT PARALLEL SAFE
87166
AS $$
88167
BEGIN
89168
IF val ? 'o' THEN
90-
RETURN jsonb_array_to_bytea_array(val->'o');
169+
RETURN (val->>'o')::ore_64_8_v1;
91170
END IF;
92171
RAISE 'Expected an ore index (o) value in json: %', val;
93172
END;
94173
$$ LANGUAGE plpgsql;
95174

96-
-----------------------------------------------------------------------------
97175

176+
DROP FUNCTION IF EXISTS cs_ore_64_8_v1_v0(val jsonb);
177+
178+
CREATE FUNCTION cs_ore_64_8_v1_v0(val jsonb)
179+
RETURNS ore_64_8_v1
180+
LANGUAGE sql IMMUTABLE STRICT PARALLEL SAFE
181+
BEGIN ATOMIC
182+
RETURN cs_ore_64_8_v1_v0_0(val);
183+
END;
184+
185+
DROP FUNCTION IF EXISTS cs_ore_64_8_v1(val jsonb);
186+
187+
CREATE FUNCTION cs_ore_64_8_v1(val jsonb)
188+
RETURNS ore_64_8_v1
189+
LANGUAGE sql IMMUTABLE STRICT PARALLEL SAFE
190+
BEGIN ATOMIC
191+
RETURN cs_ore_64_8_v1_v0_0(val);
192+
END;
98193

99194
DROP FUNCTION IF EXISTS _cs_first_grouped_value(jsonb, jsonb);
100195

0 commit comments

Comments
 (0)