Re: XML/XPath issues: text/CDATA in XMLTABLE, XPath evaluated withwrong context

Поиск
Список
Период
Сортировка
От Pavel Stehule
Тема Re: XML/XPath issues: text/CDATA in XMLTABLE, XPath evaluated withwrong context
Дата
Msg-id CAFj8pRAeBSyUQ4LgXG5qEtDyBrhRdcs4yyapdDAd7fjjNXaLXw@mail.gmail.com
обсуждение исходный текст
Ответ на Re: XML/XPath issues: text/CDATA in XMLTABLE, XPath evaluated withwrong context  (Pavel Stehule <pavel.stehule@gmail.com>)
Ответы Re: XML/XPath issues: text/CDATA in XMLTABLE, XPath evaluated withwrong context  (Ramanarayana <raam.soft@gmail.com>)
Список pgsql-hackers


čt 28. 2. 2019 v 10:31 odesílatel Pavel Stehule <pavel.stehule@gmail.com> napsal:


čt 28. 2. 2019 v 9:58 odesílatel Ramanarayana <raam.soft@gmail.com> napsal:
Hi,
        I have tested the three issues fixed in patch 001. Array Indexes issue is still there.Running the following query returns ERROR: more than one value returned by column XPath expression

SELECT xmltable.*
FROM (SELECT data FROM xmldata) x,
LATERAL XMLTABLE('/ROWS/ROW'
PASSING data
COLUMNS
country_name text PATH 'COUNTRY_NAME/text()' NOT NULL,
size_text float PATH 'SIZE/text()',
size_text_1 float PATH 'SIZE/text()[1]',
size_text_2 float PATH 'SIZE/text()[2]',
"SIZE" float, size_xml xml PATH 'SIZE')  
 
The other two issues are resolved by this patch.

I tested xmltable-xpath-result-processing-bugfix-6.patch

and it is working

postgres=# SELECT  xmltable.*
postgres-#    FROM (SELECT data FROM xmldata) x,
postgres-#         LATERAL XMLTABLE('/ROWS/ROW'
postgres(#                          PASSING data
postgres(#                          COLUMNS
postgres(#                                   country_name text PATH 'COUNTRY_NAME/text()' NOT NULL,
postgres(#                                   size_text float PATH 'SIZE/text()',
postgres(#                                   size_text_1 float PATH 'SIZE/text()[1]',
postgres(#                                   size_text_2 float PATH 'SIZE/text()[2]',
postgres(#                                   "SIZE" float, size_xml xml PATH 'SIZE')  ;
┌──────────────┬───────────┬─────────────┬─────────────┬──────┬────────────────────────────┐
│ country_name │ size_text │ size_text_1 │ size_text_2 │ SIZE │          size_xml          │
╞══════════════╪═══════════╪═════════════╪═════════════╪══════╪════════════════════════════╡
│ Australia    │         ∅ │           ∅ │           ∅ │    ∅ │ ∅                          │
│ China        │         ∅ │           ∅ │           ∅ │    ∅ │ ∅                          │
│ HongKong     │         ∅ │           ∅ │           ∅ │    ∅ │ ∅                          │
│ India        │         ∅ │           ∅ │           ∅ │    ∅ │ ∅                          │
│ Japan        │         ∅ │           ∅ │           ∅ │    ∅ │ ∅                          │
│ Singapore    │       791 │         791 │           ∅ │  791 │ <SIZE unit="km">791</SIZE> │
└──────────────┴───────────┴─────────────┴─────────────┴──────┴────────────────────────────┘
(6 rows)


Regards

Pavel
 

what patches you are used?

Regards

Pavel


--
Cheers
Ram 4.0

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

Предыдущее
От: Michael Paquier
Дата:
Сообщение: Re: get_controlfile() can leak fds in the backend
Следующее
От: Dave Cramer
Дата:
Сообщение: Re: Libpq support to connect to standby server as priority