mirror of
https://github.com/MariaDB/server.git
synced 2025-11-02 02:53:04 +03:00
Bug#16316: XML: extractvalue() is case-sensitive with contains()
xml.result, xml.test: Adding test case. item_xmlfunc.cc: Fixed that Item_nodeset_func derived classes didn't take into account charset of the XML value and always worked using "binary" charset. sql/item_xmlfunc.cc: Bug#16316: XML: extractvalue() is case-sensitive with contains() Fixed that Item_nodeset_func derived classes didn't take into account charset of the XML value and always worked using "binary" charset. mysql-test/t/xml.test: Adding test case. mysql-test/r/xml.result: Adding test case.
This commit is contained in:
@@ -561,3 +561,15 @@ A B C
|
||||
select extractvalue('<A_B>A</A_B>','/A_B');
|
||||
extractvalue('<A_B>A</A_B>','/A_B')
|
||||
A
|
||||
select extractvalue('<a>Jack</a>','/a[contains(../a,"J")]');
|
||||
extractvalue('<a>Jack</a>','/a[contains(../a,"J")]')
|
||||
Jack
|
||||
select extractvalue('<a>Jack</a>','/a[contains(../a,"j")]');
|
||||
extractvalue('<a>Jack</a>','/a[contains(../a,"j")]')
|
||||
Jack
|
||||
select extractvalue('<a>Jack</a>','/a[contains(../a,"j")]' collate latin1_bin);
|
||||
extractvalue('<a>Jack</a>','/a[contains(../a,"j")]' collate latin1_bin)
|
||||
|
||||
select extractvalue('<a>Jack</a>' collate latin1_bin,'/a[contains(../a,"j")]');
|
||||
extractvalue('<a>Jack</a>' collate latin1_bin,'/a[contains(../a,"j")]')
|
||||
|
||||
|
||||
@@ -254,3 +254,11 @@ select extractvalue('<a>A<b>B<c>C</c></b></a>','/a/descendant-or-self::*');
|
||||
# Bug #16320 XML: extractvalue() won't accept names containing underscores
|
||||
#
|
||||
select extractvalue('<A_B>A</A_B>','/A_B');
|
||||
|
||||
#
|
||||
# Bug#16316: XML: extractvalue() is case-sensitive with contains()
|
||||
#
|
||||
select extractvalue('<a>Jack</a>','/a[contains(../a,"J")]');
|
||||
select extractvalue('<a>Jack</a>','/a[contains(../a,"j")]');
|
||||
select extractvalue('<a>Jack</a>','/a[contains(../a,"j")]' collate latin1_bin);
|
||||
select extractvalue('<a>Jack</a>' collate latin1_bin,'/a[contains(../a,"j")]');
|
||||
|
||||
Reference in New Issue
Block a user