diff options
| author | Tom Lane | 2016-08-05 20:09:06 +0000 |
|---|---|---|
| committer | Tom Lane | 2016-08-05 20:09:06 +0000 |
| commit | f10eab73df2b94c860dea4a906c54e3c903f42e2 (patch) | |
| tree | 8fedfd12ef602529ca659e163e75e356c11653b2 /src/test | |
| parent | c50d192ce33c10fa06411306f8644b4f47ce9a06 (diff) | |
Make array_to_tsvector() sort and de-duplicate the given strings.
This is required for the result to be a legal tsvector value.
Noted while fooling with Andreas Seltenreich's ts_delete() crash.
Discussion: <87invhoj6e.fsf@credativ.de>
Diffstat (limited to 'src/test')
| -rw-r--r-- | src/test/regress/expected/tstypes.out | 7 | ||||
| -rw-r--r-- | src/test/regress/sql/tstypes.sql | 2 |
2 files changed, 9 insertions, 0 deletions
diff --git a/src/test/regress/expected/tstypes.out b/src/test/regress/expected/tstypes.out index 73f43c5ff02..8d9290cbac1 100644 --- a/src/test/regress/expected/tstypes.out +++ b/src/test/regress/expected/tstypes.out @@ -1165,6 +1165,13 @@ SELECT array_to_tsvector(ARRAY['base','hidden','rebel','spaceship','strike']); SELECT array_to_tsvector(ARRAY['base','hidden','rebel','spaceship', NULL]); ERROR: lexeme array may not contain nulls +-- array_to_tsvector must sort and de-dup +SELECT array_to_tsvector(ARRAY['foo','bar','baz','bar']); + array_to_tsvector +------------------- + 'bar' 'baz' 'foo' +(1 row) + SELECT setweight('w:12B w:13* w:12,5,6 a:1,3* a:3 w asd:1dc asd zxc:81,567,222A'::tsvector, 'c'); setweight ---------------------------------------------------------- diff --git a/src/test/regress/sql/tstypes.sql b/src/test/regress/sql/tstypes.sql index f0c06ba5f5a..9ea93a29938 100644 --- a/src/test/regress/sql/tstypes.sql +++ b/src/test/regress/sql/tstypes.sql @@ -226,6 +226,8 @@ SELECT tsvector_to_array('base hidden rebel spaceship strike'::tsvector); SELECT array_to_tsvector(ARRAY['base','hidden','rebel','spaceship','strike']); SELECT array_to_tsvector(ARRAY['base','hidden','rebel','spaceship', NULL]); +-- array_to_tsvector must sort and de-dup +SELECT array_to_tsvector(ARRAY['foo','bar','baz','bar']); SELECT setweight('w:12B w:13* w:12,5,6 a:1,3* a:3 w asd:1dc asd zxc:81,567,222A'::tsvector, 'c'); SELECT setweight('a:1,3A asd:1C w:5,6,12B,13A zxc:81,222A,567'::tsvector, 'c'); |
