Обсуждение: Bug Report | Using ts_headline with the <-> operator

Поиск
Список
Период
Сортировка

Bug Report | Using ts_headline with the <-> operator

От
Дата:

PostgreSQL version: 10.15

Operating system:   Linux/Ubuntu

 

Bug when using ts_headline with the <-> operator

 

Assuming the following query:

SELECT ts_headline('simple','The Cyberpunk launch did not go as expected for Cyberpunk Fans around the world', phraseto_tsquery('simple','Cyberpunk Fans')::tsquery);

 

The returned result is:

The <b>Cyberpunk</b> launch did not go as expected for <b>Cyberpunk</b> <b>Fans</b> around the world

 

This highlights the Cyberpunk alone in addition to Cyberpunk Fans.

 

However, the expected output would be:

The Cyberpunk launch did not go as expected for <b>Cyberpunk</b> <b>Fans</b> around the world

 

Which only highlights *Cyberpunk Fans* due to the <-> operator in phraseto_tsquery.

 

SELECT phraseto_tsquery('simple','Cyberpunk Fans');

The above returns 'cyberpunk<-> 'fans' as expected, so presumably this is an issue with the ts_headline function.

 

I would be great to see this fixed/improved in the near future.

 

Christian

Re: Bug Report | Using ts_headline with the <-> operator

От
Tom Lane
Дата:
<christian@games.no> writes:
> Assuming the following query:

> SELECT ts_headline('simple','The Cyberpunk launch did not go as expected for
> Cyberpunk Fans around the world', phraseto_tsquery('simple','Cyberpunk
> Fans')::tsquery);

> The returned result is:

> The <b>Cyberpunk</b> launch did not go as expected for <b>Cyberpunk</b>
> <b>Fans</b> around the world

This is behaving as designed, and I don't really think it's wrong.
See previous discussion at

https://www.postgresql.org/message-id/flat/16744-861496b4f8f941f2%40postgresql.org

It is unfortunate that the only way to customize this type of decision
is to build your own new text search parser.  Perhaps someday someone
will put in the work to make that stuff a bit more modular and easier
to change.

            regards, tom lane