diff options
author | unknown <jani@ibmlab.site> | 2006-03-15 14:08:59 +0200 |
---|---|---|
committer | unknown <jani@ibmlab.site> | 2006-03-15 14:08:59 +0200 |
commit | eb5824d64b3bda94c7bbef25f0b56a4eba353767 (patch) | |
tree | cd5e0021c10fcf8e94407e9efb1af4e2878feb05 | |
parent | adf82864a9d5d433de6e21d8a86766106c2d37f2 (diff) | |
parent | d38785aa6a77afd942aebbff64e234ffbcd7da25 (diff) | |
download | mariadb-git-eb5824d64b3bda94c7bbef25f0b56a4eba353767.tar.gz |
Merge jamppa@bk-internal.mysql.com:/home/bk/mysql-5.1-new
into ibmlab.site:/home/my/bk/mysql-5.1-new
-rw-r--r-- | mysql-test/r/xml.result | 4 | ||||
-rw-r--r-- | mysql-test/t/xml.test | 9 | ||||
-rw-r--r-- | sql/item_xmlfunc.cc | 6 | ||||
-rw-r--r-- | win/README | 75 |
4 files changed, 92 insertions, 2 deletions
diff --git a/mysql-test/r/xml.result b/mysql-test/r/xml.result index bb7a158593c..d213ef98885 100644 --- a/mysql-test/r/xml.result +++ b/mysql-test/r/xml.result @@ -609,3 +609,7 @@ 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")]') +select extractValue('<e>1</e>','position()'); +ERROR HY000: XPATH syntax error: '' +select extractValue('<e>1</e>','last()'); +ERROR HY000: XPATH syntax error: '' diff --git a/mysql-test/t/xml.test b/mysql-test/t/xml.test index 831867937e4..ae1c9cf3b6b 100644 --- a/mysql-test/t/xml.test +++ b/mysql-test/t/xml.test @@ -277,3 +277,12 @@ 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")]'); + +# +# Bug #18171 XML: ExtractValue: the XPath position() +# function crashes the server! +# +--error 1105 +select extractValue('<e>1</e>','position()'); +--error 1105 +select extractValue('<e>1</e>','last()'); diff --git a/sql/item_xmlfunc.cc b/sql/item_xmlfunc.cc index 7378be0ac4c..da39c1e4409 100644 --- a/sql/item_xmlfunc.cc +++ b/sql/item_xmlfunc.cc @@ -1141,13 +1141,15 @@ static Item *create_func_round(MY_XPATH *xpath, Item **args, uint nargs) static Item *create_func_last(MY_XPATH *xpath, Item **args, uint nargs) { - return new Item_func_xpath_count(xpath->context, xpath->pxml); + return xpath->context ? + new Item_func_xpath_count(xpath->context, xpath->pxml) : NULL; } static Item *create_func_position(MY_XPATH *xpath, Item **args, uint nargs) { - return new Item_func_xpath_position(xpath->context, xpath->pxml); + return xpath->context ? + new Item_func_xpath_position(xpath->context, xpath->pxml) : NULL; } diff --git a/win/README b/win/README new file mode 100644 index 00000000000..c8eed8e93fe --- /dev/null +++ b/win/README @@ -0,0 +1,75 @@ +Windows building readme +====================================== + +----------------IMPORTANT---------------------------- +This readme outlines the instructions for building +MySQL for Windows staring from version 5.1. +This readme does not apply to MySQL versions 5.0 +or ealier. +----------------------------------------------------- + +The Windows build system uses a tool named CMake to generate build files for +a variety of project systems. This tool is combined with a set of jscript +files to enable building of MySQL for Windows directly out of a bk clone. +The steps required are below. + +Step 1 +------ +Download and install CMake. It can be downloaded from http://www.cmake.org. +Once it is installed, modify your path to make sure you can execute +the cmake binary. + +Step 2 +------ +Download and install bison for Windows. It can be downloaded from +http://gnuwin32.sourceforge.net/packages/bison.htm. Please download using +the link named "Complete package, excluding sources". This includes an +installer that will install bison. After the installer finishes, modify +your path so that you can execute bison. + +Step 3 +------ +Clone your bk tree to any location you like. + +Step 4 +------ +From the root of your bk clone, execute the command: win\configure <options>. +The options right now are WITH_INNODB and WITH_PARTITION. So the command line +would look like: + +win\configure WITH_INNODB WITH_PARTITION + +These are the only two flags supported right now. Others will come later. + +Step 5 +------ +From the root of your bk clone, execute one of the batch files to generate the type +of project files you desire. + +For Visual Studio 8, do win\build-vs8. +For Visual Studio 7.1, do win\build-vs71. + +We will support building with nmake in the near future. + +Step 6 +------ +From the root of your bk clone, start your build. + +For Visual Studio, simply execute mysql.sln. This will start the IDE and you can +click the build solution menu option. + +Current issues +-------------- +1. Dependencies are not handled correctly with the current scripts. What +this means is that a new error file may not be generated when the errmsg.txt +file changes. In this case, simply force the GenError target to build. This +should execute comp_err to generate the required files. + +2. Not all configurations are currently available. i.e. Classic, Pro, Max. +Currently, only debug and release are available. This will change in the near +future. + +3. The definitions set for features (partitioning, blackhole, etc) are not +changed based on the options given with configure. This will soon be fixed +as well. + |