diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/tstypes.out /tmp/cirrus-ci-build/build-32/testrun/regress/regress/results/tstypes.out --- /tmp/cirrus-ci-build/src/test/regress/expected/tstypes.out 2026-03-01 14:40:43.844889809 +0000 +++ /tmp/cirrus-ci-build/build-32/testrun/regress/regress/results/tstypes.out 2026-03-01 14:50:18.336467414 +0000 @@ -686,294 +686,102 @@ --phrase search SELECT to_tsvector('simple', '1 2 3 1') @@ '1 <-> 2' AS "true"; - true ------- - t -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 SELECT to_tsvector('simple', '1 2 3 1') @@ '1 <2> 2' AS "false"; - false -------- - f -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 SELECT to_tsvector('simple', '1 2 3 1') @@ '1 <-> 3' AS "false"; - false -------- - f -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 SELECT to_tsvector('simple', '1 2 3 1') @@ '1 <2> 3' AS "true"; - true ------- - t -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 SELECT to_tsvector('simple', '1 2 1 2') @@ '1 <3> 2' AS "true"; - true ------- - t -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 SELECT to_tsvector('simple', '1 2 11 3') @@ '1 <-> 3' AS "false"; - false -------- - f -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 SELECT to_tsvector('simple', '1 2 11 3') @@ '1:* <-> 3' AS "true"; - true ------- - t -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 SELECT to_tsvector('simple', '1 2 3 4') @@ '1 <-> 2 <-> 3' AS "true"; - true ------- - t -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 SELECT to_tsvector('simple', '1 2 3 4') @@ '(1 <-> 2) <-> 3' AS "true"; - true ------- - t -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 SELECT to_tsvector('simple', '1 2 3 4') @@ '1 <-> (2 <-> 3)' AS "true"; - true ------- - t -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 SELECT to_tsvector('simple', '1 2 3 4') @@ '1 <2> (2 <-> 3)' AS "false"; - false -------- - f -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 SELECT to_tsvector('simple', '1 2 1 2 3 4') @@ '(1 <-> 2) <-> 3' AS "true"; - true ------- - t -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 SELECT to_tsvector('simple', '1 2 1 2 3 4') @@ '1 <-> 2 <-> 3' AS "true"; - true ------- - t -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 -- without position data, phrase search does not match SELECT strip(to_tsvector('simple', '1 2 3 4')) @@ '1 <-> 2 <-> 3' AS "false"; - false -------- - f -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 select to_tsvector('simple', 'q x q y') @@ 'q <-> (x & y)' AS "false"; - false -------- - f -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 select to_tsvector('simple', 'q x') @@ 'q <-> (x | y <-> z)' AS "true"; - true ------- - t -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 select to_tsvector('simple', 'q y') @@ 'q <-> (x | y <-> z)' AS "false"; - false -------- - f -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 select to_tsvector('simple', 'q y z') @@ 'q <-> (x | y <-> z)' AS "true"; - true ------- - t -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 select to_tsvector('simple', 'q y x') @@ 'q <-> (x | y <-> z)' AS "false"; - false -------- - f -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 select to_tsvector('simple', 'q x y') @@ 'q <-> (x | y <-> z)' AS "true"; - true ------- - t -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 select to_tsvector('simple', 'q x') @@ '(x | y <-> z) <-> q' AS "false"; - false -------- - f -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 select to_tsvector('simple', 'x q') @@ '(x | y <-> z) <-> q' AS "true"; - true ------- - t -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 select to_tsvector('simple', 'x y q') @@ '(x | y <-> z) <-> q' AS "false"; - false -------- - f -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 select to_tsvector('simple', 'x y z') @@ '(x | y <-> z) <-> q' AS "false"; - false -------- - f -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 select to_tsvector('simple', 'x y z q') @@ '(x | y <-> z) <-> q' AS "true"; - true ------- - t -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 select to_tsvector('simple', 'y z q') @@ '(x | y <-> z) <-> q' AS "true"; - true ------- - t -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 select to_tsvector('simple', 'y y q') @@ '(x | y <-> z) <-> q' AS "false"; - false -------- - f -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 select to_tsvector('simple', 'y y q') @@ '(!x | y <-> z) <-> q' AS "true"; - true ------- - t -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 select to_tsvector('simple', 'x y q') @@ '(!x | y <-> z) <-> q' AS "true"; - true ------- - t -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 select to_tsvector('simple', 'y y q') @@ '(x | y <-> !z) <-> q' AS "true"; - true ------- - t -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 select to_tsvector('simple', 'x q') @@ '(x | y <-> !z) <-> q' AS "true"; - true ------- - t -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 select to_tsvector('simple', 'x q') @@ '(!x | y <-> z) <-> q' AS "false"; - false -------- - f -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 select to_tsvector('simple', 'z q') @@ '(!x | y <-> z) <-> q' AS "true"; - true ------- - t -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 select to_tsvector('simple', 'x y q') @@ '(!x | y) <-> y <-> q' AS "false"; - false -------- - f -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 select to_tsvector('simple', 'x y q') @@ '(!x | !y) <-> y <-> q' AS "true"; - true ------- - t -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 select to_tsvector('simple', 'x y q') @@ '(x | !y) <-> y <-> q' AS "true"; - true ------- - t -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 select to_tsvector('simple', 'x y q') @@ '(x | !!z) <-> y <-> q' AS "true"; - true ------- - t -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 select to_tsvector('simple', 'x y q y') @@ '!x <-> y' AS "true"; - true ------- - t -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 select to_tsvector('simple', 'x y q y') @@ '!x <-> !y' AS "true"; - true ------- - t -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 select to_tsvector('simple', 'x y q y') @@ '!x <-> !!y' AS "true"; - true ------- - t -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 select to_tsvector('simple', 'x y q y') @@ '!(x <-> y)' AS "false"; - false -------- - f -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 select to_tsvector('simple', 'x y q y') @@ '!(x <2> y)' AS "true"; - true ------- - t -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 select strip(to_tsvector('simple', 'x y q y')) @@ '!x <-> y' AS "false"; - false -------- - f -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 select strip(to_tsvector('simple', 'x y q y')) @@ '!x <-> !y' AS "false"; - false -------- - f -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 select strip(to_tsvector('simple', 'x y q y')) @@ '!x <-> !!y' AS "false"; - false -------- - f -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 select strip(to_tsvector('simple', 'x y q y')) @@ '!(x <-> y)' AS "true"; - true ------- - t -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 select strip(to_tsvector('simple', 'x y q y')) @@ '!(x <2> y)' AS "true"; - true ------- - t -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 select to_tsvector('simple', 'x y q y') @@ '!foo' AS "true"; - true ------- - t -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 select to_tsvector('simple', '') @@ '!foo' AS "true"; true ------ @@ -1235,11 +1043,9 @@ (1 row) SELECT ts_delete(to_tsvector('english', 'Rebel spaceships, striking from a hidden base'), 'spaceship'); - ts_delete ------------------------------------------- - 'base':7 'hidden':6 'rebel':1 'strike':3 -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" SELECT ts_delete('base:7 hidden:6 rebel:1 spaceship:2,33A,34B,35C,36D strike:3'::tsvector, 'base'); ts_delete -------------------------------------------------------------- diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/drop_if_exists.out /tmp/cirrus-ci-build/build-32/testrun/regress/regress/results/drop_if_exists.out --- /tmp/cirrus-ci-build/src/test/regress/expected/drop_if_exists.out 2026-03-01 14:40:43.756889812 +0000 +++ /tmp/cirrus-ci-build/build-32/testrun/regress/regress/results/drop_if_exists.out 2026-03-01 14:50:28.252466692 +0000 @@ -111,7 +111,11 @@ DictFile=ispell_sample, AffFile=ispell_sample ); +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/ispell_sample.dict": "book/GJUS +" DROP TEXT SEARCH DICTIONARY test_tsdict_exists; +ERROR: text search dictionary "test_tsdict_exists" does not exist -- test search template DROP TEXT SEARCH TEMPLATE test_tstemplate_exists; ERROR: text search template "test_tstemplate_exists" does not exist diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/tsearch.out /tmp/cirrus-ci-build/build-32/testrun/regress/regress/results/tsearch.out --- /tmp/cirrus-ci-build/src/test/regress/expected/tsearch.out 2026-03-01 14:40:43.844889809 +0000 +++ /tmp/cirrus-ci-build/build-32/testrun/regress/regress/results/tsearch.out 2026-03-01 14:51:14.688463596 +0000 @@ -1088,17 +1088,13 @@ --dictionaries and to_tsvector SELECT ts_lexize('english_stem', 'skies'); - ts_lexize ------------ - {sky} -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" SELECT ts_lexize('english_stem', 'identity'); - ts_lexize ------------ - {ident} -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" SELECT * FROM ts_token_type('default'); tokid | alias | description -------+-----------------+------------------------------------------ @@ -1278,397 +1274,206 @@ SELECT to_tsvector('english', '345 qwe@efd.r '' http://www.com/ http://aew.werc.ewr/?ad=qwe&dw 1aew.werc.ewr/?ad=qwe&dw 2aew.werc.ewr http://3aew.werc.ewr/?ad=qwe&dw http://4aew.werc.ewr http://5aew.werc.ewr:8100/? ad=qwe&dw 6aew.werc.ewr:8100/?ad=qwe&dw 7aew.werc.ewr:8100/?ad=qwe&dw=%20%32 +4.0e-10 qwe qwe qwqwe 234.435 455 5.005 teodor@stack.net teodor@123-stack.net 123_teodor@stack.net 123-teodor@stack.net qwe-wer asdf qwer jf sdjk ewr1> ewri2 /usr/local/fff /awdf/dwqe/4325 rewt/ewr wefjn /wqe-324/ewr gist.h gist.h.c gist.c. readline 4.2 4.2. 4.2, readline-4.2 readline-4.2. 234 wow < jqw <> qwerty'); - to_tsvector ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- - '+4.0e-10':28 '-4.2':63,65 '/?':18 '/?ad=qwe&dw':7,10,14,24 '/?ad=qwe&dw=%20%32':27 '/awdf/dwqe/4325':51 '/usr/local/fff':50 '/wqe-324/ewr':54 '123-teodor@stack.net':38 '123_teodor@stack.net':37 '1aew.werc.ewr':9 '1aew.werc.ewr/?ad=qwe&dw':8 '234':66 '234.435':32 '2aew.werc.ewr':11 '345':1 '3aew.werc.ewr':13 '3aew.werc.ewr/?ad=qwe&dw':12 '4.2':59,60,61 '455':33 '4aew.werc.ewr':15 '5.005':34 '5aew.werc.ewr:8100':17 '5aew.werc.ewr:8100/?':16 '6aew.werc.ewr:8100':23 '6aew.werc.ewr:8100/?ad=qwe&dw':22 '7aew.werc.ewr:8100':26 '7aew.werc.ewr:8100/?ad=qwe&dw=%20%32':25 'ad':19 'aew.werc.ewr':6 'aew.werc.ewr/?ad=qwe&dw':5 'asdf':42 'dw':21 'efd.r':3 'ewr1':48 'ewri2':49 'gist.c':57 'gist.h':55 'gist.h.c':56 'hjwer':47 'jf':44 'jqw':69 'qwe':2,20,29,30,40 'qwe-wer':39 'qwer':43 'qwerti':70 'qwqwe':31 'readlin':58,62,64 'rewt/ewr':52 'sdjk':45 'teodor@123-stack.net':36 'teodor@stack.net':35 'wefjn':53 'wer':41 'wow':68 'www.com':4 -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 SELECT length(to_tsvector('english', '345 qwe@efd.r '' http://www.com/ http://aew.werc.ewr/?ad=qwe&dw 1aew.werc.ewr/?ad=qwe&dw 2aew.werc.ewr http://3aew.werc.ewr/?ad=qwe&dw http://4aew.werc.ewr http://5aew.werc.ewr:8100/? ad=qwe&dw 6aew.werc.ewr:8100/?ad=qwe&dw 7aew.werc.ewr:8100/?ad=qwe&dw=%20%32 +4.0e-10 qwe qwe qwqwe 234.435 455 5.005 teodor@stack.net teodor@123-stack.net 123_teodor@stack.net 123-teodor@stack.net qwe-wer asdf qwer jf sdjk ewr1> ewri2 /usr/local/fff /awdf/dwqe/4325 rewt/ewr wefjn /wqe-324/ewr gist.h gist.h.c gist.c. readline 4.2 4.2. 4.2, readline-4.2 readline-4.2. 234 wow < jqw <> qwerty')); - length --------- - 56 -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 -- ts_debug SELECT * from ts_debug('english', 'abc&nm1;def©ghiõjkl'); - alias | description | token | dictionaries | dictionary | lexemes ------------+-----------------+----------------------------+----------------+--------------+--------- - tag | XML tag | | {} | | - asciiword | Word, all ASCII | abc | {english_stem} | english_stem | {abc} - entity | XML entity | &nm1; | {} | | - asciiword | Word, all ASCII | def | {english_stem} | english_stem | {def} - entity | XML entity | © | {} | | - asciiword | Word, all ASCII | ghi | {english_stem} | english_stem | {ghi} - entity | XML entity | õ | {} | | - asciiword | Word, all ASCII | jkl | {english_stem} | english_stem | {jkl} - tag | XML tag | | {} | | -(9 rows) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" +SQL function "ts_debug" statement 1 -- check parsing of URLs SELECT * from ts_debug('english', 'http://www.harewoodsolutions.co.uk/press.aspx'); - alias | description | token | dictionaries | dictionary | lexemes -----------+---------------+----------------------------------------+--------------+------------+------------------------------------------ - protocol | Protocol head | http:// | {} | | - url | URL | www.harewoodsolutions.co.uk/press.aspx | {simple} | simple | {www.harewoodsolutions.co.uk/press.aspx} - host | Host | www.harewoodsolutions.co.uk | {simple} | simple | {www.harewoodsolutions.co.uk} - url_path | URL path | /press.aspx | {simple} | simple | {/press.aspx} - tag | XML tag | | {} | | -(5 rows) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: SQL function "ts_debug" statement 1 SELECT * from ts_debug('english', 'http://aew.wer0c.ewr/id?ad=qwe&dw'); - alias | description | token | dictionaries | dictionary | lexemes -----------+---------------+----------------------------+--------------+------------+------------------------------ - protocol | Protocol head | http:// | {} | | - url | URL | aew.wer0c.ewr/id?ad=qwe&dw | {simple} | simple | {aew.wer0c.ewr/id?ad=qwe&dw} - host | Host | aew.wer0c.ewr | {simple} | simple | {aew.wer0c.ewr} - url_path | URL path | /id?ad=qwe&dw | {simple} | simple | {/id?ad=qwe&dw} - tag | XML tag | | {} | | -(5 rows) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: SQL function "ts_debug" statement 1 SELECT * from ts_debug('english', 'http://5aew.werc.ewr:8100/?'); - alias | description | token | dictionaries | dictionary | lexemes -----------+---------------+----------------------+--------------+------------+------------------------ - protocol | Protocol head | http:// | {} | | - url | URL | 5aew.werc.ewr:8100/? | {simple} | simple | {5aew.werc.ewr:8100/?} - host | Host | 5aew.werc.ewr:8100 | {simple} | simple | {5aew.werc.ewr:8100} - url_path | URL path | /? | {simple} | simple | {/?} -(4 rows) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: SQL function "ts_debug" statement 1 SELECT * from ts_debug('english', '5aew.werc.ewr:8100/?xx'); - alias | description | token | dictionaries | dictionary | lexemes -----------+-------------+------------------------+--------------+------------+-------------------------- - url | URL | 5aew.werc.ewr:8100/?xx | {simple} | simple | {5aew.werc.ewr:8100/?xx} - host | Host | 5aew.werc.ewr:8100 | {simple} | simple | {5aew.werc.ewr:8100} - url_path | URL path | /?xx | {simple} | simple | {/?xx} -(3 rows) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: SQL function "ts_debug" statement 1 SELECT token, alias, dictionaries, dictionaries is null as dnull, array_dims(dictionaries) as ddims, lexemes, lexemes is null as lnull, array_dims(lexemes) as ldims from ts_debug('english', 'a title'); - token | alias | dictionaries | dnull | ddims | lexemes | lnull | ldims --------+-----------+----------------+-------+-------+---------+-------+------- - a | asciiword | {english_stem} | f | [1:1] | {} | f | - | blank | {} | f | | | t | - title | asciiword | {english_stem} | f | [1:1] | {titl} | f | [1:1] -(3 rows) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" +SQL function "ts_debug" statement 1 -- to_tsquery SELECT to_tsquery('english', 'qwe & sKies '); - to_tsquery ---------------- - 'qwe' & 'sky' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" SELECT to_tsquery('simple', 'qwe & sKies '); - to_tsquery ------------------ - 'qwe' & 'skies' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 SELECT to_tsquery('english', '''the wether'':dc & '' sKies '':BC '); - to_tsquery ------------------------- - 'wether':CD & 'sky':BC -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" SELECT to_tsquery('english', 'asd&(and|fghj)'); - to_tsquery ----------------- - 'asd' & 'fghj' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" SELECT to_tsquery('english', '(asd&and)|fghj'); - to_tsquery ----------------- - 'asd' | 'fghj' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" SELECT to_tsquery('english', '(asd&!and)|fghj'); - to_tsquery ----------------- - 'asd' | 'fghj' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" SELECT to_tsquery('english', '(the|and&(i&1))&fghj'); - to_tsquery --------------- - '1' & 'fghj' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" SELECT plainto_tsquery('english', 'the and z 1))& fghj'); - plainto_tsquery --------------------- - 'z' & '1' & 'fghj' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" SELECT plainto_tsquery('english', 'foo bar') && plainto_tsquery('english', 'asd'); - ?column? ------------------------ - 'foo' & 'bar' & 'asd' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" SELECT plainto_tsquery('english', 'foo bar') || plainto_tsquery('english', 'asd fg'); - ?column? ------------------------------- - 'foo' & 'bar' | 'asd' & 'fg' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" SELECT plainto_tsquery('english', 'foo bar') || !!plainto_tsquery('english', 'asd fg'); - ?column? ------------------------------------ - 'foo' & 'bar' | !( 'asd' & 'fg' ) -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" SELECT plainto_tsquery('english', 'foo bar') && 'asd | fg'; - ?column? ----------------------------------- - 'foo' & 'bar' & ( 'asd' | 'fg' ) -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" -- Check stop word deletion, a and s are stop-words SELECT to_tsquery('english', '!(a & !b) & c'); - to_tsquery -------------- - !!'b' & 'c' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" SELECT to_tsquery('english', '!(a & !b)'); - to_tsquery ------------- - !!'b' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" SELECT to_tsquery('english', '(1 <-> 2) <-> a'); - to_tsquery -------------- - '1' <-> '2' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 SELECT to_tsquery('english', '(1 <-> a) <-> 2'); - to_tsquery -------------- - '1' <2> '2' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 SELECT to_tsquery('english', '(a <-> 1) <-> 2'); - to_tsquery -------------- - '1' <-> '2' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" SELECT to_tsquery('english', 'a <-> (1 <-> 2)'); - to_tsquery -------------- - '1' <-> '2' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" SELECT to_tsquery('english', '1 <-> (a <-> 2)'); - to_tsquery -------------- - '1' <2> '2' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 SELECT to_tsquery('english', '1 <-> (2 <-> a)'); - to_tsquery -------------- - '1' <-> '2' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 SELECT to_tsquery('english', '(1 <-> 2) <3> a'); - to_tsquery -------------- - '1' <-> '2' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 SELECT to_tsquery('english', '(1 <-> a) <3> 2'); - to_tsquery -------------- - '1' <4> '2' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 SELECT to_tsquery('english', '(a <-> 1) <3> 2'); - to_tsquery -------------- - '1' <3> '2' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" SELECT to_tsquery('english', 'a <3> (1 <-> 2)'); - to_tsquery -------------- - '1' <-> '2' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" SELECT to_tsquery('english', '1 <3> (a <-> 2)'); - to_tsquery -------------- - '1' <4> '2' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 SELECT to_tsquery('english', '1 <3> (2 <-> a)'); - to_tsquery -------------- - '1' <3> '2' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 SELECT to_tsquery('english', '(1 <3> 2) <-> a'); - to_tsquery -------------- - '1' <3> '2' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 SELECT to_tsquery('english', '(1 <3> a) <-> 2'); - to_tsquery -------------- - '1' <4> '2' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 SELECT to_tsquery('english', '(a <3> 1) <-> 2'); - to_tsquery -------------- - '1' <-> '2' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" SELECT to_tsquery('english', 'a <-> (1 <3> 2)'); - to_tsquery -------------- - '1' <3> '2' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" SELECT to_tsquery('english', '1 <-> (a <3> 2)'); - to_tsquery -------------- - '1' <4> '2' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 SELECT to_tsquery('english', '1 <-> (2 <3> a)'); - to_tsquery -------------- - '1' <-> '2' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 SELECT to_tsquery('english', '((a <-> 1) <-> 2) <-> s'); - to_tsquery -------------- - '1' <-> '2' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" SELECT to_tsquery('english', '(2 <-> (a <-> 1)) <-> s'); - to_tsquery -------------- - '2' <2> '1' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 SELECT to_tsquery('english', '((1 <-> a) <-> 2) <-> s'); - to_tsquery -------------- - '1' <2> '2' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 SELECT to_tsquery('english', '(2 <-> (1 <-> a)) <-> s'); - to_tsquery -------------- - '2' <-> '1' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 SELECT to_tsquery('english', 's <-> ((a <-> 1) <-> 2)'); - to_tsquery -------------- - '1' <-> '2' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" SELECT to_tsquery('english', 's <-> (2 <-> (a <-> 1))'); - to_tsquery -------------- - '2' <2> '1' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" SELECT to_tsquery('english', 's <-> ((1 <-> a) <-> 2)'); - to_tsquery -------------- - '1' <2> '2' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" SELECT to_tsquery('english', 's <-> (2 <-> (1 <-> a))'); - to_tsquery -------------- - '2' <-> '1' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" SELECT to_tsquery('english', '((a <-> 1) <-> s) <-> 2'); - to_tsquery -------------- - '1' <2> '2' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" SELECT to_tsquery('english', '(s <-> (a <-> 1)) <-> 2'); - to_tsquery -------------- - '1' <-> '2' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" SELECT to_tsquery('english', '((1 <-> a) <-> s) <-> 2'); - to_tsquery -------------- - '1' <3> '2' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 SELECT to_tsquery('english', '(s <-> (1 <-> a)) <-> 2'); - to_tsquery -------------- - '1' <2> '2' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" SELECT to_tsquery('english', '2 <-> ((a <-> 1) <-> s)'); - to_tsquery -------------- - '2' <2> '1' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 SELECT to_tsquery('english', '2 <-> (s <-> (a <-> 1))'); - to_tsquery -------------- - '2' <3> '1' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 SELECT to_tsquery('english', '2 <-> ((1 <-> a) <-> s)'); - to_tsquery -------------- - '2' <-> '1' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 SELECT to_tsquery('english', '2 <-> (s <-> (1 <-> a))'); - to_tsquery -------------- - '2' <2> '1' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 SELECT to_tsquery('english', 'foo <-> (a <-> (the <-> bar))'); - to_tsquery ------------------ - 'foo' <3> 'bar' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" SELECT to_tsquery('english', '((foo <-> a) <-> the) <-> bar'); - to_tsquery ------------------ - 'foo' <3> 'bar' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" SELECT to_tsquery('english', 'foo <-> a <-> the <-> bar'); - to_tsquery ------------------ - 'foo' <3> 'bar' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" SELECT phraseto_tsquery('english', 'PostgreSQL can be extended by the user in many ways'); - phraseto_tsquery ------------------------------------------------------------ - 'postgresql' <3> 'extend' <3> 'user' <2> 'mani' <-> 'way' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" SELECT ts_rank_cd(to_tsvector('english', ' Day after day, day after day, We stuck, nor breath nor motion, @@ -1680,11 +1485,9 @@ Nor any drop to drink. S. T. Coleridge (1772-1834) '), to_tsquery('english', 'paint&water')); - ts_rank_cd ------------- - 0.05 -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" SELECT ts_rank_cd(to_tsvector('english', ' Day after day, day after day, We stuck, nor breath nor motion, @@ -1696,11 +1499,9 @@ Nor any drop to drink. S. T. Coleridge (1772-1834) '), to_tsquery('english', 'breath&motion&water')); - ts_rank_cd -------------- - 0.008333334 -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" SELECT ts_rank_cd(to_tsvector('english', ' Day after day, day after day, We stuck, nor breath nor motion, @@ -1712,11 +1513,9 @@ Nor any drop to drink. S. T. Coleridge (1772-1834) '), to_tsquery('english', 'ocean')); - ts_rank_cd ------------- - 0.1 -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" SELECT ts_rank_cd(to_tsvector('english', ' Day after day, day after day, We stuck, nor breath nor motion, @@ -1728,25 +1527,19 @@ Nor any drop to drink. S. T. Coleridge (1772-1834) '), to_tsquery('english', 'painted <-> Ship')); - ts_rank_cd ------------- - 0.1 -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" SELECT ts_rank_cd(strip(to_tsvector('both stripped')), to_tsquery('both & stripped')); - ts_rank_cd ------------- - 0 -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" SELECT ts_rank_cd(to_tsvector('unstripped') || strip(to_tsvector('stripped')), to_tsquery('unstripped & stripped')); - ts_rank_cd ------------- - 0 -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" --headline tests SELECT ts_headline('english', ' Day after day, day after day, @@ -1759,14 +1552,9 @@ Nor any drop to drink. S. T. Coleridge (1772-1834) ', to_tsquery('english', 'paint&water')); - ts_headline ------------------------------------------ - painted Ocean. + - Water, water, every where+ - And all the boards did shrink; + - Water, water, every -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" SELECT ts_headline('english', ' Day after day, day after day, We stuck, nor breath nor motion, @@ -1778,14 +1566,9 @@ Nor any drop to drink. S. T. Coleridge (1772-1834) ', to_tsquery('english', 'breath&motion&water')); - ts_headline ----------------------------------- - breath nor motion,+ - As idle as a painted Ship + - Upon a painted Ocean. + - Water, water -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" SELECT ts_headline('english', ' Day after day, day after day, We stuck, nor breath nor motion, @@ -1797,14 +1580,9 @@ Nor any drop to drink. S. T. Coleridge (1772-1834) ', to_tsquery('english', 'ocean')); - ts_headline ----------------------------------- - Ocean. + - Water, water, every where + - And all the boards did shrink;+ - Water, water, every where -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" SELECT ts_headline('english', ' Day after day, day after day, We stuck, nor breath nor motion, @@ -1816,18 +1594,9 @@ Nor any drop to drink. S. T. Coleridge (1772-1834) ', to_tsquery('english', 'day & drink')); - ts_headline ------------------------------------- - day, + - We stuck, nor breath nor motion,+ - As idle as a painted Ship + - Upon a painted Ocean. + - Water, water, every where + - And all the boards did shrink; + - Water, water, every where, + - Nor any drop -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" SELECT ts_headline('english', ' Day after day, day after day, We stuck, nor breath nor motion, @@ -1839,13 +1608,9 @@ Nor any drop to drink. S. T. Coleridge (1772-1834) ', to_tsquery('english', 'day | drink')); - ts_headline ------------------------------------------------------------ - Day after day, day after day,+ - We stuck, nor breath nor motion, + - As idle as a painted -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" SELECT ts_headline('english', ' Day after day, day after day, We stuck, nor breath nor motion, @@ -1857,13 +1622,9 @@ Nor any drop to drink. S. T. Coleridge (1772-1834) ', to_tsquery('english', 'day | !drink')); - ts_headline ------------------------------------------------------------ - Day after day, day after day,+ - We stuck, nor breath nor motion, + - As idle as a painted -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" SELECT ts_headline('english', ' Day after day, day after day, We stuck, nor breath nor motion, @@ -1875,16 +1636,9 @@ Nor any drop to drink. S. T. Coleridge (1772-1834) ', to_tsquery('english', 'painted <-> Ship & drink')); - ts_headline ----------------------------------- - painted Ship + - Upon a painted Ocean. + - Water, water, every where + - And all the boards did shrink;+ - Water, water, every where, + - Nor any drop to drink -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" SELECT ts_headline('english', ' Day after day, day after day, We stuck, nor breath nor motion, @@ -1896,14 +1650,9 @@ Nor any drop to drink. S. T. Coleridge (1772-1834) ', to_tsquery('english', 'painted <-> Ship | drink')); - ts_headline ---------------------------------- - painted Ship + - Upon a painted Ocean. + - Water, water, every where + - And all the boards did shrink -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" SELECT ts_headline('english', ' Day after day, day after day, We stuck, nor breath nor motion, @@ -1915,14 +1664,9 @@ Nor any drop to drink. S. T. Coleridge (1772-1834) ', to_tsquery('english', 'painted <-> Ship | !drink')); - ts_headline ---------------------------------- - painted Ship + - Upon a painted Ocean. + - Water, water, every where + - And all the boards did shrink -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" SELECT ts_headline('english', ' Day after day, day after day, We stuck, nor breath nor motion, @@ -1934,14 +1678,9 @@ Nor any drop to drink. S. T. Coleridge (1772-1834) ', phraseto_tsquery('english', 'painted Ocean')); - ts_headline ----------------------------------- - painted Ocean. + - Water, water, every where + - And all the boards did shrink;+ - Water, water, every -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" SELECT ts_headline('english', ' Day after day, day after day, We stuck, nor breath nor motion, @@ -1953,32 +1692,23 @@ Nor any drop to drink. S. T. Coleridge (1772-1834) ', phraseto_tsquery('english', 'idle as a painted Ship')); - ts_headline ---------------------------------------------- - idle as a painted Ship+ - Upon a painted Ocean. + - Water, water, every where + - And all the boards -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" SELECT ts_headline('english', 'Lorem ipsum urna. Nullam nullam ullamcorper urna.', to_tsquery('english','Lorem') && phraseto_tsquery('english','ullamcorper urna'), 'MaxWords=100, MinWords=1'); - ts_headline -------------------------------------------------------------------------------- - Lorem ipsum urna. Nullam nullam ullamcorper urna -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" SELECT ts_headline('english', 'Lorem ipsum urna. Nullam nullam ullamcorper urna.', phraseto_tsquery('english','ullamcorper urna'), 'MaxWords=100, MinWords=5'); - ts_headline -------------------------------------------------------------- - urna. Nullam nullam ullamcorper urna. -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" SELECT ts_headline('english', ' @@ -1992,40 +1722,15 @@ ', to_tsquery('english', 'sea&foo'), 'HighlightAll=true'); - ts_headline ------------------------------------------------------------------------------ - + - + - + - + - Sea view wow foo bar qq + - YES  + - ff-bg + - + - + - -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" SELECT ts_headline('simple', '1 2 3 1 3'::text, '1 <-> 3', 'MaxWords=2, MinWords=1'); - ts_headline -------------------- - 1 3 -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 SELECT ts_headline('simple', '1 2 3 1 3'::text, '1 & 3', 'MaxWords=4, MinWords=1'); - ts_headline ---------------------- - 1 2 3 -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 SELECT ts_headline('simple', '1 2 3 1 3'::text, '1 <-> 3', 'MaxWords=4, MinWords=1'); - ts_headline -------------------- - 1 3 -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 --Check if headline fragments work SELECT ts_headline('english', ' Day after day, day after day, @@ -2038,18 +1743,9 @@ Nor any drop to drink. S. T. Coleridge (1772-1834) ', to_tsquery('english', 'ocean'), 'MaxFragments=1'); - ts_headline ------------------------------------- - after day, + - We stuck, nor breath nor motion,+ - As idle as a painted Ship + - Upon a painted Ocean. + - Water, water, every where + - And all the boards did shrink; + - Water, water, every where, + - Nor any drop -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" --Check if more than one fragments are displayed SELECT ts_headline('english', ' Day after day, day after day, @@ -2062,18 +1758,9 @@ Nor any drop to drink. S. T. Coleridge (1772-1834) ', to_tsquery('english', 'Coleridge & stuck'), 'MaxFragments=2'); - ts_headline ----------------------------------------------- - after day, day after day, + - We stuck, nor breath nor motion, + - As idle as a painted Ship + - Upon a painted Ocean. + - Water, water, every where + - And all the boards did shrink; + - Water, water, every where ... drop to drink.+ - S. T. Coleridge -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" --Fragments when there all query words are not in the document SELECT ts_headline('english', ' Day after day, day after day, @@ -2086,14 +1773,9 @@ Nor any drop to drink. S. T. Coleridge (1772-1834) ', to_tsquery('english', 'ocean & seahorse'), 'MaxFragments=1'); - ts_headline ------------------------------------- - + - Day after day, day after day, + - We stuck, nor breath nor motion,+ - As idle as -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" --FragmentDelimiter option SELECT ts_headline('english', ' Day after day, day after day, @@ -2106,28 +1788,17 @@ Nor any drop to drink. S. T. Coleridge (1772-1834) ', to_tsquery('english', 'Coleridge & stuck'), 'MaxFragments=2,FragmentDelimiter=***'); - ts_headline --------------------------------------------- - after day, day after day, + - We stuck, nor breath nor motion, + - As idle as a painted Ship + - Upon a painted Ocean. + - Water, water, every where + - And all the boards did shrink; + - Water, water, every where***drop to drink.+ - S. T. Coleridge -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" --Fragments with phrase search SELECT ts_headline('english', 'Lorem ipsum urna. Nullam nullam ullamcorper urna.', to_tsquery('english','Lorem') && phraseto_tsquery('english','ullamcorper urna'), 'MaxFragments=100, MaxWords=100, MinWords=1'); - ts_headline -------------------------------------------------------------------------------- - Lorem ipsum urna. Nullam nullam ullamcorper urna -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" -- Edge cases with empty query SELECT ts_headline('english', '', to_tsquery('english', '')); @@ -2140,46 +1811,50 @@ SELECT ts_headline('english', 'foo bar', to_tsquery('english', '')); NOTICE: text-search query doesn't contain lexemes: "" - ts_headline -------------- - foo bar -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" --Rewrite sub system CREATE TABLE test_tsquery (txtkeyword TEXT, txtsample TEXT); \set ECHO none ALTER TABLE test_tsquery ADD COLUMN keyword tsquery; UPDATE test_tsquery SET keyword = to_tsquery('english', txtkeyword); +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" ALTER TABLE test_tsquery ADD COLUMN sample tsquery; UPDATE test_tsquery SET sample = to_tsquery('english', txtsample::text); +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" SELECT COUNT(*) FROM test_tsquery WHERE keyword < 'new <-> york'; count ------- - 2 + 0 (1 row) SELECT COUNT(*) FROM test_tsquery WHERE keyword <= 'new <-> york'; count ------- - 3 + 0 (1 row) SELECT COUNT(*) FROM test_tsquery WHERE keyword = 'new <-> york'; count ------- - 1 + 0 (1 row) SELECT COUNT(*) FROM test_tsquery WHERE keyword >= 'new <-> york'; count ------- - 4 + 0 (1 row) SELECT COUNT(*) FROM test_tsquery WHERE keyword > 'new <-> york'; count ------- - 3 + 0 (1 row) CREATE UNIQUE INDEX bt_tsq ON test_tsquery (keyword); @@ -2187,31 +1862,31 @@ SELECT COUNT(*) FROM test_tsquery WHERE keyword < 'new <-> york'; count ------- - 2 + 0 (1 row) SELECT COUNT(*) FROM test_tsquery WHERE keyword <= 'new <-> york'; count ------- - 3 + 0 (1 row) SELECT COUNT(*) FROM test_tsquery WHERE keyword = 'new <-> york'; count ------- - 1 + 0 (1 row) SELECT COUNT(*) FROM test_tsquery WHERE keyword >= 'new <-> york'; count ------- - 4 + 0 (1 row) SELECT COUNT(*) FROM test_tsquery WHERE keyword > 'new <-> york'; count ------- - 3 + 0 (1 row) RESET enable_seqscan; @@ -2229,45 +1904,45 @@ (1 row) SELECT ts_rewrite('moscow', 'SELECT keyword, sample FROM test_tsquery'::text ); - ts_rewrite ---------------------- - 'moskva' | 'moscow' + ts_rewrite +------------ + 'moscow' (1 row) SELECT ts_rewrite('moscow & hotel', 'SELECT keyword, sample FROM test_tsquery'::text ); - ts_rewrite ------------------------------------ - 'hotel' & ( 'moskva' | 'moscow' ) + ts_rewrite +-------------------- + 'moscow' & 'hotel' (1 row) SELECT ts_rewrite('bar & qq & foo & (new <-> york)', 'SELECT keyword, sample FROM test_tsquery'::text ); - ts_rewrite -------------------------------------------------------------------------------------- - 'citi' & 'foo' & ( 'bar' | 'qq' ) & ( 'nyc' | 'big' <-> 'appl' | 'new' <-> 'york' ) + ts_rewrite +----------------------------------------- + 'foo' & 'bar' & 'qq' & 'new' <-> 'york' (1 row) SELECT ts_rewrite( 'moscow', 'SELECT keyword, sample FROM test_tsquery'); - ts_rewrite ---------------------- - 'moskva' | 'moscow' + ts_rewrite +------------ + 'moscow' (1 row) SELECT ts_rewrite( 'moscow & hotel', 'SELECT keyword, sample FROM test_tsquery'); - ts_rewrite ------------------------------------ - 'hotel' & ( 'moskva' | 'moscow' ) + ts_rewrite +-------------------- + 'moscow' & 'hotel' (1 row) SELECT ts_rewrite( 'bar & qq & foo & (new <-> york)', 'SELECT keyword, sample FROM test_tsquery'); - ts_rewrite -------------------------------------------------------------------------------------- - 'citi' & 'foo' & ( 'bar' | 'qq' ) & ( 'nyc' | 'big' <-> 'appl' | 'new' <-> 'york' ) + ts_rewrite +----------------------------------------- + 'foo' & 'bar' & 'qq' & 'new' <-> 'york' (1 row) SELECT ts_rewrite('1 & (2 <-> 3)', 'SELECT keyword, sample FROM test_tsquery'::text ); - ts_rewrite -------------- - '2' <-> '4' + ts_rewrite +------------------- + '1' & '2' <-> '3' (1 row) SELECT ts_rewrite('1 & (2 <2> 3)', 'SELECT keyword, sample FROM test_tsquery'::text ); @@ -2277,9 +1952,9 @@ (1 row) SELECT ts_rewrite('5 <-> (1 & (2 <-> 3))', 'SELECT keyword, sample FROM test_tsquery'::text ); - ts_rewrite -------------------------- - '5' <-> ( '2' <-> '4' ) + ts_rewrite +------------------------------- + '5' <-> ( '1' & '2' <-> '3' ) (1 row) SELECT ts_rewrite('5 <-> (6 | 8)', 'SELECT keyword, sample FROM test_tsquery'::text ); @@ -2290,30 +1965,18 @@ -- Check empty substitution SELECT ts_rewrite(to_tsquery('5 & (6 | 5)'), to_tsquery('5'), to_tsquery('')); -NOTICE: text-search query doesn't contain lexemes: "" - ts_rewrite ------------- - '6' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 SELECT ts_rewrite(to_tsquery('!5'), to_tsquery('5'), to_tsquery('')); -NOTICE: text-search query doesn't contain lexemes: "" - ts_rewrite ------------- - -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 SELECT keyword FROM test_tsquery WHERE keyword @> 'new'; - keyword ------------------- - 'new' <-> 'york' -(1 row) + keyword +--------- +(0 rows) SELECT keyword FROM test_tsquery WHERE keyword @> 'moscow'; - keyword ----------- - 'moscow' -(1 row) + keyword +--------- +(0 rows) SELECT keyword FROM test_tsquery WHERE keyword <@ 'new'; keyword @@ -2321,60 +1984,45 @@ (0 rows) SELECT keyword FROM test_tsquery WHERE keyword <@ 'moscow'; - keyword ----------- - 'moscow' -(1 row) + keyword +--------- +(0 rows) SELECT ts_rewrite( query, 'SELECT keyword, sample FROM test_tsquery' ) FROM to_tsquery('english', 'moscow') AS query; - ts_rewrite ---------------------- - 'moskva' | 'moscow' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" SELECT ts_rewrite( query, 'SELECT keyword, sample FROM test_tsquery' ) FROM to_tsquery('english', 'moscow & hotel') AS query; - ts_rewrite ------------------------------------ - 'hotel' & ( 'moskva' | 'moscow' ) -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" SELECT ts_rewrite( query, 'SELECT keyword, sample FROM test_tsquery' ) FROM to_tsquery('english', 'bar & qq & foo & (new <-> york)') AS query; - ts_rewrite -------------------------------------------------------------------------------------- - 'citi' & 'foo' & ( 'bar' | 'qq' ) & ( 'nyc' | 'big' <-> 'appl' | 'new' <-> 'york' ) -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" SELECT ts_rewrite( query, 'SELECT keyword, sample FROM test_tsquery' ) FROM to_tsquery('english', 'moscow') AS query; - ts_rewrite ---------------------- - 'moskva' | 'moscow' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" SELECT ts_rewrite( query, 'SELECT keyword, sample FROM test_tsquery' ) FROM to_tsquery('english', 'moscow & hotel') AS query; - ts_rewrite ------------------------------------ - 'hotel' & ( 'moskva' | 'moscow' ) -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" SELECT ts_rewrite( query, 'SELECT keyword, sample FROM test_tsquery' ) FROM to_tsquery('english', 'bar & qq & foo & (new <-> york)') AS query; - ts_rewrite -------------------------------------------------------------------------------------- - 'citi' & 'foo' & ( 'bar' | 'qq' ) & ( 'nyc' | 'big' <-> 'appl' | 'new' <-> 'york' ) -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" CREATE INDEX qq ON test_tsquery USING gist (keyword tsquery_ops); SET enable_seqscan=OFF; SELECT keyword FROM test_tsquery WHERE keyword @> 'new'; - keyword ------------------- - 'new' <-> 'york' -(1 row) + keyword +--------- +(0 rows) SELECT keyword FROM test_tsquery WHERE keyword @> 'moscow'; - keyword ----------- - 'moscow' -(1 row) + keyword +--------- +(0 rows) SELECT keyword FROM test_tsquery WHERE keyword <@ 'new'; keyword @@ -2382,47 +2030,34 @@ (0 rows) SELECT keyword FROM test_tsquery WHERE keyword <@ 'moscow'; - keyword ----------- - 'moscow' -(1 row) + keyword +--------- +(0 rows) SELECT ts_rewrite( query, 'SELECT keyword, sample FROM test_tsquery' ) FROM to_tsquery('english', 'moscow') AS query; - ts_rewrite ---------------------- - 'moskva' | 'moscow' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" SELECT ts_rewrite( query, 'SELECT keyword, sample FROM test_tsquery' ) FROM to_tsquery('english', 'moscow & hotel') AS query; - ts_rewrite ------------------------------------ - 'hotel' & ( 'moskva' | 'moscow' ) -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" SELECT ts_rewrite( query, 'SELECT keyword, sample FROM test_tsquery' ) FROM to_tsquery('english', 'bar & qq & foo & (new <-> york)') AS query; - ts_rewrite -------------------------------------------------------------------------------------- - 'citi' & 'foo' & ( 'bar' | 'qq' ) & ( 'nyc' | 'big' <-> 'appl' | 'new' <-> 'york' ) -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" SELECT ts_rewrite( query, 'SELECT keyword, sample FROM test_tsquery' ) FROM to_tsquery('english', 'moscow') AS query; - ts_rewrite ---------------------- - 'moskva' | 'moscow' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" SELECT ts_rewrite( query, 'SELECT keyword, sample FROM test_tsquery' ) FROM to_tsquery('english', 'moscow & hotel') AS query; - ts_rewrite ------------------------------------ - 'hotel' & ( 'moskva' | 'moscow' ) -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" SELECT ts_rewrite( query, 'SELECT keyword, sample FROM test_tsquery' ) FROM to_tsquery('english', 'bar & qq & foo & (new <-> york)') AS query; - ts_rewrite -------------------------------------------------------------------------------------- - 'citi' & 'foo' & ( 'bar' | 'qq' ) & ( 'nyc' | 'big' <-> 'appl' | 'new' <-> 'york' ) -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" SELECT ts_rewrite(tsquery_phrase('foo', 'foo'), 'foo', 'bar | baz'); ts_rewrite ----------------------------------------- @@ -2431,89 +2066,53 @@ SELECT to_tsvector('foo bar') @@ ts_rewrite(tsquery_phrase('foo', 'foo'), 'foo', 'bar | baz'); - ?column? ----------- - f -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" SELECT to_tsvector('bar baz') @@ ts_rewrite(tsquery_phrase('foo', 'foo'), 'foo', 'bar | baz'); - ?column? ----------- - t -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" RESET enable_seqscan; --test GUC SET default_text_search_config=simple; SELECT to_tsvector('SKIES My booKs'); - to_tsvector ----------------------------- - 'books':3 'my':2 'skies':1 -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 SELECT plainto_tsquery('SKIES My booKs'); - plainto_tsquery --------------------------- - 'skies' & 'my' & 'books' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 SELECT to_tsquery('SKIES & My | booKs'); - to_tsquery --------------------------- - 'skies' & 'my' | 'books' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 SET default_text_search_config=english; SELECT to_tsvector('SKIES My booKs'); - to_tsvector ------------------- - 'book':3 'sky':1 -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" SELECT plainto_tsquery('SKIES My booKs'); - plainto_tsquery ------------------ - 'sky' & 'book' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" SELECT to_tsquery('SKIES & My | booKs'); - to_tsquery ----------------- - 'sky' | 'book' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" --trigger CREATE TRIGGER tsvectorupdate BEFORE UPDATE OR INSERT ON test_tsvector FOR EACH ROW EXECUTE PROCEDURE tsvector_update_trigger(a, 'pg_catalog.english', t); SELECT count(*) FROM test_tsvector WHERE a @@ to_tsquery('345&qwerty'); - count -------- - 0 -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 INSERT INTO test_tsvector (t) VALUES ('345 qwerty'); +ERROR: Unicode case folding can only be performed if server encoding is UTF8 SELECT count(*) FROM test_tsvector WHERE a @@ to_tsquery('345&qwerty'); - count -------- - 1 -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 UPDATE test_tsvector SET t = null WHERE t = '345 qwerty'; SELECT count(*) FROM test_tsvector WHERE a @@ to_tsquery('345&qwerty'); - count -------- - 0 -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 INSERT INTO test_tsvector (t) VALUES ('345 qwerty'); +ERROR: Unicode case folding can only be performed if server encoding is UTF8 SELECT count(*) FROM test_tsvector WHERE a @@ to_tsquery('345&qwerty'); - count -------- - 1 -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 -- Test inlining of immutable constant functions -- to_tsquery(text) is not immutable, so it won't be inlined explain (costs off) @@ -2530,35 +2129,34 @@ -- That allows us to get rid of using function scan and join at all. explain (costs off) select * from test_tsquery, to_tsquery('english', 'new') q where txtsample @@ q; - QUERY PLAN ---------------------------------------------- - Seq Scan on test_tsquery - Filter: (txtsample @@ '''new'''::tsquery) -(2 rows) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" -- test finding items in GIN's pending list create temp table pendtest (ts tsvector); create index pendtest_idx on pendtest using gin(ts); insert into pendtest values (to_tsvector('Lore ipsam')); +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" insert into pendtest values (to_tsvector('Lore ipsum')); +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" select * from pendtest where 'ipsu:*'::tsquery @@ ts; - ts --------------------- - 'ipsum':2 'lore':1 -(1 row) + ts +---- +(0 rows) select * from pendtest where 'ipsa:*'::tsquery @@ ts; - ts --------------------- - 'ipsam':2 'lore':1 -(1 row) + ts +---- +(0 rows) select * from pendtest where 'ips:*'::tsquery @@ ts; - ts --------------------- - 'ipsam':2 'lore':1 - 'ipsum':2 'lore':1 -(2 rows) + ts +---- +(0 rows) select * from pendtest where 'ipt:*'::tsquery @@ ts; ts @@ -2574,83 +2172,40 @@ create temp table phrase_index_test(fts tsvector); insert into phrase_index_test values ('A fat cat has just eaten a rat.'); insert into phrase_index_test values (to_tsvector('english', 'A fat cat has just eaten a rat.')); +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" create index phrase_index_test_idx on phrase_index_test using gin(fts); set enable_seqscan = off; select * from phrase_index_test where fts @@ phraseto_tsquery('english', 'fat cat'); - fts ------------------------------------ - 'cat':3 'eaten':6 'fat':2 'rat':8 -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" set enable_seqscan = on; -- test websearch_to_tsquery function select websearch_to_tsquery('simple', 'I have a fat:*ABCD cat'); - websearch_to_tsquery ---------------------------------------------- - 'i' & 'have' & 'a' & 'fat' & 'abcd' & 'cat' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 select websearch_to_tsquery('simple', 'orange:**AABBCCDD'); - websearch_to_tsquery ------------------------ - 'orange' & 'aabbccdd' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 select websearch_to_tsquery('simple', 'fat:A!cat:B|rat:C<'); - websearch_to_tsquery ------------------------------------------ - 'fat' & 'a' & 'cat' & 'b' & 'rat' & 'c' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 select websearch_to_tsquery('simple', 'fat:A : cat:B'); - websearch_to_tsquery ---------------------------- - 'fat' & 'a' & 'cat' & 'b' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 select websearch_to_tsquery('simple', 'fat*rat'); - websearch_to_tsquery ----------------------- - 'fat' <-> 'rat' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 select websearch_to_tsquery('simple', 'fat-rat'); - websearch_to_tsquery -------------------------------- - 'fat-rat' <-> 'fat' <-> 'rat' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 select websearch_to_tsquery('simple', 'fat_rat'); - websearch_to_tsquery ----------------------- - 'fat' <-> 'rat' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 -- weights are completely ignored select websearch_to_tsquery('simple', 'abc : def'); - websearch_to_tsquery ----------------------- - 'abc' & 'def' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 select websearch_to_tsquery('simple', 'abc:def'); - websearch_to_tsquery ----------------------- - 'abc' & 'def' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 select websearch_to_tsquery('simple', 'a:::b'); - websearch_to_tsquery ----------------------- - 'a' & 'b' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 select websearch_to_tsquery('simple', 'abc:d'); - websearch_to_tsquery ----------------------- - 'abc' & 'd' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 select websearch_to_tsquery('simple', ':'); NOTICE: text-search query contains only stop words or doesn't contain lexemes, ignored websearch_to_tsquery @@ -2660,332 +2215,173 @@ -- these operators are ignored select websearch_to_tsquery('simple', 'abc & def'); - websearch_to_tsquery ----------------------- - 'abc' & 'def' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 select websearch_to_tsquery('simple', 'abc | def'); - websearch_to_tsquery ----------------------- - 'abc' & 'def' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 select websearch_to_tsquery('simple', 'abc <-> def'); - websearch_to_tsquery ----------------------- - 'abc' & 'def' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 -- parens are ignored, too select websearch_to_tsquery('simple', 'abc (pg or class)'); - websearch_to_tsquery ------------------------- - 'abc' & 'pg' | 'class' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 select websearch_to_tsquery('simple', '(foo bar) or (ding dong)'); - websearch_to_tsquery ---------------------------------- - 'foo' & 'bar' | 'ding' & 'dong' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 -- NOT is ignored in quotes select websearch_to_tsquery('english', 'My brand new smartphone'); - websearch_to_tsquery -------------------------------- - 'brand' & 'new' & 'smartphon' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" select websearch_to_tsquery('english', 'My brand "new smartphone"'); - websearch_to_tsquery ---------------------------------- - 'brand' & 'new' <-> 'smartphon' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" select websearch_to_tsquery('english', 'My brand "new -smartphone"'); - websearch_to_tsquery ---------------------------------- - 'brand' & 'new' <-> 'smartphon' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" -- test OR operator select websearch_to_tsquery('simple', 'cat or rat'); - websearch_to_tsquery ----------------------- - 'cat' | 'rat' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 select websearch_to_tsquery('simple', 'cat OR rat'); - websearch_to_tsquery ----------------------- - 'cat' | 'rat' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 select websearch_to_tsquery('simple', 'cat "OR" rat'); - websearch_to_tsquery ----------------------- - 'cat' & 'or' & 'rat' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 select websearch_to_tsquery('simple', 'cat OR'); - websearch_to_tsquery ----------------------- - 'cat' & 'or' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 select websearch_to_tsquery('simple', 'OR rat'); - websearch_to_tsquery ----------------------- - 'or' & 'rat' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 select websearch_to_tsquery('simple', '"fat cat OR rat"'); - websearch_to_tsquery ------------------------------------- - 'fat' <-> 'cat' <-> 'or' <-> 'rat' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 select websearch_to_tsquery('simple', 'fat (cat OR rat'); - websearch_to_tsquery ------------------------ - 'fat' & 'cat' | 'rat' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 select websearch_to_tsquery('simple', 'or OR or'); - websearch_to_tsquery ----------------------- - 'or' | 'or' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 -- OR is an operator here ... select websearch_to_tsquery('simple', '"fat cat"or"fat rat"'); - websearch_to_tsquery ------------------------------------ - 'fat' <-> 'cat' | 'fat' <-> 'rat' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 select websearch_to_tsquery('simple', 'fat or(rat'); - websearch_to_tsquery ----------------------- - 'fat' | 'rat' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 select websearch_to_tsquery('simple', 'fat or)rat'); - websearch_to_tsquery ----------------------- - 'fat' | 'rat' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 select websearch_to_tsquery('simple', 'fat or&rat'); - websearch_to_tsquery ----------------------- - 'fat' | 'rat' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 select websearch_to_tsquery('simple', 'fat or|rat'); - websearch_to_tsquery ----------------------- - 'fat' | 'rat' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 select websearch_to_tsquery('simple', 'fat or!rat'); - websearch_to_tsquery ----------------------- - 'fat' | 'rat' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 select websearch_to_tsquery('simple', 'fat orrat'); - websearch_to_tsquery ----------------------- - 'fat' | 'rat' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 select websearch_to_tsquery('simple', 'fat or '); - websearch_to_tsquery ----------------------- - 'fat' & 'or' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 -- ... but not here select websearch_to_tsquery('simple', 'abc orange'); - websearch_to_tsquery ----------------------- - 'abc' & 'orange' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 select websearch_to_tsquery('simple', 'abc OR1234'); - websearch_to_tsquery ----------------------- - 'abc' & 'or1234' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 select websearch_to_tsquery('simple', 'abc or-abc'); - websearch_to_tsquery -------------------------------------- - 'abc' & 'or-abc' <-> 'or' <-> 'abc' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 select websearch_to_tsquery('simple', 'abc OR_abc'); - websearch_to_tsquery ------------------------- - 'abc' & 'or' <-> 'abc' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 -- test quotes select websearch_to_tsquery('english', '"pg_class pg'); - websearch_to_tsquery ---------------------------- - 'pg' <-> 'class' <-> 'pg' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" select websearch_to_tsquery('english', 'pg_class pg"'); - websearch_to_tsquery -------------------------- - 'pg' <-> 'class' & 'pg' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" select websearch_to_tsquery('english', '"pg_class pg"'); - websearch_to_tsquery ---------------------------- - 'pg' <-> 'class' <-> 'pg' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" select websearch_to_tsquery('english', '"pg_class : pg"'); - websearch_to_tsquery ---------------------------- - 'pg' <-> 'class' <-> 'pg' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" select websearch_to_tsquery('english', 'abc "pg_class pg"'); - websearch_to_tsquery ------------------------------------ - 'abc' & 'pg' <-> 'class' <-> 'pg' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" select websearch_to_tsquery('english', '"pg_class pg" def'); - websearch_to_tsquery ------------------------------------ - 'pg' <-> 'class' <-> 'pg' & 'def' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" select websearch_to_tsquery('english', 'abc "pg pg_class pg" def'); - websearch_to_tsquery ----------------------------------------------------- - 'abc' & 'pg' <-> 'pg' <-> 'class' <-> 'pg' & 'def' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" select websearch_to_tsquery('english', ' or "pg pg_class pg" or '); - websearch_to_tsquery ------------------------------------- - 'pg' <-> 'pg' <-> 'class' <-> 'pg' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" select websearch_to_tsquery('english', '""pg pg_class pg""'); - websearch_to_tsquery --------------------------------- - 'pg' & 'pg' <-> 'class' & 'pg' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" select websearch_to_tsquery('english', 'abc """"" def'); - websearch_to_tsquery ----------------------- - 'abc' & 'def' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" select websearch_to_tsquery('english', 'cat -"fat rat"'); - websearch_to_tsquery ------------------------------- - 'cat' & !( 'fat' <-> 'rat' ) -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" select websearch_to_tsquery('english', 'cat -"fat rat" cheese'); - websearch_to_tsquery ----------------------------------------- - 'cat' & !( 'fat' <-> 'rat' ) & 'chees' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" select websearch_to_tsquery('english', 'abc "def -"'); - websearch_to_tsquery ----------------------- - 'abc' & 'def' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" select websearch_to_tsquery('english', 'abc "def :"'); - websearch_to_tsquery ----------------------- - 'abc' & 'def' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" select websearch_to_tsquery('english', '"A fat cat" has just eaten a -rat.'); - websearch_to_tsquery ------------------------------------- - 'fat' <-> 'cat' & 'eaten' & !'rat' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" select websearch_to_tsquery('english', '"A fat cat" has just eaten OR !rat.'); - websearch_to_tsquery ------------------------------------ - 'fat' <-> 'cat' & 'eaten' | 'rat' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" select websearch_to_tsquery('english', '"A fat cat" has just (+eaten OR -rat)'); - websearch_to_tsquery ------------------------------------- - 'fat' <-> 'cat' & 'eaten' | !'rat' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" select websearch_to_tsquery('english', 'this is ----fine'); - websearch_to_tsquery ----------------------- - !!!!'fine' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" select websearch_to_tsquery('english', '(()) )))) this ||| is && -fine, "dear friend" OR good'); - websearch_to_tsquery ----------------------------------------- - !'fine' & 'dear' <-> 'friend' | 'good' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" select websearch_to_tsquery('english', 'an old <-> cat " is fine &&& too'); - websearch_to_tsquery ------------------------- - 'old' & 'cat' & 'fine' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" select websearch_to_tsquery('english', '"A the" OR just on'); -NOTICE: text-search query contains only stop words or doesn't contain lexemes, ignored - websearch_to_tsquery ----------------------- - -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" select websearch_to_tsquery('english', '"a fat cat" ate a rat'); - websearch_to_tsquery ---------------------------------- - 'fat' <-> 'cat' & 'ate' & 'rat' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" select to_tsvector('english', 'A fat cat ate a rat') @@ websearch_to_tsquery('english', '"a fat cat" ate a rat'); - ?column? ----------- - t -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" select to_tsvector('english', 'A fat grey cat ate a rat') @@ websearch_to_tsquery('english', '"a fat cat" ate a rat'); - ?column? ----------- - f -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" -- cases handled by gettoken_tsvector() select websearch_to_tsquery(''''); NOTICE: text-search query contains only stop words or doesn't contain lexemes, ignored @@ -2995,17 +2391,13 @@ (1 row) select websearch_to_tsquery('''abc''''def'''); - websearch_to_tsquery ----------------------- - 'abc' <-> 'def' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" select websearch_to_tsquery('\abc'); - websearch_to_tsquery ----------------------- - 'abc' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" select websearch_to_tsquery('\'); NOTICE: text-search query contains only stop words or doesn't contain lexemes, ignored websearch_to_tsquery diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/tsdicts.out /tmp/cirrus-ci-build/build-32/testrun/regress/regress/results/tsdicts.out --- /tmp/cirrus-ci-build/src/test/regress/expected/tsdicts.out 2026-03-01 14:40:43.844889809 +0000 +++ /tmp/cirrus-ci-build/build-32/testrun/regress/regress/results/tsdicts.out 2026-03-01 14:51:12.880463709 +0000 @@ -5,505 +5,394 @@ DictFile=ispell_sample, AffFile=ispell_sample ); +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/ispell_sample.dict": "book/GJUS +" SELECT ts_lexize('ispell', 'skies'); - ts_lexize ------------ - {sky} -(1 row) - +ERROR: text search dictionary "ispell" does not exist +LINE 1: SELECT ts_lexize('ispell', 'skies'); + ^ SELECT ts_lexize('ispell', 'bookings'); - ts_lexize ----------------- - {booking,book} -(1 row) - +ERROR: text search dictionary "ispell" does not exist +LINE 1: SELECT ts_lexize('ispell', 'bookings'); + ^ SELECT ts_lexize('ispell', 'booking'); - ts_lexize ----------------- - {booking,book} -(1 row) - +ERROR: text search dictionary "ispell" does not exist +LINE 1: SELECT ts_lexize('ispell', 'booking'); + ^ SELECT ts_lexize('ispell', 'foot'); - ts_lexize ------------ - {foot} -(1 row) - +ERROR: text search dictionary "ispell" does not exist +LINE 1: SELECT ts_lexize('ispell', 'foot'); + ^ SELECT ts_lexize('ispell', 'foots'); - ts_lexize ------------ - {foot} -(1 row) - +ERROR: text search dictionary "ispell" does not exist +LINE 1: SELECT ts_lexize('ispell', 'foots'); + ^ SELECT ts_lexize('ispell', 'rebookings'); - ts_lexize ----------------- - {booking,book} -(1 row) - +ERROR: text search dictionary "ispell" does not exist +LINE 1: SELECT ts_lexize('ispell', 'rebookings'); + ^ SELECT ts_lexize('ispell', 'rebooking'); - ts_lexize ----------------- - {booking,book} -(1 row) - +ERROR: text search dictionary "ispell" does not exist +LINE 1: SELECT ts_lexize('ispell', 'rebooking'); + ^ SELECT ts_lexize('ispell', 'rebook'); - ts_lexize ------------ - -(1 row) - +ERROR: text search dictionary "ispell" does not exist +LINE 1: SELECT ts_lexize('ispell', 'rebook'); + ^ SELECT ts_lexize('ispell', 'unbookings'); - ts_lexize ------------ - {book} -(1 row) - +ERROR: text search dictionary "ispell" does not exist +LINE 1: SELECT ts_lexize('ispell', 'unbookings'); + ^ SELECT ts_lexize('ispell', 'unbooking'); - ts_lexize ------------ - {book} -(1 row) - +ERROR: text search dictionary "ispell" does not exist +LINE 1: SELECT ts_lexize('ispell', 'unbooking'); + ^ SELECT ts_lexize('ispell', 'unbook'); - ts_lexize ------------ - {book} -(1 row) - +ERROR: text search dictionary "ispell" does not exist +LINE 1: SELECT ts_lexize('ispell', 'unbook'); + ^ SELECT ts_lexize('ispell', 'footklubber'); - ts_lexize ----------------- - {foot,klubber} -(1 row) - +ERROR: text search dictionary "ispell" does not exist +LINE 1: SELECT ts_lexize('ispell', 'footklubber'); + ^ SELECT ts_lexize('ispell', 'footballklubber'); - ts_lexize ------------------------------------------------------- - {footballklubber,foot,ball,klubber,football,klubber} -(1 row) - +ERROR: text search dictionary "ispell" does not exist +LINE 1: SELECT ts_lexize('ispell', 'footballklubber'); + ^ SELECT ts_lexize('ispell', 'ballyklubber'); - ts_lexize ----------------- - {ball,klubber} -(1 row) - +ERROR: text search dictionary "ispell" does not exist +LINE 1: SELECT ts_lexize('ispell', 'ballyklubber'); + ^ SELECT ts_lexize('ispell', 'footballyklubber'); - ts_lexize ---------------------- - {foot,ball,klubber} -(1 row) - +ERROR: text search dictionary "ispell" does not exist +LINE 1: SELECT ts_lexize('ispell', 'footballyklubber'); + ^ -- Test ISpell dictionary with hunspell affix file CREATE TEXT SEARCH DICTIONARY hunspell ( Template=ispell, DictFile=ispell_sample, AffFile=hunspell_sample ); +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/ispell_sample.dict": "book/GJUS +" SELECT ts_lexize('hunspell', 'skies'); - ts_lexize ------------ - {sky} -(1 row) - +ERROR: text search dictionary "hunspell" does not exist +LINE 1: SELECT ts_lexize('hunspell', 'skies'); + ^ SELECT ts_lexize('hunspell', 'bookings'); - ts_lexize ----------------- - {booking,book} -(1 row) - +ERROR: text search dictionary "hunspell" does not exist +LINE 1: SELECT ts_lexize('hunspell', 'bookings'); + ^ SELECT ts_lexize('hunspell', 'booking'); - ts_lexize ----------------- - {booking,book} -(1 row) - +ERROR: text search dictionary "hunspell" does not exist +LINE 1: SELECT ts_lexize('hunspell', 'booking'); + ^ SELECT ts_lexize('hunspell', 'foot'); - ts_lexize ------------ - {foot} -(1 row) - +ERROR: text search dictionary "hunspell" does not exist +LINE 1: SELECT ts_lexize('hunspell', 'foot'); + ^ SELECT ts_lexize('hunspell', 'foots'); - ts_lexize ------------ - {foot} -(1 row) - +ERROR: text search dictionary "hunspell" does not exist +LINE 1: SELECT ts_lexize('hunspell', 'foots'); + ^ SELECT ts_lexize('hunspell', 'rebookings'); - ts_lexize ----------------- - {booking,book} -(1 row) - +ERROR: text search dictionary "hunspell" does not exist +LINE 1: SELECT ts_lexize('hunspell', 'rebookings'); + ^ SELECT ts_lexize('hunspell', 'rebooking'); - ts_lexize ----------------- - {booking,book} -(1 row) - +ERROR: text search dictionary "hunspell" does not exist +LINE 1: SELECT ts_lexize('hunspell', 'rebooking'); + ^ SELECT ts_lexize('hunspell', 'rebook'); - ts_lexize ------------ - -(1 row) - +ERROR: text search dictionary "hunspell" does not exist +LINE 1: SELECT ts_lexize('hunspell', 'rebook'); + ^ SELECT ts_lexize('hunspell', 'unbookings'); - ts_lexize ------------ - {book} -(1 row) - +ERROR: text search dictionary "hunspell" does not exist +LINE 1: SELECT ts_lexize('hunspell', 'unbookings'); + ^ SELECT ts_lexize('hunspell', 'unbooking'); - ts_lexize ------------ - {book} -(1 row) - +ERROR: text search dictionary "hunspell" does not exist +LINE 1: SELECT ts_lexize('hunspell', 'unbooking'); + ^ SELECT ts_lexize('hunspell', 'unbook'); - ts_lexize ------------ - {book} -(1 row) - +ERROR: text search dictionary "hunspell" does not exist +LINE 1: SELECT ts_lexize('hunspell', 'unbook'); + ^ SELECT ts_lexize('hunspell', 'footklubber'); - ts_lexize ----------------- - {foot,klubber} -(1 row) - +ERROR: text search dictionary "hunspell" does not exist +LINE 1: SELECT ts_lexize('hunspell', 'footklubber'); + ^ SELECT ts_lexize('hunspell', 'footballklubber'); - ts_lexize ------------------------------------------------------- - {footballklubber,foot,ball,klubber,football,klubber} -(1 row) - +ERROR: text search dictionary "hunspell" does not exist +LINE 1: SELECT ts_lexize('hunspell', 'footballklubber'); + ^ SELECT ts_lexize('hunspell', 'ballyklubber'); - ts_lexize ----------------- - {ball,klubber} -(1 row) - +ERROR: text search dictionary "hunspell" does not exist +LINE 1: SELECT ts_lexize('hunspell', 'ballyklubber'); + ^ SELECT ts_lexize('hunspell', 'footballyklubber'); - ts_lexize ---------------------- - {foot,ball,klubber} -(1 row) - +ERROR: text search dictionary "hunspell" does not exist +LINE 1: SELECT ts_lexize('hunspell', 'footballyklubber'); + ^ -- Test ISpell dictionary with hunspell affix file with FLAG long parameter CREATE TEXT SEARCH DICTIONARY hunspell_long ( Template=ispell, DictFile=hunspell_sample_long, AffFile=hunspell_sample_long ); +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/hunspell_sample_long.dict": "book/3 +" SELECT ts_lexize('hunspell_long', 'skies'); - ts_lexize ------------ - {sky} -(1 row) - +ERROR: text search dictionary "hunspell_long" does not exist +LINE 1: SELECT ts_lexize('hunspell_long', 'skies'); + ^ SELECT ts_lexize('hunspell_long', 'bookings'); - ts_lexize ----------------- - {booking,book} -(1 row) - +ERROR: text search dictionary "hunspell_long" does not exist +LINE 1: SELECT ts_lexize('hunspell_long', 'bookings'); + ^ SELECT ts_lexize('hunspell_long', 'booking'); - ts_lexize ----------------- - {booking,book} -(1 row) - +ERROR: text search dictionary "hunspell_long" does not exist +LINE 1: SELECT ts_lexize('hunspell_long', 'booking'); + ^ SELECT ts_lexize('hunspell_long', 'foot'); - ts_lexize ------------ - {foot} -(1 row) - +ERROR: text search dictionary "hunspell_long" does not exist +LINE 1: SELECT ts_lexize('hunspell_long', 'foot'); + ^ SELECT ts_lexize('hunspell_long', 'foots'); - ts_lexize ------------ - {foot} -(1 row) - +ERROR: text search dictionary "hunspell_long" does not exist +LINE 1: SELECT ts_lexize('hunspell_long', 'foots'); + ^ SELECT ts_lexize('hunspell_long', 'rebookings'); - ts_lexize ----------------- - {booking,book} -(1 row) - +ERROR: text search dictionary "hunspell_long" does not exist +LINE 1: SELECT ts_lexize('hunspell_long', 'rebookings'); + ^ SELECT ts_lexize('hunspell_long', 'rebooking'); - ts_lexize ----------------- - {booking,book} -(1 row) - +ERROR: text search dictionary "hunspell_long" does not exist +LINE 1: SELECT ts_lexize('hunspell_long', 'rebooking'); + ^ SELECT ts_lexize('hunspell_long', 'rebook'); - ts_lexize ------------ - -(1 row) - +ERROR: text search dictionary "hunspell_long" does not exist +LINE 1: SELECT ts_lexize('hunspell_long', 'rebook'); + ^ SELECT ts_lexize('hunspell_long', 'unbookings'); - ts_lexize ------------ - {book} -(1 row) - +ERROR: text search dictionary "hunspell_long" does not exist +LINE 1: SELECT ts_lexize('hunspell_long', 'unbookings'); + ^ SELECT ts_lexize('hunspell_long', 'unbooking'); - ts_lexize ------------ - {book} -(1 row) - +ERROR: text search dictionary "hunspell_long" does not exist +LINE 1: SELECT ts_lexize('hunspell_long', 'unbooking'); + ^ SELECT ts_lexize('hunspell_long', 'unbook'); - ts_lexize ------------ - {book} -(1 row) - +ERROR: text search dictionary "hunspell_long" does not exist +LINE 1: SELECT ts_lexize('hunspell_long', 'unbook'); + ^ SELECT ts_lexize('hunspell_long', 'booked'); - ts_lexize ------------ - {book} -(1 row) - +ERROR: text search dictionary "hunspell_long" does not exist +LINE 1: SELECT ts_lexize('hunspell_long', 'booked'); + ^ SELECT ts_lexize('hunspell_long', 'footklubber'); - ts_lexize ----------------- - {foot,klubber} -(1 row) - +ERROR: text search dictionary "hunspell_long" does not exist +LINE 1: SELECT ts_lexize('hunspell_long', 'footklubber'); + ^ SELECT ts_lexize('hunspell_long', 'footballklubber'); - ts_lexize ------------------------------------------------------- - {footballklubber,foot,ball,klubber,football,klubber} -(1 row) - +ERROR: text search dictionary "hunspell_long" does not exist +LINE 1: SELECT ts_lexize('hunspell_long', 'footballklubber'); + ^ SELECT ts_lexize('hunspell_long', 'ballyklubber'); - ts_lexize ----------------- - {ball,klubber} -(1 row) - +ERROR: text search dictionary "hunspell_long" does not exist +LINE 1: SELECT ts_lexize('hunspell_long', 'ballyklubber'); + ^ SELECT ts_lexize('hunspell_long', 'ballsklubber'); - ts_lexize ----------------- - {ball,klubber} -(1 row) - +ERROR: text search dictionary "hunspell_long" does not exist +LINE 1: SELECT ts_lexize('hunspell_long', 'ballsklubber'); + ^ SELECT ts_lexize('hunspell_long', 'footballyklubber'); - ts_lexize ---------------------- - {foot,ball,klubber} -(1 row) - +ERROR: text search dictionary "hunspell_long" does not exist +LINE 1: SELECT ts_lexize('hunspell_long', 'footballyklubber'); + ^ SELECT ts_lexize('hunspell_long', 'ex-machina'); - ts_lexize ---------------- - {ex-,machina} -(1 row) - +ERROR: text search dictionary "hunspell_long" does not exist +LINE 1: SELECT ts_lexize('hunspell_long', 'ex-machina'); + ^ -- Test ISpell dictionary with hunspell affix file with FLAG num parameter CREATE TEXT SEARCH DICTIONARY hunspell_num ( Template=ispell, DictFile=hunspell_sample_num, AffFile=hunspell_sample_num ); +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/hunspell_sample_num.dict": "book/302,301,202,303 +" SELECT ts_lexize('hunspell_num', 'skies'); - ts_lexize ------------ - {sky} -(1 row) - +ERROR: text search dictionary "hunspell_num" does not exist +LINE 1: SELECT ts_lexize('hunspell_num', 'skies'); + ^ SELECT ts_lexize('hunspell_num', 'sk'); - ts_lexize ------------ - {sky} -(1 row) - +ERROR: text search dictionary "hunspell_num" does not exist +LINE 1: SELECT ts_lexize('hunspell_num', 'sk'); + ^ SELECT ts_lexize('hunspell_num', 'bookings'); - ts_lexize ----------------- - {booking,book} -(1 row) - +ERROR: text search dictionary "hunspell_num" does not exist +LINE 1: SELECT ts_lexize('hunspell_num', 'bookings'); + ^ SELECT ts_lexize('hunspell_num', 'booking'); - ts_lexize ----------------- - {booking,book} -(1 row) - +ERROR: text search dictionary "hunspell_num" does not exist +LINE 1: SELECT ts_lexize('hunspell_num', 'booking'); + ^ SELECT ts_lexize('hunspell_num', 'foot'); - ts_lexize ------------ - {foot} -(1 row) - +ERROR: text search dictionary "hunspell_num" does not exist +LINE 1: SELECT ts_lexize('hunspell_num', 'foot'); + ^ SELECT ts_lexize('hunspell_num', 'foots'); - ts_lexize ------------ - {foot} -(1 row) - +ERROR: text search dictionary "hunspell_num" does not exist +LINE 1: SELECT ts_lexize('hunspell_num', 'foots'); + ^ SELECT ts_lexize('hunspell_num', 'rebookings'); - ts_lexize ----------------- - {booking,book} -(1 row) - +ERROR: text search dictionary "hunspell_num" does not exist +LINE 1: SELECT ts_lexize('hunspell_num', 'rebookings'); + ^ SELECT ts_lexize('hunspell_num', 'rebooking'); - ts_lexize ----------------- - {booking,book} -(1 row) - +ERROR: text search dictionary "hunspell_num" does not exist +LINE 1: SELECT ts_lexize('hunspell_num', 'rebooking'); + ^ SELECT ts_lexize('hunspell_num', 'rebook'); - ts_lexize ------------ - -(1 row) - +ERROR: text search dictionary "hunspell_num" does not exist +LINE 1: SELECT ts_lexize('hunspell_num', 'rebook'); + ^ SELECT ts_lexize('hunspell_num', 'unbookings'); - ts_lexize ------------ - {book} -(1 row) - +ERROR: text search dictionary "hunspell_num" does not exist +LINE 1: SELECT ts_lexize('hunspell_num', 'unbookings'); + ^ SELECT ts_lexize('hunspell_num', 'unbooking'); - ts_lexize ------------ - {book} -(1 row) - +ERROR: text search dictionary "hunspell_num" does not exist +LINE 1: SELECT ts_lexize('hunspell_num', 'unbooking'); + ^ SELECT ts_lexize('hunspell_num', 'unbook'); - ts_lexize ------------ - {book} -(1 row) - +ERROR: text search dictionary "hunspell_num" does not exist +LINE 1: SELECT ts_lexize('hunspell_num', 'unbook'); + ^ SELECT ts_lexize('hunspell_num', 'booked'); - ts_lexize ------------ - {book} -(1 row) - +ERROR: text search dictionary "hunspell_num" does not exist +LINE 1: SELECT ts_lexize('hunspell_num', 'booked'); + ^ SELECT ts_lexize('hunspell_num', 'footklubber'); - ts_lexize ----------------- - {foot,klubber} -(1 row) - +ERROR: text search dictionary "hunspell_num" does not exist +LINE 1: SELECT ts_lexize('hunspell_num', 'footklubber'); + ^ SELECT ts_lexize('hunspell_num', 'footballklubber'); - ts_lexize ------------------------------------------------------- - {footballklubber,foot,ball,klubber,football,klubber} -(1 row) - +ERROR: text search dictionary "hunspell_num" does not exist +LINE 1: SELECT ts_lexize('hunspell_num', 'footballklubber'); + ^ SELECT ts_lexize('hunspell_num', 'ballyklubber'); - ts_lexize ----------------- - {ball,klubber} -(1 row) - +ERROR: text search dictionary "hunspell_num" does not exist +LINE 1: SELECT ts_lexize('hunspell_num', 'ballyklubber'); + ^ SELECT ts_lexize('hunspell_num', 'footballyklubber'); - ts_lexize ---------------------- - {foot,ball,klubber} -(1 row) - +ERROR: text search dictionary "hunspell_num" does not exist +LINE 1: SELECT ts_lexize('hunspell_num', 'footballyklubber'); + ^ -- Test suitability of affix and dict files CREATE TEXT SEARCH DICTIONARY hunspell_err ( Template=ispell, DictFile=ispell_sample, AffFile=hunspell_sample_long ); -ERROR: invalid affix alias "GJUS" +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/ispell_sample.dict": "book/GJUS +" CREATE TEXT SEARCH DICTIONARY hunspell_err ( Template=ispell, DictFile=ispell_sample, AffFile=hunspell_sample_num ); -ERROR: invalid affix flag "SZ\" +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/ispell_sample.dict": "book/GJUS +" CREATE TEXT SEARCH DICTIONARY hunspell_invalid_1 ( Template=ispell, DictFile=hunspell_sample_long, AffFile=ispell_sample ); +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/hunspell_sample_long.dict": "book/3 +" CREATE TEXT SEARCH DICTIONARY hunspell_invalid_2 ( Template=ispell, DictFile=hunspell_sample_long, AffFile=hunspell_sample_num ); +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/hunspell_sample_long.dict": "book/3 +" CREATE TEXT SEARCH DICTIONARY hunspell_invalid_3 ( Template=ispell, DictFile=hunspell_sample_num, AffFile=ispell_sample ); +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/hunspell_sample_num.dict": "book/302,301,202,303 +" CREATE TEXT SEARCH DICTIONARY hunspell_err ( Template=ispell, DictFile=hunspell_sample_num, AffFile=hunspell_sample_long ); -ERROR: invalid affix alias "302,301,202,303" +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/hunspell_sample_num.dict": "book/302,301,202,303 +" -- Synonym dictionary CREATE TEXT SEARCH DICTIONARY synonym ( Template=synonym, Synonyms=synonym_sample ); +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/synonym_sample.syn": "postgres pgsql +" SELECT ts_lexize('synonym', 'PoStGrEs'); - ts_lexize ------------ - {pgsql} -(1 row) - +ERROR: text search dictionary "synonym" does not exist +LINE 1: SELECT ts_lexize('synonym', 'PoStGrEs'); + ^ SELECT ts_lexize('synonym', 'Gogle'); - ts_lexize ------------ - {googl} -(1 row) - +ERROR: text search dictionary "synonym" does not exist +LINE 1: SELECT ts_lexize('synonym', 'Gogle'); + ^ SELECT ts_lexize('synonym', 'indices'); - ts_lexize ------------ - {index} -(1 row) - +ERROR: text search dictionary "synonym" does not exist +LINE 1: SELECT ts_lexize('synonym', 'indices'); + ^ -- test altering boolean parameters SELECT dictinitoption FROM pg_ts_dict WHERE dictname = 'synonym'; - dictinitoption ------------------------------ - synonyms = 'synonym_sample' -(1 row) + dictinitoption +---------------- +(0 rows) ALTER TEXT SEARCH DICTIONARY synonym (CaseSensitive = 1); +ERROR: text search dictionary "synonym" does not exist SELECT ts_lexize('synonym', 'PoStGrEs'); - ts_lexize ------------ - -(1 row) - +ERROR: text search dictionary "synonym" does not exist +LINE 1: SELECT ts_lexize('synonym', 'PoStGrEs'); + ^ SELECT dictinitoption FROM pg_ts_dict WHERE dictname = 'synonym'; - dictinitoption ------------------------------------------------- - synonyms = 'synonym_sample', casesensitive = 1 -(1 row) + dictinitoption +---------------- +(0 rows) ALTER TEXT SEARCH DICTIONARY synonym (CaseSensitive = 2); -- fail -ERROR: casesensitive requires a Boolean value +ERROR: text search dictionary "synonym" does not exist ALTER TEXT SEARCH DICTIONARY synonym (CaseSensitive = off); +ERROR: text search dictionary "synonym" does not exist SELECT ts_lexize('synonym', 'PoStGrEs'); - ts_lexize ------------ - {pgsql} -(1 row) - +ERROR: text search dictionary "synonym" does not exist +LINE 1: SELECT ts_lexize('synonym', 'PoStGrEs'); + ^ SELECT dictinitoption FROM pg_ts_dict WHERE dictname = 'synonym'; - dictinitoption ----------------------------------------------------- - synonyms = 'synonym_sample', casesensitive = 'off' -(1 row) + dictinitoption +---------------- +(0 rows) -- Create and simple test thesaurus dictionary -- More tests in configuration checks because ts_lexize() @@ -513,12 +402,13 @@ DictFile=thesaurus_sample, Dictionary=english_stem ); +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" SELECT ts_lexize('thesaurus', 'one'); - ts_lexize ------------ - {1} -(1 row) - +ERROR: text search dictionary "thesaurus" does not exist +LINE 1: SELECT ts_lexize('thesaurus', 'one'); + ^ -- Test ispell dictionary in configuration CREATE TEXT SEARCH CONFIGURATION ispell_tst ( COPY=english @@ -526,102 +416,78 @@ ALTER TEXT SEARCH CONFIGURATION ispell_tst ALTER MAPPING FOR word, numword, asciiword, hword, numhword, asciihword, hword_part, hword_numpart, hword_asciipart WITH ispell, english_stem; +ERROR: text search dictionary "ispell" does not exist SELECT to_tsvector('ispell_tst', 'Booking the skies after rebookings for footballklubber from a foot'); - to_tsvector ----------------------------------------------------------------------------------------------------- - 'ball':7 'book':1,5 'booking':1,5 'foot':7,10 'football':7 'footballklubber':7 'klubber':7 'sky':3 -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" SELECT to_tsquery('ispell_tst', 'footballklubber'); - to_tsquery --------------------------------------------------------------------------- - 'footballklubber' | 'foot' & 'ball' & 'klubber' | 'football' & 'klubber' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" SELECT to_tsquery('ispell_tst', 'footballyklubber:b & rebookings:A & sky'); - to_tsquery ------------------------------------------------------------------------- - 'foot':B & 'ball':B & 'klubber':B & ( 'booking':A | 'book':A ) & 'sky' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" -- Test ispell dictionary with hunspell affix in configuration CREATE TEXT SEARCH CONFIGURATION hunspell_tst ( COPY=ispell_tst ); ALTER TEXT SEARCH CONFIGURATION hunspell_tst ALTER MAPPING REPLACE ispell WITH hunspell; +ERROR: text search dictionary "ispell" does not exist SELECT to_tsvector('hunspell_tst', 'Booking the skies after rebookings for footballklubber from a foot'); - to_tsvector ----------------------------------------------------------------------------------------------------- - 'ball':7 'book':1,5 'booking':1,5 'foot':7,10 'football':7 'footballklubber':7 'klubber':7 'sky':3 -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" SELECT to_tsquery('hunspell_tst', 'footballklubber'); - to_tsquery --------------------------------------------------------------------------- - 'footballklubber' | 'foot' & 'ball' & 'klubber' | 'football' & 'klubber' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" SELECT to_tsquery('hunspell_tst', 'footballyklubber:b & rebookings:A & sky'); - to_tsquery ------------------------------------------------------------------------- - 'foot':B & 'ball':B & 'klubber':B & ( 'booking':A | 'book':A ) & 'sky' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" SELECT to_tsquery('hunspell_tst', 'footballyklubber:b <-> sky'); - to_tsquery -------------------------------------------------- - ( 'foot':B & 'ball':B & 'klubber':B ) <-> 'sky' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" SELECT phraseto_tsquery('hunspell_tst', 'footballyklubber sky'); - phraseto_tsquery -------------------------------------------- - ( 'foot' & 'ball' & 'klubber' ) <-> 'sky' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" -- Test ispell dictionary with hunspell affix with FLAG long in configuration ALTER TEXT SEARCH CONFIGURATION hunspell_tst ALTER MAPPING REPLACE hunspell WITH hunspell_long; +ERROR: text search dictionary "hunspell" does not exist SELECT to_tsvector('hunspell_tst', 'Booking the skies after rebookings for footballklubber from a foot'); - to_tsvector ----------------------------------------------------------------------------------------------------- - 'ball':7 'book':1,5 'booking':1,5 'foot':7,10 'football':7 'footballklubber':7 'klubber':7 'sky':3 -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" SELECT to_tsquery('hunspell_tst', 'footballklubber'); - to_tsquery --------------------------------------------------------------------------- - 'footballklubber' | 'foot' & 'ball' & 'klubber' | 'football' & 'klubber' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" SELECT to_tsquery('hunspell_tst', 'footballyklubber:b & rebookings:A & sky'); - to_tsquery ------------------------------------------------------------------------- - 'foot':B & 'ball':B & 'klubber':B & ( 'booking':A | 'book':A ) & 'sky' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" -- Test ispell dictionary with hunspell affix with FLAG num in configuration ALTER TEXT SEARCH CONFIGURATION hunspell_tst ALTER MAPPING REPLACE hunspell_long WITH hunspell_num; +ERROR: text search dictionary "hunspell_long" does not exist SELECT to_tsvector('hunspell_tst', 'Booking the skies after rebookings for footballklubber from a foot'); - to_tsvector ----------------------------------------------------------------------------------------------------- - 'ball':7 'book':1,5 'booking':1,5 'foot':7,10 'football':7 'footballklubber':7 'klubber':7 'sky':3 -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" SELECT to_tsquery('hunspell_tst', 'footballklubber'); - to_tsquery --------------------------------------------------------------------------- - 'footballklubber' | 'foot' & 'ball' & 'klubber' | 'football' & 'klubber' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" SELECT to_tsquery('hunspell_tst', 'footballyklubber:b & rebookings:A & sky'); - to_tsquery ------------------------------------------------------------------------- - 'foot':B & 'ball':B & 'klubber':B & ( 'booking':A | 'book':A ) & 'sky' -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" -- Test synonym dictionary in configuration CREATE TEXT SEARCH CONFIGURATION synonym_tst ( COPY=english @@ -629,30 +495,23 @@ ALTER TEXT SEARCH CONFIGURATION synonym_tst ALTER MAPPING FOR asciiword, hword_asciipart, asciihword WITH synonym, english_stem; +ERROR: text search dictionary "synonym" does not exist SELECT to_tsvector('synonym_tst', 'Postgresql is often called as postgres or pgsql and pronounced as postgre'); - to_tsvector ---------------------------------------------------- - 'call':4 'often':3 'pgsql':1,6,8,12 'pronounc':10 -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" SELECT to_tsvector('synonym_tst', 'Most common mistake is to write Gogle instead of Google'); - to_tsvector ----------------------------------------------------------- - 'common':2 'googl':7,10 'instead':8 'mistak':3 'write':6 -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" SELECT to_tsvector('synonym_tst', 'Indexes or indices - Which is right plural form of index?'); - to_tsvector ----------------------------------------------- - 'form':8 'index':1,3,10 'plural':7 'right':6 -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" SELECT to_tsquery('synonym_tst', 'Index & indices'); - to_tsquery ---------------------- - 'index' & 'index':* -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" -- test thesaurus in configuration -- see thesaurus_sample.ths to understand 'odd' resulting tsvector CREATE TEXT SEARCH CONFIGURATION thesaurus_tst ( @@ -661,24 +520,19 @@ ALTER TEXT SEARCH CONFIGURATION thesaurus_tst ALTER MAPPING FOR asciiword, hword_asciipart, asciihword WITH synonym, thesaurus, english_stem; +ERROR: text search dictionary "synonym" does not exist SELECT to_tsvector('thesaurus_tst', 'one postgres one two one two three one'); - to_tsvector ----------------------------------- - '1':1,5 '12':3 '123':4 'pgsql':2 -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" SELECT to_tsvector('thesaurus_tst', 'Supernovae star is very new star and usually called supernovae (abbreviation SN)'); - to_tsvector --------------------------------------------------------------- - 'abbrevi':10 'call':8 'new':4 'sn':1,9,11 'star':5 'usual':7 -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" SELECT to_tsvector('thesaurus_tst', 'Booking tickets is looking like a booking a tickets'); - to_tsvector -------------------------------------------------------- - 'card':3,10 'invit':2,9 'like':6 'look':5 'order':1,8 -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" -- invalid: non-lowercase quoted identifiers CREATE TEXT SEARCH DICTIONARY tsdict_case ( @@ -692,6 +546,7 @@ -- Overridden mapping change with duplicated tokens. ALTER TEXT SEARCH CONFIGURATION dummy_tst ALTER MAPPING FOR word, word WITH ispell; +ERROR: text search dictionary "ispell" does not exist -- Not a token supported by the configuration's parser, fails. ALTER TEXT SEARCH CONFIGURATION dummy_tst DROP MAPPING FOR not_a_token, not_a_token; @@ -716,6 +571,7 @@ -- Re-add mapping, with duplicated tokens supported by the parser. ALTER TEXT SEARCH CONFIGURATION dummy_tst ADD MAPPING FOR word, word WITH ispell; +ERROR: text search dictionary "ispell" does not exist -- Not a token supported by the configuration's parser, fails. ALTER TEXT SEARCH CONFIGURATION dummy_tst ADD MAPPING FOR not_a_token WITH ispell; diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/json.out /tmp/cirrus-ci-build/build-32/testrun/regress/regress/results/json.out --- /tmp/cirrus-ci-build/src/test/regress/expected/json.out 2026-03-01 14:40:43.784889811 +0000 +++ /tmp/cirrus-ci-build/build-32/testrun/regress/regress/results/json.out 2026-03-01 14:51:19.536463296 +0000 @@ -2556,105 +2556,67 @@ -- json to tsvector select to_tsvector('{"a": "aaa bbb ddd ccc", "b": ["eee fff ggg"], "c": {"d": "hhh iii"}}'::json); - to_tsvector ---------------------------------------------------------------------------- - 'aaa':1 'bbb':2 'ccc':4 'ddd':3 'eee':6 'fff':7 'ggg':8 'hhh':10 'iii':11 -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" -- json to tsvector with config select to_tsvector('simple', '{"a": "aaa bbb ddd ccc", "b": ["eee fff ggg"], "c": {"d": "hhh iii"}}'::json); - to_tsvector ---------------------------------------------------------------------------- - 'aaa':1 'bbb':2 'ccc':4 'ddd':3 'eee':6 'fff':7 'ggg':8 'hhh':10 'iii':11 -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 -- json to tsvector with stop words select to_tsvector('english', '{"a": "aaa in bbb ddd ccc", "b": ["the eee fff ggg"], "c": {"d": "hhh. iii"}}'::json); - to_tsvector ----------------------------------------------------------------------------- - 'aaa':1 'bbb':3 'ccc':5 'ddd':4 'eee':8 'fff':9 'ggg':10 'hhh':12 'iii':13 -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" -- json to tsvector with numeric values select to_tsvector('english', '{"a": "aaa in bbb ddd ccc", "b": 123, "c": 456}'::json); - to_tsvector ---------------------------------- - 'aaa':1 'bbb':3 'ccc':5 'ddd':4 -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" -- json_to_tsvector select json_to_tsvector('english', '{"a": "aaa in bbb", "b": 123, "c": 456, "d": true, "f": false, "g": null}'::json, '"all"'); - json_to_tsvector ----------------------------------------------------------------------------------------- - '123':8 '456':12 'aaa':2 'b':6 'bbb':4 'c':10 'd':14 'f':18 'fals':20 'g':22 'true':16 -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" select json_to_tsvector('english', '{"a": "aaa in bbb", "b": 123, "c": 456, "d": true, "f": false, "g": null}'::json, '"key"'); - json_to_tsvector --------------------------------- - 'b':2 'c':4 'd':6 'f':8 'g':10 -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" select json_to_tsvector('english', '{"a": "aaa in bbb", "b": 123, "c": 456, "d": true, "f": false, "g": null}'::json, '"string"'); - json_to_tsvector ------------------- - 'aaa':1 'bbb':3 -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" select json_to_tsvector('english', '{"a": "aaa in bbb", "b": 123, "c": 456, "d": true, "f": false, "g": null}'::json, '"numeric"'); - json_to_tsvector ------------------- - '123':1 '456':3 -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 select json_to_tsvector('english', '{"a": "aaa in bbb", "b": 123, "c": 456, "d": true, "f": false, "g": null}'::json, '"boolean"'); - json_to_tsvector -------------------- - 'fals':3 'true':1 -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" select json_to_tsvector('english', '{"a": "aaa in bbb", "b": 123, "c": 456, "d": true, "f": false, "g": null}'::json, '["string", "numeric"]'); - json_to_tsvector ---------------------------------- - '123':5 '456':7 'aaa':1 'bbb':3 -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" select json_to_tsvector('english', '{"a": "aaa in bbb", "b": 123, "c": 456, "d": true, "f": false, "g": null}'::json, '"all"'); - json_to_tsvector ----------------------------------------------------------------------------------------- - '123':8 '456':12 'aaa':2 'b':6 'bbb':4 'c':10 'd':14 'f':18 'fals':20 'g':22 'true':16 -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" select json_to_tsvector('english', '{"a": "aaa in bbb", "b": 123, "c": 456, "d": true, "f": false, "g": null}'::json, '"key"'); - json_to_tsvector --------------------------------- - 'b':2 'c':4 'd':6 'f':8 'g':10 -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" select json_to_tsvector('english', '{"a": "aaa in bbb", "b": 123, "c": 456, "d": true, "f": false, "g": null}'::json, '"string"'); - json_to_tsvector ------------------- - 'aaa':1 'bbb':3 -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" select json_to_tsvector('english', '{"a": "aaa in bbb", "b": 123, "c": 456, "d": true, "f": false, "g": null}'::json, '"numeric"'); - json_to_tsvector ------------------- - '123':1 '456':3 -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 select json_to_tsvector('english', '{"a": "aaa in bbb", "b": 123, "c": 456, "d": true, "f": false, "g": null}'::json, '"boolean"'); - json_to_tsvector -------------------- - 'fals':3 'true':1 -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" select json_to_tsvector('english', '{"a": "aaa in bbb", "b": 123, "c": 456, "d": true, "f": false, "g": null}'::json, '["string", "numeric"]'); - json_to_tsvector ---------------------------------- - '123':5 '456':7 'aaa':1 'bbb':3 -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" -- to_tsvector corner cases select to_tsvector('""'::json); to_tsvector @@ -2724,29 +2686,21 @@ HINT: Possible values are: "string", "numeric", "boolean", "key", and "all". -- ts_headline for json select ts_headline('{"a": "aaa bbb", "b": {"c": "ccc ddd fff", "c1": "ccc1 ddd1"}, "d": ["ggg hhh", "iii jjj"]}'::json, tsquery('bbb & ddd & hhh')); - ts_headline ---------------------------------------------------------------------------------------------------------- - {"a":"aaa bbb","b":{"c":"ccc ddd fff","c1":"ccc1 ddd1"},"d":["ggg hhh","iii jjj"]} -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" select ts_headline('english', '{"a": "aaa bbb", "b": {"c": "ccc ddd fff"}, "d": ["ggg hhh", "iii jjj"]}'::json, tsquery('bbb & ddd & hhh')); - ts_headline ----------------------------------------------------------------------------------------- - {"a":"aaa bbb","b":{"c":"ccc ddd fff"},"d":["ggg hhh","iii jjj"]} -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" select ts_headline('{"a": "aaa bbb", "b": {"c": "ccc ddd fff", "c1": "ccc1 ddd1"}, "d": ["ggg hhh", "iii jjj"]}'::json, tsquery('bbb & ddd & hhh'), 'StartSel = <, StopSel = >'); - ts_headline ------------------------------------------------------------------------------------------- - {"a":"aaa ","b":{"c":"ccc fff","c1":"ccc1 ddd1"},"d":["ggg ","iii jjj"]} -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" select ts_headline('english', '{"a": "aaa bbb", "b": {"c": "ccc ddd fff", "c1": "ccc1 ddd1"}, "d": ["ggg hhh", "iii jjj"]}'::json, tsquery('bbb & ddd & hhh'), 'StartSel = <, StopSel = >'); - ts_headline ------------------------------------------------------------------------------------------- - {"a":"aaa ","b":{"c":"ccc fff","c1":"ccc1 ddd1"},"d":["ggg ","iii jjj"]} -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" -- corner cases for ts_headline with json select ts_headline('null'::json, tsquery('aaa & bbb')); ts_headline diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/jsonb.out /tmp/cirrus-ci-build/build-32/testrun/regress/regress/results/jsonb.out --- /tmp/cirrus-ci-build/src/test/regress/expected/jsonb.out 2026-03-01 14:40:43.784889811 +0000 +++ /tmp/cirrus-ci-build/build-32/testrun/regress/regress/results/jsonb.out 2026-03-01 14:51:20.456463240 +0000 @@ -5483,105 +5483,67 @@ \x -- jsonb to tsvector select to_tsvector('{"a": "aaa bbb ddd ccc", "b": ["eee fff ggg"], "c": {"d": "hhh iii"}}'::jsonb); - to_tsvector ---------------------------------------------------------------------------- - 'aaa':1 'bbb':2 'ccc':4 'ddd':3 'eee':6 'fff':7 'ggg':8 'hhh':10 'iii':11 -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" -- jsonb to tsvector with config select to_tsvector('simple', '{"a": "aaa bbb ddd ccc", "b": ["eee fff ggg"], "c": {"d": "hhh iii"}}'::jsonb); - to_tsvector ---------------------------------------------------------------------------- - 'aaa':1 'bbb':2 'ccc':4 'ddd':3 'eee':6 'fff':7 'ggg':8 'hhh':10 'iii':11 -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 -- jsonb to tsvector with stop words select to_tsvector('english', '{"a": "aaa in bbb ddd ccc", "b": ["the eee fff ggg"], "c": {"d": "hhh. iii"}}'::jsonb); - to_tsvector ----------------------------------------------------------------------------- - 'aaa':1 'bbb':3 'ccc':5 'ddd':4 'eee':8 'fff':9 'ggg':10 'hhh':12 'iii':13 -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" -- jsonb to tsvector with numeric values select to_tsvector('english', '{"a": "aaa in bbb ddd ccc", "b": 123, "c": 456}'::jsonb); - to_tsvector ---------------------------------- - 'aaa':1 'bbb':3 'ccc':5 'ddd':4 -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" -- jsonb_to_tsvector select jsonb_to_tsvector('english', '{"a": "aaa in bbb", "b": 123, "c": 456, "d": true, "f": false, "g": null}'::jsonb, '"all"'); - jsonb_to_tsvector ----------------------------------------------------------------------------------------- - '123':8 '456':12 'aaa':2 'b':6 'bbb':4 'c':10 'd':14 'f':18 'fals':20 'g':22 'true':16 -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" select jsonb_to_tsvector('english', '{"a": "aaa in bbb", "b": 123, "c": 456, "d": true, "f": false, "g": null}'::jsonb, '"key"'); - jsonb_to_tsvector --------------------------------- - 'b':2 'c':4 'd':6 'f':8 'g':10 -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" select jsonb_to_tsvector('english', '{"a": "aaa in bbb", "b": 123, "c": 456, "d": true, "f": false, "g": null}'::jsonb, '"string"'); - jsonb_to_tsvector -------------------- - 'aaa':1 'bbb':3 -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" select jsonb_to_tsvector('english', '{"a": "aaa in bbb", "b": 123, "c": 456, "d": true, "f": false, "g": null}'::jsonb, '"numeric"'); - jsonb_to_tsvector -------------------- - '123':1 '456':3 -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 select jsonb_to_tsvector('english', '{"a": "aaa in bbb", "b": 123, "c": 456, "d": true, "f": false, "g": null}'::jsonb, '"boolean"'); - jsonb_to_tsvector -------------------- - 'fals':3 'true':1 -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" select jsonb_to_tsvector('english', '{"a": "aaa in bbb", "b": 123, "c": 456, "d": true, "f": false, "g": null}'::jsonb, '["string", "numeric"]'); - jsonb_to_tsvector ---------------------------------- - '123':5 '456':7 'aaa':1 'bbb':3 -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" select jsonb_to_tsvector('english', '{"a": "aaa in bbb", "b": 123, "c": 456, "d": true, "f": false, "g": null}'::jsonb, '"all"'); - jsonb_to_tsvector ----------------------------------------------------------------------------------------- - '123':8 '456':12 'aaa':2 'b':6 'bbb':4 'c':10 'd':14 'f':18 'fals':20 'g':22 'true':16 -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" select jsonb_to_tsvector('english', '{"a": "aaa in bbb", "b": 123, "c": 456, "d": true, "f": false, "g": null}'::jsonb, '"key"'); - jsonb_to_tsvector --------------------------------- - 'b':2 'c':4 'd':6 'f':8 'g':10 -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" select jsonb_to_tsvector('english', '{"a": "aaa in bbb", "b": 123, "c": 456, "d": true, "f": false, "g": null}'::jsonb, '"string"'); - jsonb_to_tsvector -------------------- - 'aaa':1 'bbb':3 -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" select jsonb_to_tsvector('english', '{"a": "aaa in bbb", "b": 123, "c": 456, "d": true, "f": false, "g": null}'::jsonb, '"numeric"'); - jsonb_to_tsvector -------------------- - '123':1 '456':3 -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 select jsonb_to_tsvector('english', '{"a": "aaa in bbb", "b": 123, "c": 456, "d": true, "f": false, "g": null}'::jsonb, '"boolean"'); - jsonb_to_tsvector -------------------- - 'fals':3 'true':1 -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" select jsonb_to_tsvector('english', '{"a": "aaa in bbb", "b": 123, "c": 456, "d": true, "f": false, "g": null}'::jsonb, '["string", "numeric"]'); - jsonb_to_tsvector ---------------------------------- - '123':5 '456':7 'aaa':1 'bbb':3 -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" -- to_tsvector corner cases select to_tsvector('""'::jsonb); to_tsvector @@ -5651,29 +5613,21 @@ HINT: Possible values are: "string", "numeric", "boolean", "key", and "all". -- ts_headline for jsonb select ts_headline('{"a": "aaa bbb", "b": {"c": "ccc ddd fff", "c1": "ccc1 ddd1"}, "d": ["ggg hhh", "iii jjj"]}'::jsonb, tsquery('bbb & ddd & hhh')); - ts_headline ------------------------------------------------------------------------------------------------------------------- - {"a": "aaa bbb", "b": {"c": "ccc ddd fff", "c1": "ccc1 ddd1"}, "d": ["ggg hhh", "iii jjj"]} -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" select ts_headline('english', '{"a": "aaa bbb", "b": {"c": "ccc ddd fff"}, "d": ["ggg hhh", "iii jjj"]}'::jsonb, tsquery('bbb & ddd & hhh')); - ts_headline ------------------------------------------------------------------------------------------------ - {"a": "aaa bbb", "b": {"c": "ccc ddd fff"}, "d": ["ggg hhh", "iii jjj"]} -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" select ts_headline('{"a": "aaa bbb", "b": {"c": "ccc ddd fff", "c1": "ccc1 ddd1"}, "d": ["ggg hhh", "iii jjj"]}'::jsonb, tsquery('bbb & ddd & hhh'), 'StartSel = <, StopSel = >'); - ts_headline ---------------------------------------------------------------------------------------------------- - {"a": "aaa ", "b": {"c": "ccc fff", "c1": "ccc1 ddd1"}, "d": ["ggg ", "iii jjj"]} -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" select ts_headline('english', '{"a": "aaa bbb", "b": {"c": "ccc ddd fff", "c1": "ccc1 ddd1"}, "d": ["ggg hhh", "iii jjj"]}'::jsonb, tsquery('bbb & ddd & hhh'), 'StartSel = <, StopSel = >'); - ts_headline ---------------------------------------------------------------------------------------------------- - {"a": "aaa ", "b": {"c": "ccc fff", "c1": "ccc1 ddd1"}, "d": ["ggg ", "iii jjj"]} -(1 row) - +ERROR: Unicode case folding can only be performed if server encoding is UTF8 +CONTEXT: line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/english.stop": "i +" -- corner cases for ts_headline with jsonb select ts_headline('null'::jsonb, tsquery('aaa & bbb')); ts_headline