Skip to content

Commit 8fc7c02

Browse files
committed
Add error message when prefix search is performed
1 parent c0e1500 commit 8fc7c02

File tree

3 files changed

+11
-4
lines changed

3 files changed

+11
-4
lines changed

expected/rum.out

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -304,3 +304,4 @@ SELECT a <=> to_tsquery('pg_catalog.english', 'w:*'), *
304304
FROM test_rum
305305
WHERE a @@ to_tsquery('pg_catalog.english', 'w:*')
306306
ORDER BY a <=> to_tsquery('pg_catalog.english', 'w:*');
307+
ERROR: Compare with prefix expressions isn't supported

rum--1.0.sql

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -89,7 +89,6 @@ AS
8989
FUNCTION 2 rum_extract_tsvector(tsvector,internal,internal,internal,internal),
9090
FUNCTION 3 rum_extract_tsquery(tsquery,internal,smallint,internal,internal,internal,internal),
9191
FUNCTION 4 rum_tsquery_consistent(internal,smallint,tsvector,int,internal,internal,internal,internal),
92-
FUNCTION 5 gin_cmp_prefix(text,text,smallint,internal),
9392
FUNCTION 6 rum_tsvector_config(internal),
9493
FUNCTION 7 rum_tsquery_pre_consistent(internal,smallint,tsvector,int,internal,internal,internal,internal),
9594
FUNCTION 8 rum_tsquery_distance(internal,smallint,tsvector,int,internal,internal,internal,internal,internal),

rumscan.c

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -207,9 +207,16 @@ rumFillScanKey(RumScanOpaque so, OffsetNumber attnum,
207207
/* set up normal entry using extractQueryFn's outputs */
208208
queryKey = queryValues[i];
209209
queryCategory = queryCategories[i];
210-
isPartialMatch =
211-
(rumstate->canPartialMatch[attnum - 1] && partial_matches)
212-
? partial_matches[i] : false;
210+
211+
/*
212+
* check inconsistence related to impossibility to do partial match
213+
* and existance of prefix expression in tsquery
214+
*/
215+
if (partial_matches && partial_matches[i] &&
216+
!rumstate->canPartialMatch[attnum - 1])
217+
elog(ERROR, "Compare with prefix expressions isn't supported");
218+
219+
isPartialMatch = (partial_matches) ? partial_matches[i] : false;
213220
this_extra = (extra_data) ? extra_data[i] : NULL;
214221
}
215222
else

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy