Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

On binary XML storage insignificant whitespaces are removed. #880

Closed
lwasylow opened this issue Mar 27, 2019 · 11 comments
Closed

On binary XML storage insignificant whitespaces are removed. #880

lwasylow opened this issue Mar 27, 2019 · 11 comments
Labels
bug
Milestone

Comments

@lwasylow
Copy link
Member

@lwasylow lwasylow commented Mar 27, 2019

On binary XML storage insignificant whitespaces are removed.
This is default way of storing XML data post 12.1 release and causing trimming of whitespaces.
Using CLOBS is inefficient.
e.g
select * from table(ut_varchar2_list(' '))

select * from table(ut_varchar2_list(''))

are showing as equal.

@lwasylow lwasylow added the bug label Mar 27, 2019
@jgebal

This comment has been minimized.

Copy link
Member

@jgebal jgebal commented Mar 27, 2019

Raised it with ASKTom, as documentation is not mentioning data-infidelity.
I would expect XMLType to give full data-fidelity.

It smells like an Oracle bug. Not much we can do about it.
CLOB storage is absolutely not an option due to performance issues.

@jgebal

This comment has been minimized.

Copy link
Member

@jgebal jgebal commented Mar 27, 2019

@jgebal

This comment has been minimized.

@lwasylow

This comment has been minimized.

Copy link
Member Author

@lwasylow lwasylow commented Mar 29, 2019

Follow up question on XMLTABLE reading these data.
https://livesql.oracle.com/apex/livesql/s/h6ahy0vlhykp7k7xu0ua0xmw4

@lwasylow

This comment has been minimized.

Copy link
Member Author

@lwasylow lwasylow commented Apr 19, 2019

Some of the changes been implemented in PR #895
There are still issues regarding whitespace vs double whitespace.

@jgebal

This comment has been minimized.

Copy link
Member

@jgebal jgebal commented Dec 29, 2019

@lwasylow - what should we do about this issue?

@lwasylow

This comment has been minimized.

Copy link
Member Author

@lwasylow lwasylow commented Dec 29, 2019

I think we close it for now. Only problem is a whitespace vs double space. Not much we can do and no one raised as an issue.

@jgebal

This comment has been minimized.

Copy link
Member

@jgebal jgebal commented Dec 29, 2019

We should probably mention it in documentation.
It only applies to cursor/object/nested-table comparison - right?

@lwasylow

This comment has been minimized.

Copy link
Member Author

@lwasylow lwasylow commented Dec 30, 2019

Yes it's only when we use xml as part of cursor comparison. Once we stop 11. 2 we could switch to json maybe.

jgebal added a commit that referenced this issue Jan 2, 2020
Updated tests o represent the issue more clearly.

Closes #880
@jgebal

This comment has been minimized.

Copy link
Member

@jgebal jgebal commented Jan 4, 2020

One more Idea that comes to my mind is to use ANYDATA.convertObject() and store XMTYPE as ANYDATA. This again will be n overhead but I wonder which one is worse to-CLOB or to-ANYDATA conversion.

@jgebal jgebal closed this in #1039 Jan 4, 2020
@jgebal jgebal added this to the 3.1.10 milestone Feb 23, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Linked pull requests

Successfully merging a pull request may close this issue.

2 participants
You can’t perform that action at this time.