Re: BUG #16091: xpath fails to compute "name()", regression

Поиск
Список
Период
Сортировка
От Tom Lane
Тема Re: BUG #16091: xpath fails to compute "name()", regression
Дата
Msg-id 15301.1572459026@sss.pgh.pa.us
обсуждение исходный текст
Ответ на BUG #16091: xpath fails to compute "name()", regression  (PG Bug reporting form <noreply@postgresql.org>)
Ответы Re: BUG #16091: xpath fails to compute "name()", regression  (Cherio <cherio@gmail.com>)
Список pgsql-bugs
PG Bug reporting form <noreply@postgresql.org> writes:
> After upgrading postgresql from 9 to 12 the following statement no longer
> produces the same result: SELECT xpath('name()', '<abc>xyz</abc>'::XML)

> PostgreSQL 9 returns '{abc}'
> PostgreSQL 12 returns '{""}'

> This behavior changed in version 11 and perpetuated into 12.

This looks to me to be an intentional change in xpath's behavior.
The v11 release notes call out the incompatibility:

    Correctly handle relative path expressions in xmltable(), xpath(), and
    other XML-handling functions (Markus Winand)

    Per the SQL standard, relative paths start from the document node of
    the XML input document, not the root node as these functions
    previously did.

Perhaps 'name(/*)' would do what you want now.

            regards, tom lane



В списке pgsql-bugs по дате отправления:

Предыдущее
От: PG Bug reporting form
Дата:
Сообщение: BUG #16091: xpath fails to compute "name()", regression
Следующее
От: Tomas Vondra
Дата:
Сообщение: Re: memory problems and crash of db when deleting data from tablewith thousands of partitions