@@ -152,9 +152,49 @@ DO $$
152
152
INSERT INTO encrypted (e) VALUES (' ("{\" hm\" : \" abc\" }")' );
153
153
INSERT INTO encrypted (e) VALUES (' ("{\" hm\" : \" def\" }")' );
154
154
INSERT INTO encrypted (e) VALUES (' ("{\" hm\" : \" ghi\" }")' );
155
+ INSERT INTO encrypted (e) VALUES (' ("{\" hm\" : \" jkl\" }")' );
156
+ INSERT INTO encrypted (e) VALUES (' ("{\" hm\" : \" mno\" }")' );
155
157
158
+ -- Literal row type type thing
156
159
EXECUTE ' EXPLAIN ANALYZE SELECT e::jsonb FROM encrypted WHERE e = ' ' ("{\" hm\" : \" abc\" }")' ' ;' into result;
157
160
161
+ IF position(' Index Only Scan using encrypted' in result) > 0 THEN
162
+ ASSERT true;
163
+ ELSE
164
+ RAISE EXCEPTION ' Expected Index Only Scan: %' , result;
165
+ END IF;
166
+
167
+ -- Cast to jsonb to eql_v2_encrypted
168
+ EXECUTE ' EXPLAIN ANALYZE SELECT e::jsonb FROM encrypted WHERE e = ' ' {"hm": "abc"}' ' ::jsonb::eql_v2_encrypted;' into result;
169
+
170
+ IF position(' Index Only Scan using encrypted' in result) > 0 THEN
171
+ ASSERT true;
172
+ ELSE
173
+ RAISE EXCEPTION ' Expected Index Only Scan: %' , result;
174
+ END IF;
175
+
176
+ -- Cast to text to eql_v2_encrypted
177
+ EXECUTE ' EXPLAIN ANALYZE SELECT e::jsonb FROM encrypted WHERE e = ' ' {"hm": "abc"}' ' ::text::eql_v2_encrypted;' into result;
178
+
179
+ IF position(' Index Only Scan using encrypted' in result) > 0 THEN
180
+ ASSERT true;
181
+ ELSE
182
+ RAISE EXCEPTION ' Expected Index Only Scan: %' , result;
183
+ END IF;
184
+
185
+ -- Use to_encrypted with jsonb
186
+ EXECUTE ' EXPLAIN ANALYZE SELECT e::jsonb FROM encrypted WHERE e = eql_v2.to_encrypted(' ' {"hm": "abc"}' ' ::jsonb);' into result;
187
+
188
+ IF position(' Index Only Scan using encrypted' in result) > 0 THEN
189
+ ASSERT true;
190
+ ELSE
191
+ RAISE EXCEPTION ' Expected Index Only Scan: %' , result;
192
+ END IF;
193
+
194
+ -- Use to_encrypted with text
195
+ EXECUTE ' EXPLAIN ANALYZE SELECT e::jsonb FROM encrypted WHERE e = eql_v2.to_encrypted(' ' {"hm": "abc"}' ' );' into result;
196
+
197
+
158
198
IF position(' Index Only Scan using encrypted' in result) > 0 THEN
159
199
ASSERT true;
160
200
ELSE
0 commit comments