merge mysql-5.5->mysql-5.5-bugteam
This commit is contained in:
commit
c6b904abf8
@ -10,6 +10,7 @@
|
|||||||
*.d
|
*.d
|
||||||
*.da
|
*.da
|
||||||
*.dll
|
*.dll
|
||||||
|
*.dylib
|
||||||
*.exe
|
*.exe
|
||||||
*.exp
|
*.exp
|
||||||
*.gcda
|
*.gcda
|
||||||
@ -611,6 +612,7 @@ include/mysql_version.h
|
|||||||
include/mysqld_ername.h
|
include/mysqld_ername.h
|
||||||
include/mysqld_error.h
|
include/mysqld_error.h
|
||||||
include/openssl
|
include/openssl
|
||||||
|
include/probes_mysql_dtrace.h
|
||||||
include/readline
|
include/readline
|
||||||
include/readline/*.h
|
include/readline/*.h
|
||||||
include/readline/readline.h
|
include/readline/readline.h
|
||||||
|
444
README
444
README
@ -68,7 +68,6 @@ Use of any of this software is governed by the terms of the license below:
|
|||||||
# implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
# implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
||||||
# See the License for more information.
|
# See the License for more information.
|
||||||
#===========================================================================
|
#===========================================================================
|
||||||
==
|
|
||||||
# (To distributed this file outside of CMake, substitute the full
|
# (To distributed this file outside of CMake, substitute the full
|
||||||
# License text for the above reference.)
|
# License text for the above reference.)
|
||||||
#
|
#
|
||||||
@ -122,27 +121,30 @@ CMake is distributed under BSD License
|
|||||||
All rights reserved.
|
All rights reserved.
|
||||||
|
|
||||||
Redistribution and use in source and binary forms, with or without
|
Redistribution and use in source and binary forms, with or without
|
||||||
modification, are permitted provided that the following conditions are met:
|
modification, are permitted provided that the following conditions are
|
||||||
|
met:
|
||||||
|
|
||||||
* Redistributions of source code must retain the above copyright notice,
|
* Redistributions of source code must retain the above copyright
|
||||||
this list of conditions and the following disclaimer.
|
notice, this list of conditions and the following disclaimer.
|
||||||
* Redistributions in binary form must reproduce the above copyright
|
* Redistributions in binary form must reproduce the above copyright
|
||||||
notice, this list of conditions and the following disclaimer in the
|
notice, this list of conditions and the following disclaimer in
|
||||||
documentation and/or other materials provided with the distribution.
|
the documentation and/or other materials provided with the
|
||||||
* Neither the name of Kitware, Inc. nor the names of its contributors
|
distribution.
|
||||||
may be used to endorse or promote products derived from this software without
|
* Neither the name of Kitware, Inc. nor the names of its
|
||||||
specific prior written permission.
|
contributors may be used to endorse or promote products derived
|
||||||
|
from this software without specific prior written permission.
|
||||||
|
|
||||||
THIS SOFTWARE IS PROVIDED BY Kitware, Inc. "AS IS" AND ANY EXPRESS OR
|
THIS SOFTWARE IS PROVIDED BY Kitware, Inc. "AS IS" AND ANY EXPRESS OR
|
||||||
IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
|
IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
|
||||||
MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
|
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
|
||||||
SHALL Kitware Inc. BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
|
DISCLAIMED. IN NO EVENT SHALL Kitware Inc. BE LIABLE FOR ANY DIRECT,
|
||||||
EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
|
INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
|
||||||
OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
|
(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
|
||||||
INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
|
SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
||||||
CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
|
HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
|
||||||
IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
|
STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
|
||||||
OF SUCH DAMAGE.
|
IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
||||||
|
POSSIBILITY OF SUCH DAMAGE.
|
||||||
|
|
||||||
Additional License(s)
|
Additional License(s)
|
||||||
|
|
||||||
@ -186,13 +188,9 @@ cmake-2.4.8/Utilities/cmtar/compat/gethostname.c:
|
|||||||
|
|
||||||
**************************************************************************
|
**************************************************************************
|
||||||
|
|
||||||
*
|
* Author : Per Foreby, perf@efd.lth.se
|
||||||
Author : Per Foreby, perf@efd.lth.se
|
* Author : Juergen Pfeifer, juergen.pfeifer@gmx.net
|
||||||
*
|
|
||||||
Author : Juergen Pfeifer, juergen.pfeifer@gmx.net
|
|
||||||
*
|
|
||||||
|
|
||||||
*
|
|
||||||
**************************************************************************
|
**************************************************************************
|
||||||
|
|
||||||
----------------------------------------
|
----------------------------------------
|
||||||
@ -208,9 +206,8 @@ details.
|
|||||||
--------------------------------------------
|
--------------------------------------------
|
||||||
|
|
||||||
Skeleton parser for Yacc-like parsing with Bison,
|
Skeleton parser for Yacc-like parsing with Bison,
|
||||||
Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003 Free
|
Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003 Free Software
|
||||||
Software Foundati
|
Foundation, Inc.
|
||||||
on, Inc.
|
|
||||||
|
|
||||||
This program is free software; you can redistribute it and/or modify
|
This program is free software; you can redistribute it and/or modify
|
||||||
it under the terms of the GNU General Public License as published by
|
it under the terms of the GNU General Public License as published by
|
||||||
@ -253,8 +250,7 @@ cmake-2.4.8/Utilities/cmzlib/zlib.h:
|
|||||||
in a product, an acknowledgment in the product documentation would be
|
in a product, an acknowledgment in the product documentation would be
|
||||||
appreciated but is not required.
|
appreciated but is not required.
|
||||||
2. Altered source versions must be plainly marked as such, and must
|
2. Altered source versions must be plainly marked as such, and must
|
||||||
not be
|
not be misrepresented as being the original software.
|
||||||
misrepresented as being the original software.
|
|
||||||
3. This notice may not be removed or altered from any source
|
3. This notice may not be removed or altered from any source
|
||||||
distribution.
|
distribution.
|
||||||
|
|
||||||
@ -262,26 +258,19 @@ distribution.
|
|||||||
|
|
||||||
----------------------------------------------
|
----------------------------------------------
|
||||||
|
|
||||||
This source code was modified by Martin Hedenfalk
|
This source code was modified by Martin Hedenfalk for use in Curl. His
|
||||||
for
|
latest changes were done 2000-09-18.
|
||||||
use in Curl. His latest changes were done 2000-09-18.
|
|
||||||
|
|
||||||
It has since been patched away like a madman by Daniel Stenberg
|
It has since been patched away like a madman by Daniel Stenberg to make it
|
||||||
to make it better applied to curl conditions, and to
|
better applied to curl conditions, and to make it not use globals, pollute
|
||||||
make
|
name space and more. This source code awaits a rewrite to work around the
|
||||||
it not use globals, pollute name space and more. This source code
|
paragraph 2 in the BSD licenses as explained below.
|
||||||
awaits a
|
|
||||||
rewrite to work around the paragraph 2 in the BSD licenses as explained
|
|
||||||
below.
|
|
||||||
|
|
||||||
Copyright (c) 1995, 1996, 1997, 1998, 1999 Kungliga Tekniska Hgskolan
|
Copyright (c) 1995, 1996, 1997, 1998, 1999 Kungliga Tekniska Hgskolan
|
||||||
It has since been patched and modified a lot by Daniel Stenberg
|
It has since been patched and modified a lot by Daniel Stenberg to make it
|
||||||
to make it better applied to curl conditions, and to
|
better applied to curl conditions, and to make it not use globals, pollute
|
||||||
make
|
name space and more. This source code awaits a rewrite to work around the
|
||||||
it not use globals, pollute name space and more. This source code
|
paragraph 2 in the BSD licenses as explained below.
|
||||||
awaits a
|
|
||||||
rewrite to work around the paragraph 2 in the BSD licenses as explained
|
|
||||||
below.
|
|
||||||
|
|
||||||
Copyright (c) 1998, 1999 Kungliga Tekniska Hgskolan
|
Copyright (c) 1998, 1999 Kungliga Tekniska Hgskolan
|
||||||
(Royal Institute of Technology, Stockholm, Sweden).
|
(Royal Institute of Technology, Stockholm, Sweden).
|
||||||
@ -304,19 +293,15 @@ awaits a
|
|||||||
|
|
||||||
THIS SOFTWARE IS PROVIDED BY THE INSTITUTE AND CONTRIBUTORS ``AS IS'' AND
|
THIS SOFTWARE IS PROVIDED BY THE INSTITUTE AND CONTRIBUTORS ``AS IS'' AND
|
||||||
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
||||||
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
|
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
||||||
PURPOSE
|
ARE DISCLAIMED. IN NO EVENT SHALL THE INSTITUTE OR CONTRIBUTORS BE LIABLE
|
||||||
ARE DISCLAIMED. IN NO EVENT SHALL THE INSTITUTE OR CONTRIBUTORS BE
|
FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
||||||
LIABLE
|
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
|
||||||
FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
|
SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
|
||||||
CONSEQUENTIAL
|
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
||||||
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
|
|
||||||
OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
|
||||||
HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
|
|
||||||
STRICT
|
|
||||||
LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
|
LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
|
||||||
OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||||
* SUCH DAMAGE.
|
SUCH DAMAGE.
|
||||||
|
|
||||||
---------------------------------------------
|
---------------------------------------------
|
||||||
|
|
||||||
@ -332,8 +317,7 @@ STRICT
|
|||||||
--------------------------------------------------
|
--------------------------------------------------
|
||||||
|
|
||||||
cmake-2.4.8/Utilities/cmcurl/inet_pton.c,
|
cmake-2.4.8/Utilities/cmcurl/inet_pton.c,
|
||||||
cmake-2.4.8/Source/CTest/Curl/inet_pto
|
cmake-2.4.8/Source/CTest/Curl/inet_pton.c:
|
||||||
n.c:
|
|
||||||
This is from the BIND 4.9.4 release, modified to compile by itself
|
This is from the BIND 4.9.4 release, modified to compile by itself
|
||||||
|
|
||||||
Copyright (c) 1996 by Internet Software Consortium.
|
Copyright (c) 1996 by Internet Software Consortium.
|
||||||
@ -343,16 +327,13 @@ n.c:
|
|||||||
copyright notice and this permission notice appear in all copies.
|
copyright notice and this permission notice appear in all copies.
|
||||||
|
|
||||||
THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM
|
THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM
|
||||||
DISCLAIMS
|
DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL
|
||||||
ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED
|
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL
|
||||||
WARRANTIES
|
INTERNET SOFTWARE CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT,
|
||||||
OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL INTERNET SOFTWARE
|
OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF
|
||||||
CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
|
USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
|
||||||
DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR
|
OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||||
PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS
|
PERFORMANCE OF THIS SOFTWARE.
|
||||||
ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE
|
|
||||||
OF THIS
|
|
||||||
SOFTWARE.
|
|
||||||
|
|
||||||
-------------------------------------------------------
|
-------------------------------------------------------
|
||||||
|
|
||||||
@ -369,24 +350,19 @@ OF THIS
|
|||||||
* notice, this list of conditions and the following disclaimer in the
|
* notice, this list of conditions and the following disclaimer in the
|
||||||
* documentation and/or other materials provided with the distribution.
|
* documentation and/or other materials provided with the distribution.
|
||||||
* 3. The name of the author may not be used to endorse or promote products
|
* 3. The name of the author may not be used to endorse or promote products
|
||||||
* derived from this software without specific prior written
|
* derived from this software without specific prior written permission.
|
||||||
permission.
|
|
||||||
*
|
*
|
||||||
* THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
|
* THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND ANY
|
||||||
* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
* EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
|
||||||
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
|
* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
|
||||||
PURPOSE
|
* DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE FOR
|
||||||
* ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
|
* ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
||||||
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
|
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
|
||||||
CONSEQUENTIAL
|
* SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
|
||||||
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
|
* CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
||||||
* OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
|
||||||
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
|
|
||||||
STRICT
|
|
||||||
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
|
|
||||||
ANY WAY
|
|
||||||
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||||
** SUCH DAMAGE.
|
* SUCH DAMAGE.
|
||||||
|
|
||||||
---------------------------------------------------
|
---------------------------------------------------
|
||||||
|
|
||||||
@ -441,15 +417,12 @@ ANY WAY
|
|||||||
|
|
||||||
THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
|
THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
|
||||||
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
||||||
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
|
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
||||||
PURPOSE
|
|
||||||
ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
|
ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
|
||||||
FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
|
FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
||||||
CONSEQUENTIAL
|
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
|
||||||
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
|
SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
|
||||||
OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
||||||
HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
|
|
||||||
STRICT
|
|
||||||
LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
|
LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
|
||||||
OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||||
SUCH DAMAGE.
|
SUCH DAMAGE.
|
||||||
@ -480,59 +453,32 @@ STRICT
|
|||||||
|
|
||||||
***************************************************************************
|
***************************************************************************
|
||||||
Copyright (c) 1998 Free Software Foundation, Inc.
|
Copyright (c) 1998 Free Software Foundation, Inc.
|
||||||
*
|
|
||||||
Copyright (c) 1998,2000 Free Software Foundation, Inc.
|
Copyright (c) 1998,2000 Free Software Foundation, Inc.
|
||||||
*
|
|
||||||
|
|
||||||
*
|
Permission is hereby granted, free of charge, to any person obtaining a
|
||||||
Permission is hereby granted, free of charge, to any person obtaining
|
|
||||||
a *
|
|
||||||
copy of this software and associated documentation files (the
|
copy of this software and associated documentation files (the
|
||||||
*
|
|
||||||
"Software"), to deal in the Software without restriction, including
|
"Software"), to deal in the Software without restriction, including
|
||||||
*
|
|
||||||
without limitation the rights to use, copy, modify, merge, publish,
|
without limitation the rights to use, copy, modify, merge, publish,
|
||||||
*
|
distribute, distribute with modifications, sublicense, and/or sell copies
|
||||||
distribute, distribute with modifications, sublicense, and/or sell
|
of the Software, and to permit persons to whom the Software is furnished
|
||||||
*
|
to do so, subject to the following conditions:
|
||||||
copies of the Software, and to permit persons to whom the Software is
|
|
||||||
*
|
|
||||||
furnished to do so, subject to the following conditions:
|
|
||||||
*
|
|
||||||
|
|
||||||
*
|
The above copyright notice and this permission notice shall be included in
|
||||||
The above copyright notice and this permission notice shall be
|
all copies or substantial portions of the Software.
|
||||||
included *
|
|
||||||
in all copies or substantial portions of the Software.
|
|
||||||
*
|
|
||||||
|
|
||||||
*
|
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||||
EXPRESS *
|
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
|
||||||
OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
|
||||||
*
|
|
||||||
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
|
||||||
NONINFRINGEMENT. *
|
|
||||||
IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY
|
|
||||||
CLAIM, *
|
|
||||||
DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
|
DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
|
||||||
*
|
OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
|
||||||
OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR
|
USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||||
*
|
|
||||||
THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
|
||||||
*
|
|
||||||
|
|
||||||
*
|
|
||||||
|
|
||||||
*
|
Except as contained in this notice, the name(s) of the above copyright
|
||||||
Except as contained in this notice, the name(s) of the above
|
holders shall not be used in advertising or otherwise to promote the sale,
|
||||||
copyright *
|
use or other dealings in this Software without prior written
|
||||||
holders shall not be used in advertising or otherwise to promote the
|
|
||||||
*
|
|
||||||
sale, use or other dealings in this Software without prior written
|
|
||||||
*
|
|
||||||
authorization.
|
authorization.
|
||||||
*
|
|
||||||
***************************************************************************
|
***************************************************************************
|
||||||
|
|
||||||
------------------------------------------------------
|
------------------------------------------------------
|
||||||
@ -551,30 +497,25 @@ copyright *
|
|||||||
3. The name of the author may not be used to endorse or promote products
|
3. The name of the author may not be used to endorse or promote products
|
||||||
derived from this software without specific prior written permission.
|
derived from this software without specific prior written permission.
|
||||||
|
|
||||||
THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESS OR IMPLIED
|
THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES,
|
||||||
WARRANTIES,
|
|
||||||
INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY
|
INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY
|
||||||
AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
|
AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
|
||||||
THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
|
THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
|
||||||
EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
|
EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
|
||||||
PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
|
PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
|
||||||
PROFITS;
|
PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
|
||||||
OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
|
LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
|
||||||
WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
|
NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
||||||
OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
|
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||||
ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
||||||
|
|
||||||
THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
|
THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND ANY
|
||||||
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
|
||||||
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
|
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
|
||||||
PURPOSE
|
DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE FOR
|
||||||
ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
|
ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
||||||
FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
|
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
|
||||||
CONSEQUENTIAL
|
SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
|
||||||
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
|
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
||||||
OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
|
||||||
HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
|
|
||||||
STRICT
|
|
||||||
LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
|
LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
|
||||||
OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||||
SUCH DAMAGE.
|
SUCH DAMAGE.
|
||||||
@ -586,7 +527,6 @@ Fred Fish's Dbug Library
|
|||||||
|
|
||||||
Use of any of this software is governed by the terms of the license below:
|
Use of any of this software is governed by the terms of the license below:
|
||||||
|
|
||||||
*
|
|
||||||
* N O T I C E *
|
* N O T I C E *
|
||||||
* *
|
* *
|
||||||
* Copyright Abandoned, 1987, Fred Fish *
|
* Copyright Abandoned, 1987, Fred Fish *
|
||||||
@ -610,7 +550,6 @@ Use of any of this software is governed by the terms of the license below:
|
|||||||
* The author makes no warranty of any kind with respect to this *
|
* The author makes no warranty of any kind with respect to this *
|
||||||
* product and explicitly disclaims any implied warranties of mer- *
|
* product and explicitly disclaims any implied warranties of mer- *
|
||||||
* chantability or fitness for any particular purpose. *
|
* chantability or fitness for any particular purpose. *
|
||||||
*
|
|
||||||
|
|
||||||
***************************************************************************
|
***************************************************************************
|
||||||
|
|
||||||
@ -619,7 +558,6 @@ dbug_analyze.c (part of Fred Fish's Dbug Library)
|
|||||||
|
|
||||||
Use of any of this software is governed by the terms of the license below:
|
Use of any of this software is governed by the terms of the license below:
|
||||||
|
|
||||||
* *
|
|
||||||
* Copyright Abandoned, 1987, Fred Fish *
|
* Copyright Abandoned, 1987, Fred Fish *
|
||||||
* *
|
* *
|
||||||
* *
|
* *
|
||||||
@ -640,7 +578,7 @@ Use of any of this software is governed by the terms of the license below:
|
|||||||
* *
|
* *
|
||||||
* The author makes no warranty of any kind with respect to this *
|
* The author makes no warranty of any kind with respect to this *
|
||||||
* product and explicitly disclaims any implied warranties of mer- *
|
* product and explicitly disclaims any implied warranties of mer- *
|
||||||
* chantability or fitness for any particular purpose.
|
* chantability or fitness for any particular purpose. *
|
||||||
|
|
||||||
***************************************************************************
|
***************************************************************************
|
||||||
|
|
||||||
@ -1454,11 +1392,9 @@ text:
|
|||||||
Library General Public License for more details.
|
Library General Public License for more details.
|
||||||
|
|
||||||
You should have received a copy of the GNU Library General Public
|
You should have received a copy of the GNU Library General Public
|
||||||
License along with the GNU C Library; see the file COPYING.LIB. If
|
License along with the GNU C Library; see the file COPYING.LIB. If not,
|
||||||
not,
|
write to the Free Software Foundation, Inc., 59 Temple Place - Suite
|
||||||
write to the Free Software Foundation, Inc., 59 Temple Place -
|
330, Boston, MA 02111-1307, USA. */
|
||||||
Suite 330,
|
|
||||||
Boston, MA 02111-1307, USA. */
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@ -1549,101 +1485,118 @@ Use of any of this software is governed by the terms of the license below:
|
|||||||
Unicode Terms of Use
|
Unicode Terms of Use
|
||||||
|
|
||||||
For the general privacy policy governing access to this site, see the
|
For the general privacy policy governing access to this site, see the
|
||||||
Unicode Privacy Policy. For trademark usage, see the Unicode Consortium®
|
Unicode Privacy Policy. For trademark usage, see the Unicode
|
||||||
Trademarks and Logo Policy.
|
Consortium (R) Trademarks and Logo Policy.
|
||||||
Notice to End User: Terms of Use
|
Notice to End User: Terms of Use
|
||||||
Carefully read the following legal agreement ("Agreement"). Use or copying
|
Carefully read the following legal agreement ("Agreement"). Use or
|
||||||
of the software and/or codes provided with this agreement (The "Software")
|
copying of the software and/or codes provided with this agreement (The
|
||||||
constitutes your acceptance of these terms
|
"Software") constitutes your acceptance of these terms
|
||||||
|
|
||||||
1. Unicode Copyright.
|
1. Unicode Copyright.
|
||||||
1. Copyright © 1991-2008 Unicode, Inc. All rights reserved.
|
1. Copyright (c) 1991-2008 Unicode, Inc. All rights reserved.
|
||||||
2. Certain documents and files on this website contain a legend
|
2. Certain documents and files on this website contain a
|
||||||
indicating that "Modification is permitted." Any person is hereby authorized,
|
legend indicating that "Modification is permitted." Any person
|
||||||
without fee, to modify such documents and files to create derivative works
|
is hereby authorized, without fee, to modify such documents
|
||||||
conforming to the Unicode® Standard, subject to Terms and Conditions herein.
|
and files to create derivative works conforming to the
|
||||||
|
Unicode (R) Standard, subject to Terms and Conditions herein.
|
||||||
3. Any person is hereby authorized, without fee, to view, use,
|
3. Any person is hereby authorized, without fee, to view, use,
|
||||||
reproduce, and distribute all documents and files solely for informational
|
reproduce, and distribute all documents and files solely for
|
||||||
purposes in the creation of products supporting the Unicode Standard, subject to
|
informational purposes in the creation of products supporting
|
||||||
the Terms and Conditions herein.
|
the Unicode Standard, subject to the Terms and Conditions
|
||||||
4. Further specifications of rights and restrictions pertaining to
|
herein.
|
||||||
the use of the particular set of data files known as the "Unicode Character
|
4. Further specifications of rights and restrictions
|
||||||
Database" can be found in Exhibit 1.
|
pertaining to the use of the particular set of data files
|
||||||
5. Each version of the Unicode Standard has further specifications
|
known as the "Unicode Character Database" can be found in
|
||||||
of rights and restrictions of use. For the book editions, these are found on the
|
Exhibit 1.
|
||||||
back of the title page. For the online edition, certain files (such as the PDF
|
5. Each version of the Unicode Standard has further
|
||||||
files for book chapters and code charts) carry specific restrictions. All other
|
specifications of rights and restrictions of use. For the book
|
||||||
files are covered under these general Terms of Use. To request a permission to
|
editions, these are found on the back of the title page. For
|
||||||
reproduce any part of the Unicode Standard, please contact the Unicode Consortium.
|
the online edition, certain files (such as the PDF files for
|
||||||
6. No license is granted to "mirror" the Unicode website where a
|
book chapters and code charts) carry specific restrictions.
|
||||||
fee is charged for access to the "mirror" site.
|
All other files are covered under these general Terms of Use.
|
||||||
7. Modification is not permitted with respect to this document. All
|
To request a permission to reproduce any part of the Unicode
|
||||||
copies of this document must be verbatim.
|
Standard, please contact the Unicode Consortium.
|
||||||
|
6. No license is granted to "mirror" the Unicode website where
|
||||||
|
a fee is charged for access to the "mirror" site.
|
||||||
|
7. Modification is not permitted with respect to this
|
||||||
|
document. All copies of this document must be verbatim.
|
||||||
2. Restricted Rights Legend. Any technical data or software which is
|
2. Restricted Rights Legend. Any technical data or software which is
|
||||||
licensed to the United States of America, its agencies and/or instrumentalities
|
licensed to the United States of America, its agencies and/or
|
||||||
under this Agreement is commercial technical data or commercial computer
|
instrumentalities under this Agreement is commercial technical data
|
||||||
software developed exclusively at private expense as defined in FAR 2.101, or
|
or commercial computer software developed exclusively at private
|
||||||
DFARS 252.227-7014 (June 1995), as applicable. For technical data, use,
|
expense as defined in FAR 2.101, or DFARS 252.227-7014 (June 1995),
|
||||||
duplication, or disclosure by the Government is subject to restrictions as set
|
as applicable. For technical data, use, duplication, or disclosure
|
||||||
forth in DFARS 202.227-7015 Technical Data, Commercial and Items (Nov 1995) and
|
by the Government is subject to restrictions as set forth in DFARS
|
||||||
this Agreement. For Software, in accordance with FAR 12-212 or DFARS 227-7202,
|
202.227-7015 Technical Data, Commercial and Items (Nov 1995) and
|
||||||
as applicable, use, duplication or disclosure by the Government is subject to
|
this Agreement. For Software, in accordance with FAR 12-212 or DFARS
|
||||||
the restrictions set forth in this Agreement.
|
227-7202, as applicable, use, duplication or disclosure by the
|
||||||
|
Government is subject to the restrictions set forth in this
|
||||||
|
Agreement.
|
||||||
3. Warranties and Disclaimers.
|
3. Warranties and Disclaimers.
|
||||||
1. This publication and/or website may include technical or
|
1. This publication and/or website may include technical or
|
||||||
typographical errors or other inaccuracies . Changes are periodically added to
|
typographical errors or other inaccuracies . Changes are
|
||||||
the information herein; these changes will be incorporated in new editions of
|
periodically added to the information herein; these changes
|
||||||
the publication and/or website. Unicode may make improvements and/or changes in
|
will be incorporated in new editions of the publication and/or
|
||||||
the product(s) and/or program(s) described in this publication and/or website at
|
website. Unicode may make improvements and/or changes in the
|
||||||
any time.
|
product(s) and/or program(s) described in this publication
|
||||||
2. If this file has been purchased on magnetic or optical media
|
and/or website at any time.
|
||||||
from Unicode, Inc. the sole and exclusive remedy for any claim will be exchange
|
2. If this file has been purchased on magnetic or optical
|
||||||
of the defective media within ninety (90) days of original purchase.
|
media from Unicode, Inc. the sole and exclusive remedy for any
|
||||||
|
claim will be exchange of the defective media within ninety
|
||||||
|
(90) days of original purchase.
|
||||||
3. EXCEPT AS PROVIDED IN SECTION C.2, THIS PUBLICATION AND/OR
|
3. EXCEPT AS PROVIDED IN SECTION C.2, THIS PUBLICATION AND/OR
|
||||||
SOFTWARE IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND EITHER EXPRESS,
|
SOFTWARE IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND
|
||||||
IMPLIED, OR STATUTORY, INCLUDING, BUT NOT LIMITED TO, ANY WARRANTIES OF
|
EITHER EXPRESS, IMPLIED, OR STATUTORY, INCLUDING, BUT NOT
|
||||||
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT. UNICODE
|
LIMITED TO, ANY WARRANTIES OF MERCHANTABILITY, FITNESS FOR A
|
||||||
AND ITS LICENSORS ASSUME NO RESPONSIBILITY FOR ERRORS OR OMISSIONS IN THIS
|
PARTICULAR PURPOSE, OR NON-INFRINGEMENT. UNICODE AND ITS
|
||||||
PUBLICATION AND/OR SOFTWARE OR OTHER DOCUMENTS WHICH ARE REFERENCED BY OR LINKED
|
LICENSORS ASSUME NO RESPONSIBILITY FOR ERRORS OR OMISSIONS IN
|
||||||
TO THIS PUBLICATION OR THE UNICODE WEBSITE.
|
THIS PUBLICATION AND/OR SOFTWARE OR OTHER DOCUMENTS WHICH ARE
|
||||||
|
REFERENCED BY OR LINKED TO THIS PUBLICATION OR THE UNICODE
|
||||||
|
WEBSITE.
|
||||||
4. Waiver of Damages. In no event shall Unicode or its licensors be
|
4. Waiver of Damages. In no event shall Unicode or its licensors be
|
||||||
liable for any special, incidental, indirect or consequential damages of any
|
liable for any special, incidental, indirect or consequential
|
||||||
kind, or any damages whatsoever, whether or not Unicode was advised of the
|
damages of any kind, or any damages whatsoever, whether or not
|
||||||
possibility of the damage, including, without limitation, those resulting from
|
Unicode was advised of the possibility of the damage, including,
|
||||||
the following: loss of use, data or profits, in connection with the use,
|
without limitation, those resulting from the following: loss of use,
|
||||||
modification or distribution of this information or its derivatives.
|
data or profits, in connection with the use, modification or
|
||||||
|
distribution of this information or its derivatives.
|
||||||
5. Trademarks.
|
5. Trademarks.
|
||||||
1. Unicode and the Unicode logo are registered trademarks of
|
1. Unicode and the Unicode logo are registered trademarks of
|
||||||
Unicode, Inc.
|
Unicode, Inc.
|
||||||
2. This site contains product names and corporate names of other
|
2. This site contains product names and corporate names of
|
||||||
companies. All product names and company names and logos mentioned herein are
|
other companies. All product names and company names and logos
|
||||||
the trademarks or registered trademarks of their respective owners. Other
|
mentioned herein are the trademarks or registered trademarks
|
||||||
products and corporate names mentioned herein which are trademarks of a third
|
of their respective owners. Other products and corporate names
|
||||||
party are used only for explanation and for the owners' benefit and with no
|
mentioned herein which are trademarks of a third party are
|
||||||
intent to infringe.
|
used only for explanation and for the owners' benefit and with
|
||||||
3. Use of third party products or information referred to herein is
|
no intent to infringe.
|
||||||
at the user’s risk.
|
3. Use of third party products or information referred to
|
||||||
|
herein is at the user's risk.
|
||||||
6. Miscellaneous.
|
6. Miscellaneous.
|
||||||
1. Jurisdiction and Venue. This server is operated from a location
|
1. Jurisdiction and Venue. This server is operated from a
|
||||||
in the State of California, United States of America. Unicode makes no
|
location in the State of California, United States of America.
|
||||||
representation that the materials are appropriate for use in other locations. If
|
Unicode makes no representation that the materials are
|
||||||
you access this server from other locations, you are responsible for compliance
|
appropriate for use in other locations. If you access this
|
||||||
with local laws. This Agreement, all use of this site and any claims and damages
|
server from other locations, you are responsible for
|
||||||
resulting from use of this site are governed solely by the laws of the State of
|
compliance with local laws. This Agreement, all use of this
|
||||||
California without regard to any principles which would apply the laws of a
|
site and any claims and damages resulting from use of this
|
||||||
different jurisdiction. The user agrees that any disputes regarding this site
|
site are governed solely by the laws of the State of
|
||||||
shall be resolved solely in the courts located in Santa Clara County,
|
California without regard to any principles which would apply
|
||||||
California. The user agrees said courts have personal jurisdiction and agree to
|
the laws of a different jurisdiction. The user agrees that any
|
||||||
|
disputes regarding this site shall be resolved solely in the
|
||||||
|
courts located in Santa Clara County, California. The user
|
||||||
|
agrees said courts have personal jurisdiction and agree to
|
||||||
waive any right to transfer the dispute to any other forum.
|
waive any right to transfer the dispute to any other forum.
|
||||||
2. Modification by Unicode Unicode shall have the right to modify
|
2. Modification by Unicode Unicode shall have the right to
|
||||||
this Agreement at any time by posting it to this site. The user may not assign
|
modify this Agreement at any time by posting it to this site.
|
||||||
any part of this Agreement without Unicode’s prior written consent.
|
The user may not assign any part of this Agreement without
|
||||||
3. Taxes. The user agrees to pay any taxes arising from access to
|
Unicode's prior written consent.
|
||||||
this website or use of the information herein, except for those based on
|
3. Taxes. The user agrees to pay any taxes arising from access
|
||||||
Unicode’s net income.
|
to this website or use of the information herein, except for
|
||||||
4. Severability. If any provision of this Agreement is declared
|
those based on Unicode's net income.
|
||||||
invalid or unenforceable, the remaining provisions of this Agreement shall
|
4. Severability. If any provision of this Agreement is
|
||||||
remain in effect.
|
declared invalid or unenforceable, the remaining provisions of
|
||||||
|
this Agreement shall remain in effect.
|
||||||
5. Entire Agreement. This Agreement constitutes the entire
|
5. Entire Agreement. This Agreement constitutes the entire
|
||||||
agreement between the parties.
|
agreement between the parties.
|
||||||
|
|
||||||
@ -1666,7 +1619,7 @@ OR SOFTWARE.
|
|||||||
|
|
||||||
COPYRIGHT AND PERMISSION NOTICE
|
COPYRIGHT AND PERMISSION NOTICE
|
||||||
|
|
||||||
Copyright © 1991-2008 Unicode, Inc. All rights reserved. Distributed under
|
Copyright (c) 1991-2008 Unicode, Inc. All rights reserved. Distributed under
|
||||||
the Terms of Use in http://www.unicode.org/copyright.html.
|
the Terms of Use in http://www.unicode.org/copyright.html.
|
||||||
|
|
||||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
@ -2295,8 +2248,7 @@ Use of any of this software is governed by the terms of the license below:
|
|||||||
|
|
||||||
You should have received a copy of the GNU General Public License
|
You should have received a copy of the GNU General Public License
|
||||||
along with this program; if not, write to the Free Software
|
along with this program; if not, write to the Free Software
|
||||||
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
|
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||||
02111-1307, USA.
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
**********************************************************************
|
**********************************************************************
|
2
VERSION
2
VERSION
@ -1,4 +1,4 @@
|
|||||||
MYSQL_VERSION_MAJOR=5
|
MYSQL_VERSION_MAJOR=5
|
||||||
MYSQL_VERSION_MINOR=5
|
MYSQL_VERSION_MINOR=5
|
||||||
MYSQL_VERSION_PATCH=8
|
MYSQL_VERSION_PATCH=9
|
||||||
MYSQL_VERSION_EXTRA=
|
MYSQL_VERSION_EXTRA=
|
||||||
|
@ -26,7 +26,7 @@
|
|||||||
# Build as per default RPM layout, with prefix=/usr
|
# Build as per default RPM layout, with prefix=/usr
|
||||||
#
|
#
|
||||||
# DEB
|
# DEB
|
||||||
# Build as per STANDALONE, prefix=/opt/mysql-$major.$minor
|
# Build as per STANDALONE, prefix=/opt/mysql/server-$major.$minor
|
||||||
#
|
#
|
||||||
# SVR4
|
# SVR4
|
||||||
# Solaris package layout suitable for pkg* tools, prefix=/opt/mysql/mysql
|
# Solaris package layout suitable for pkg* tools, prefix=/opt/mysql/mysql
|
||||||
@ -74,7 +74,7 @@ IF(UNIX)
|
|||||||
IF(INSTALL_LAYOUT MATCHES "RPM")
|
IF(INSTALL_LAYOUT MATCHES "RPM")
|
||||||
SET(default_prefix "/usr")
|
SET(default_prefix "/usr")
|
||||||
ELSEIF(INSTALL_LAYOUT MATCHES "DEB")
|
ELSEIF(INSTALL_LAYOUT MATCHES "DEB")
|
||||||
SET(default_prefix "/opt/${MYSQL_BASE_VERSION}")
|
SET(default_prefix "/opt/mysql/server-${MYSQL_BASE_VERSION}")
|
||||||
# This is required to avoid "cpack -GDEB" default of prefix=/usr
|
# This is required to avoid "cpack -GDEB" default of prefix=/usr
|
||||||
SET(CPACK_SET_DESTDIR ON)
|
SET(CPACK_SET_DESTDIR ON)
|
||||||
ELSEIF(INSTALL_LAYOUT MATCHES "SVR4")
|
ELSEIF(INSTALL_LAYOUT MATCHES "SVR4")
|
||||||
|
@ -9,6 +9,7 @@ funcs_1.myisam_views @solaris # Bug#50595 2010-03-05 alik funcs_1.myi
|
|||||||
innodb.innodb_information_schema # Bug#48883 2010-05-11 alik Test "innodb_information_schema" takes fewer locks than expected
|
innodb.innodb_information_schema # Bug#48883 2010-05-11 alik Test "innodb_information_schema" takes fewer locks than expected
|
||||||
|
|
||||||
main.func_math @freebsd # Bug#43020 2010-05-04 alik main.func_math fails on FreeBSD in PB2
|
main.func_math @freebsd # Bug#43020 2010-05-04 alik main.func_math fails on FreeBSD in PB2
|
||||||
|
main.gis # Bug#52208 2010-11-24 alik gis fails on some platforms (Solaris, HP-UX, Linux)
|
||||||
main.gis-rtree @freebsd # Bug#38965 2010-05-04 alik test cases gis-rtree, type_float, type_newdecimal fail in embedded server
|
main.gis-rtree @freebsd # Bug#38965 2010-05-04 alik test cases gis-rtree, type_float, type_newdecimal fail in embedded server
|
||||||
main.information_schema # Bug#47449 2009-09-19 alik main.information_schema and innodb.innodb_information_schema fail sporadically
|
main.information_schema # Bug#47449 2009-09-19 alik main.information_schema and innodb.innodb_information_schema fail sporadically
|
||||||
main.lock_multi_bug38499 # Bug#47448 2009-09-19 alik main.lock_multi_bug38499 times out sporadically
|
main.lock_multi_bug38499 # Bug#47448 2009-09-19 alik main.lock_multi_bug38499 times out sporadically
|
||||||
@ -16,6 +17,7 @@ main.lock_multi_bug38691 @solaris # Bug#47792 2009-10-02 alik main.lock_m
|
|||||||
main.log_tables # Bug#47924 2009-10-08 alik main.log_tables times out sporadically
|
main.log_tables # Bug#47924 2009-10-08 alik main.log_tables times out sporadically
|
||||||
main.lowercase_table2 @darwin # Bug#55509 2010-07-26 alik main.lowercase_table2 fails on Mac OSX (again)
|
main.lowercase_table2 @darwin # Bug#55509 2010-07-26 alik main.lowercase_table2 fails on Mac OSX (again)
|
||||||
main.outfile_loaddata @solaris # Bug#46895 2010-01-20 alik Test "outfile_loaddata" fails (reproducible)
|
main.outfile_loaddata @solaris # Bug#46895 2010-01-20 alik Test "outfile_loaddata" fails (reproducible)
|
||||||
|
main.show_check # Bug#58414 2010-11-24 alik Race condition in show_check.test
|
||||||
main.signal_demo3 @solaris # Bug#47791 2010-01-20 alik Several test cases fail on Solaris with error Thread stack overrun
|
main.signal_demo3 @solaris # Bug#47791 2010-01-20 alik Several test cases fail on Solaris with error Thread stack overrun
|
||||||
main.sp @solaris # Bug#47791 2010-01-20 alik Several test cases fail on Solaris with error Thread stack overrun
|
main.sp @solaris # Bug#47791 2010-01-20 alik Several test cases fail on Solaris with error Thread stack overrun
|
||||||
main.type_float @freebsd # Bug#38965 2010-05-04 alik test cases gis-rtree, type_float, type_newdecimal fail in embedded server
|
main.type_float @freebsd # Bug#38965 2010-05-04 alik test cases gis-rtree, type_float, type_newdecimal fail in embedded server
|
||||||
@ -26,6 +28,7 @@ rpl.rpl_heartbeat_2slaves # BUG#43828 2009-10-22 luis fails spora
|
|||||||
rpl.rpl_innodb_bug28430* # Bug#46029
|
rpl.rpl_innodb_bug28430* # Bug#46029
|
||||||
|
|
||||||
sys_vars.max_sp_recursion_depth_func @solaris # Bug#47791 2010-01-20 alik Several test cases fail on Solaris with error Thread stack overrun
|
sys_vars.max_sp_recursion_depth_func @solaris # Bug#47791 2010-01-20 alik Several test cases fail on Solaris with error Thread stack overrun
|
||||||
|
sys_vars.plugin_dir_basic # Bug#52223 2010-11-24 alik Test "plugin_dir_basic" does not support RPM build (test) directory structure
|
||||||
sys_vars.slow_query_log_func @solaris # Bug#54819 2010-06-26 alik sys_vars.slow_query_log_func fails sporadically on Solaris 10
|
sys_vars.slow_query_log_func @solaris # Bug#54819 2010-06-26 alik sys_vars.slow_query_log_func fails sporadically on Solaris 10
|
||||||
sys_vars.wait_timeout_func # Bug#41255 2010-04-26 alik wait_timeout_func fails
|
sys_vars.wait_timeout_func # Bug#41255 2010-04-26 alik wait_timeout_func fails
|
||||||
|
|
||||||
|
@ -1384,7 +1384,7 @@ sub command_line_setup {
|
|||||||
# Add the location for libmysqld.dll to the path.
|
# Add the location for libmysqld.dll to the path.
|
||||||
my $separator= ";";
|
my $separator= ";";
|
||||||
my $lib_mysqld=
|
my $lib_mysqld=
|
||||||
mtr_path_exists(vs_config_dirs('libmysqld',''));
|
mtr_path_exists("$bindir/lib", vs_config_dirs('libmysqld',''));
|
||||||
if ( IS_CYGWIN )
|
if ( IS_CYGWIN )
|
||||||
{
|
{
|
||||||
$lib_mysqld= posix_path($lib_mysqld);
|
$lib_mysqld= posix_path($lib_mysqld);
|
||||||
|
@ -410,6 +410,15 @@ hex(cast(_ascii 0x7f as char(1) character set latin1))
|
|||||||
7F
|
7F
|
||||||
End of 5.0 tests
|
End of 5.0 tests
|
||||||
#
|
#
|
||||||
|
# Bug#58022 ... like ... escape export_set ( ... ) crashes when export_set returns warnings
|
||||||
|
#
|
||||||
|
SELECT '' LIKE '' ESCAPE EXPORT_SET(1, 1, 1, 1, '');
|
||||||
|
'' LIKE '' ESCAPE EXPORT_SET(1, 1, 1, 1, '')
|
||||||
|
1
|
||||||
|
Warnings:
|
||||||
|
Warning 1292 Truncated incorrect INTEGER value: ''
|
||||||
|
End of 5.1 tests
|
||||||
|
#
|
||||||
# Start of 5.5 tests
|
# Start of 5.5 tests
|
||||||
#
|
#
|
||||||
#
|
#
|
||||||
|
@ -2374,6 +2374,16 @@ hex(convert(_latin1 0xA4A2 using ujis)) hex(c2)
|
|||||||
DROP PROCEDURE sp1;
|
DROP PROCEDURE sp1;
|
||||||
DROP TABLE t1;
|
DROP TABLE t1;
|
||||||
DROP TABLE t2;
|
DROP TABLE t2;
|
||||||
|
#
|
||||||
|
# Bug#57257 Replace(ExtractValue(...)) causes MySQL crash
|
||||||
|
#
|
||||||
|
SET NAMES utf8;
|
||||||
|
SELECT CONVERT(REPLACE(EXPORT_SET('a','a','a','','a'),'00','') USING ujis);
|
||||||
|
CONVERT(REPLACE(EXPORT_SET('a','a','a','','a'),'00','') USING ujis)
|
||||||
|
|
||||||
|
Warnings:
|
||||||
|
Warning 1292 Truncated incorrect INTEGER value: 'a'
|
||||||
|
Warning 1292 Truncated incorrect INTEGER value: 'a'
|
||||||
set names default;
|
set names default;
|
||||||
set character_set_database=default;
|
set character_set_database=default;
|
||||||
set character_set_server=default;
|
set character_set_server=default;
|
||||||
|
@ -625,16 +625,16 @@ INSERT INTO t1 VALUES (_utf8mb4 0xCE85),(_utf8mb4 0xF4808080);
|
|||||||
SELECT HEX(a), HEX(CONVERT(a USING utf8mb4)) FROM t1 ORDER BY a;
|
SELECT HEX(a), HEX(CONVERT(a USING utf8mb4)) FROM t1 ORDER BY a;
|
||||||
HEX(a) HEX(CONVERT(a USING utf8mb4))
|
HEX(a) HEX(CONVERT(a USING utf8mb4))
|
||||||
0385 CE85
|
0385 CE85
|
||||||
|
FF9D EFBE9D
|
||||||
D800DF84 F0908E84
|
D800DF84 F0908E84
|
||||||
DBC0DC00 F4808080
|
DBC0DC00 F4808080
|
||||||
FF9D EFBE9D
|
|
||||||
ALTER TABLE t1 ADD KEY(a);
|
ALTER TABLE t1 ADD KEY(a);
|
||||||
SELECT HEX(a), HEX(CONVERT(a USING utf8mb4)) FROM t1 ORDER BY a;
|
SELECT HEX(a), HEX(CONVERT(a USING utf8mb4)) FROM t1 ORDER BY a;
|
||||||
HEX(a) HEX(CONVERT(a USING utf8mb4))
|
HEX(a) HEX(CONVERT(a USING utf8mb4))
|
||||||
0385 CE85
|
0385 CE85
|
||||||
|
FF9D EFBE9D
|
||||||
D800DF84 F0908E84
|
D800DF84 F0908E84
|
||||||
DBC0DC00 F4808080
|
DBC0DC00 F4808080
|
||||||
FF9D EFBE9D
|
|
||||||
DROP TABLE IF EXISTS t1;
|
DROP TABLE IF EXISTS t1;
|
||||||
select @@collation_connection;
|
select @@collation_connection;
|
||||||
@@collation_connection
|
@@collation_connection
|
||||||
|
@ -4918,5 +4918,16 @@ maketime(`a`,`a`,`a`)
|
|||||||
DROP TABLE t1;
|
DROP TABLE t1;
|
||||||
SET sql_mode=default;
|
SET sql_mode=default;
|
||||||
#
|
#
|
||||||
|
# Bug#57687 crash when reporting duplicate group_key error and utf8
|
||||||
|
# Make sure to modify this when Bug#58081 is fixed.
|
||||||
|
#
|
||||||
|
SET NAMES utf8;
|
||||||
|
CREATE TABLE t1 (a INT);
|
||||||
|
INSERT INTO t1 VALUES (0), (0), (1), (0), (0);
|
||||||
|
SELECT COUNT(*) FROM t1, t1 t2
|
||||||
|
GROUP BY INSERT('', t2.a, t1.a, (@@global.max_binlog_size));
|
||||||
|
ERROR 23000: Duplicate entry '107374182410737418241' for key 'group_key'
|
||||||
|
DROP TABLE t1;
|
||||||
|
#
|
||||||
# End of 5.5 tests
|
# End of 5.5 tests
|
||||||
#
|
#
|
||||||
|
@ -544,3 +544,17 @@ SELECT DATE_FORMAT("2009-01-01",'%W %d %M %Y') as valid_date;
|
|||||||
valid_date
|
valid_date
|
||||||
Thursday 01 January 2009
|
Thursday 01 January 2009
|
||||||
"End of 5.0 tests"
|
"End of 5.0 tests"
|
||||||
|
#
|
||||||
|
# Start of 5.1 tests
|
||||||
|
#
|
||||||
|
#
|
||||||
|
# Bug#58005 utf8 + get_format causes failed assertion: !str || str != Ptr'
|
||||||
|
#
|
||||||
|
SET NAMES utf8;
|
||||||
|
SELECT LEAST('%', GET_FORMAT(datetime, 'eur'), CAST(GET_FORMAT(datetime, 'eur') AS CHAR(65535)));
|
||||||
|
LEAST('%', GET_FORMAT(datetime, 'eur'), CAST(GET_FORMAT(datetime, 'eur') AS CHAR(65535)))
|
||||||
|
%
|
||||||
|
SET NAMES latin1;
|
||||||
|
#
|
||||||
|
# End of 5.1 tests
|
||||||
|
#
|
||||||
|
@ -381,6 +381,15 @@ GREATEST(a, (SELECT b FROM t1 LIMIT 1))
|
|||||||
3
|
3
|
||||||
1
|
1
|
||||||
DROP TABLE t1;
|
DROP TABLE t1;
|
||||||
|
SELECT INET_NTOA(0);
|
||||||
|
INET_NTOA(0)
|
||||||
|
0.0.0.0
|
||||||
|
SELECT '1' IN ('1', INET_NTOA(0));
|
||||||
|
'1' IN ('1', INET_NTOA(0))
|
||||||
|
1
|
||||||
|
#
|
||||||
|
# End of 5.1 tests
|
||||||
|
#
|
||||||
#
|
#
|
||||||
# Bug #58199: name_const in the having clause crashes
|
# Bug #58199: name_const in the having clause crashes
|
||||||
#
|
#
|
||||||
@ -388,4 +397,9 @@ CREATE TABLE t1 (a INT);
|
|||||||
SELECT 1 from t1 HAVING NAME_CONST('', a);
|
SELECT 1 from t1 HAVING NAME_CONST('', a);
|
||||||
ERROR HY000: Incorrect arguments to NAME_CONST
|
ERROR HY000: Incorrect arguments to NAME_CONST
|
||||||
DROP TABLE t1;
|
DROP TABLE t1;
|
||||||
End of tests
|
#
|
||||||
|
# End of 5.5 tests
|
||||||
|
#
|
||||||
|
#
|
||||||
|
# End of tests
|
||||||
|
#
|
||||||
|
@ -738,3 +738,38 @@ SET DEBUG_SYNC= 'now SIGNAL release_thrlock';
|
|||||||
# Connection default
|
# Connection default
|
||||||
DROP TABLE t1;
|
DROP TABLE t1;
|
||||||
SET DEBUG_SYNC= 'RESET';
|
SET DEBUG_SYNC= 'RESET';
|
||||||
|
#
|
||||||
|
# Bug#57130 crash in Item_field::print during SHOW CREATE TABLE or VIEW
|
||||||
|
#
|
||||||
|
DROP TABLE IF EXISTS t1;
|
||||||
|
DROP VIEW IF EXISTS v1;
|
||||||
|
DROP FUNCTION IF EXISTS f1;
|
||||||
|
CREATE TABLE t1(a INT);
|
||||||
|
CREATE FUNCTION f1() RETURNS INTEGER RETURN 1;
|
||||||
|
CREATE VIEW v1 AS SELECT * FROM t1 WHERE f1() = 1;
|
||||||
|
DROP FUNCTION f1;
|
||||||
|
# Connection con1
|
||||||
|
SET DEBUG_SYNC= 'open_tables_after_open_and_process_table SIGNAL opened WAIT_FOR dropped EXECUTE 2';
|
||||||
|
# Sending:
|
||||||
|
SHOW CREATE VIEW v1;
|
||||||
|
# Connection con2
|
||||||
|
SET DEBUG_SYNC= 'now WAIT_FOR opened';
|
||||||
|
SET DEBUG_SYNC= 'now SIGNAL dropped';
|
||||||
|
SET DEBUG_SYNC= 'now WAIT_FOR opened';
|
||||||
|
# Sending:
|
||||||
|
FLUSH TABLES;
|
||||||
|
# Connection default
|
||||||
|
# Waiting for FLUSH TABLES to be blocked.
|
||||||
|
SET DEBUG_SYNC= 'now SIGNAL dropped';
|
||||||
|
# Connection con1
|
||||||
|
# Reaping: SHOW CREATE VIEW v1
|
||||||
|
View Create View character_set_client collation_connection
|
||||||
|
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select `t1`.`a` AS `a` from `t1` where (`f1`() = 1) latin1 latin1_swedish_ci
|
||||||
|
Warnings:
|
||||||
|
Warning 1356 View 'test.v1' references invalid table(s) or column(s) or function(s) or definer/invoker of view lack rights to use them
|
||||||
|
# Connection con2
|
||||||
|
# Reaping: FLUSH TABLES
|
||||||
|
# Connection default
|
||||||
|
SET DEBUG_SYNC= 'RESET';
|
||||||
|
DROP VIEW v1;
|
||||||
|
DROP TABLE t1;
|
||||||
|
@ -838,7 +838,7 @@ drop table t1;
|
|||||||
mysqltest: At line 1: change user failed: Unknown database 'inexistent'
|
mysqltest: At line 1: change user failed: Unknown database 'inexistent'
|
||||||
mysqltest: At line 1: change user failed: Access denied for user 'inexistent'@'localhost' (using password: NO)
|
mysqltest: At line 1: change user failed: Access denied for user 'inexistent'@'localhost' (using password: NO)
|
||||||
mysqltest: At line 1: change user failed: Access denied for user 'root'@'localhost' (using password: YES)
|
mysqltest: At line 1: change user failed: Access denied for user 'root'@'localhost' (using password: YES)
|
||||||
file1.txt
|
REPLACED_FILE1.txt
|
||||||
file1.txt
|
file1.txt
|
||||||
file2.txt
|
file2.txt
|
||||||
file11.txt
|
file11.txt
|
||||||
|
@ -1,3 +1,76 @@
|
|||||||
|
call mtr.add_suppression("nnoDB: Error: table `test`.`t1` .* Partition.* InnoDB internal");
|
||||||
|
#
|
||||||
|
# Bug#55091: Server crashes on ADD PARTITION after a failed attempt
|
||||||
|
#
|
||||||
|
SET @old_innodb_file_format_max = @@global.innodb_file_format_max;
|
||||||
|
SET @old_innodb_file_format = @@global.innodb_file_format;
|
||||||
|
SET @old_innodb_file_per_table = @@global.innodb_file_per_table;
|
||||||
|
SET @old_innodb_strict_mode = @@global.innodb_strict_mode;
|
||||||
|
SET @@global.innodb_file_format = Barracuda,
|
||||||
|
@@global.innodb_file_per_table = ON,
|
||||||
|
@@global.innodb_strict_mode = ON;
|
||||||
|
# Connection con1
|
||||||
|
CREATE TABLE t1 (id INT NOT NULL
|
||||||
|
PRIMARY KEY,
|
||||||
|
user_num CHAR(10)
|
||||||
|
) ENGINE = InnoDB
|
||||||
|
KEY_BLOCK_SIZE=4
|
||||||
|
PARTITION BY HASH(id) PARTITIONS 1;
|
||||||
|
t1#P#p0.ibd
|
||||||
|
t1.frm
|
||||||
|
t1.par
|
||||||
|
SHOW CREATE TABLE t1;
|
||||||
|
Table Create Table
|
||||||
|
t1 CREATE TABLE `t1` (
|
||||||
|
`id` int(11) NOT NULL,
|
||||||
|
`user_num` char(10) DEFAULT NULL,
|
||||||
|
PRIMARY KEY (`id`)
|
||||||
|
) ENGINE=InnoDB DEFAULT CHARSET=latin1 KEY_BLOCK_SIZE=4
|
||||||
|
/*!50100 PARTITION BY HASH (id)
|
||||||
|
PARTITIONS 1 */
|
||||||
|
SET GLOBAL innodb_file_per_table = OFF;
|
||||||
|
# Connection con2
|
||||||
|
LOCK TABLE t1 WRITE;
|
||||||
|
# ALTER fails because COMPRESSED/KEY_BLOCK_SIZE
|
||||||
|
# are incompatible with innodb_file_per_table = OFF;
|
||||||
|
ALTER TABLE t1 ADD PARTITION PARTITIONS 1;
|
||||||
|
ERROR HY000: Got error 1478 from storage engine
|
||||||
|
t1#P#p0.ibd
|
||||||
|
t1.frm
|
||||||
|
t1.par
|
||||||
|
# This SET is not needed to reproduce the bug,
|
||||||
|
# it is here just to make the test case more realistic
|
||||||
|
SET innodb_strict_mode = OFF;
|
||||||
|
ALTER TABLE t1 ADD PARTITION PARTITIONS 2;
|
||||||
|
Warnings:
|
||||||
|
Warning 1478 InnoDB: KEY_BLOCK_SIZE requires innodb_file_per_table.
|
||||||
|
Warning 1478 InnoDB: ignoring KEY_BLOCK_SIZE=4.
|
||||||
|
Warning 1478 InnoDB: KEY_BLOCK_SIZE requires innodb_file_per_table.
|
||||||
|
Warning 1478 InnoDB: ignoring KEY_BLOCK_SIZE=4.
|
||||||
|
Warning 1478 InnoDB: KEY_BLOCK_SIZE requires innodb_file_per_table.
|
||||||
|
Warning 1478 InnoDB: ignoring KEY_BLOCK_SIZE=4.
|
||||||
|
t1.frm
|
||||||
|
t1.par
|
||||||
|
ALTER TABLE t1 REBUILD PARTITION p0;
|
||||||
|
Warnings:
|
||||||
|
Warning 1478 InnoDB: KEY_BLOCK_SIZE requires innodb_file_per_table.
|
||||||
|
Warning 1478 InnoDB: ignoring KEY_BLOCK_SIZE=4.
|
||||||
|
UNLOCK TABLES;
|
||||||
|
SHOW CREATE TABLE t1;
|
||||||
|
Table Create Table
|
||||||
|
t1 CREATE TABLE `t1` (
|
||||||
|
`id` int(11) NOT NULL,
|
||||||
|
`user_num` char(10) DEFAULT NULL,
|
||||||
|
PRIMARY KEY (`id`)
|
||||||
|
) ENGINE=InnoDB DEFAULT CHARSET=latin1 KEY_BLOCK_SIZE=4
|
||||||
|
/*!50100 PARTITION BY HASH (id)
|
||||||
|
PARTITIONS 3 */
|
||||||
|
DROP TABLE t1;
|
||||||
|
# Connection default
|
||||||
|
SET @@global.innodb_strict_mode = @old_innodb_strict_mode;
|
||||||
|
SET @@global.innodb_file_format = @old_innodb_file_format;
|
||||||
|
SET @@global.innodb_file_per_table = @old_innodb_file_per_table;
|
||||||
|
SET @@global.innodb_file_format_max = @old_innodb_file_format_max;
|
||||||
SET NAMES utf8;
|
SET NAMES utf8;
|
||||||
CREATE TABLE `t``\""e` (a INT, PRIMARY KEY (a))
|
CREATE TABLE `t``\""e` (a INT, PRIMARY KEY (a))
|
||||||
ENGINE=InnoDB
|
ENGINE=InnoDB
|
||||||
|
@ -150,3 +150,21 @@ Warnings:
|
|||||||
Error 1547 Column count of mysql.proc is wrong. Expected 20, found 19. The table is probably corrupted
|
Error 1547 Column count of mysql.proc is wrong. Expected 20, found 19. The table is probably corrupted
|
||||||
# Restore mysql.proc.
|
# Restore mysql.proc.
|
||||||
drop table mysql.proc;
|
drop table mysql.proc;
|
||||||
|
#
|
||||||
|
# Bug#58414 mysql_upgrade fails on dump upgrade between 5.1.53 -> 5.5.8
|
||||||
|
#
|
||||||
|
DROP TABLE IF EXISTS proc_backup;
|
||||||
|
DROP DATABASE IF EXISTS db1;
|
||||||
|
# Backup the proc table
|
||||||
|
RENAME TABLE mysql.proc TO proc_backup;
|
||||||
|
CREATE TABLE mysql.proc LIKE proc_backup;
|
||||||
|
CREATE DATABASE db1;
|
||||||
|
CREATE PROCEDURE db1.p1() SET @foo = 10;
|
||||||
|
# Modify a field of the table.
|
||||||
|
ALTER TABLE mysql.proc MODIFY comment CHAR (32);
|
||||||
|
DROP DATABASE db1;
|
||||||
|
Warnings:
|
||||||
|
Error 1548 Cannot load from mysql.proc. The table is probably corrupted
|
||||||
|
# Restore mysql.proc
|
||||||
|
DROP TABLE mysql.proc;
|
||||||
|
RENAME TABLE proc_backup TO mysql.proc;
|
||||||
|
@ -78,3 +78,30 @@ COMMIT;
|
|||||||
UNLOCK TABLES;
|
UNLOCK TABLES;
|
||||||
DROP TABLE t1;
|
DROP TABLE t1;
|
||||||
SET DEBUG_SYNC='RESET';
|
SET DEBUG_SYNC='RESET';
|
||||||
|
#
|
||||||
|
# Bug#57659 Segfault in Query_cache::invalidate_data for TRUNCATE TABLE
|
||||||
|
#
|
||||||
|
# Note that this test case only reproduces the problem
|
||||||
|
# when it is run with valgrind.
|
||||||
|
DROP TABLE IF EXISTS t1, m1;
|
||||||
|
CREATE TABLE t1(a INT) engine=memory;
|
||||||
|
CREATE TABLE m1(a INT) engine=merge UNION(t1);
|
||||||
|
# Connection con1
|
||||||
|
SET DEBUG_SYNC= 'open_tables_after_open_and_process_table SIGNAL opened WAIT_FOR dropped';
|
||||||
|
# Sending:
|
||||||
|
TRUNCATE TABLE m1;
|
||||||
|
# Connection con2
|
||||||
|
SET DEBUG_SYNC= 'now WAIT_FOR opened';
|
||||||
|
# Sending:
|
||||||
|
FLUSH TABLES;
|
||||||
|
# Connection default
|
||||||
|
# Waiting for FLUSH TABLES to be blocked.
|
||||||
|
SET DEBUG_SYNC= 'now SIGNAL dropped';
|
||||||
|
# Connection con1
|
||||||
|
# Reaping: TRUNCATE TABLE m1
|
||||||
|
ERROR HY000: Unable to open underlying table which is differently defined or of non-MyISAM type or doesn't exist
|
||||||
|
# Connection con2
|
||||||
|
# Reaping: FLUSH TABLES
|
||||||
|
# Connection default
|
||||||
|
SET DEBUG_SYNC= 'RESET';
|
||||||
|
DROP TABLE m1, t1;
|
||||||
|
@ -318,4 +318,12 @@ f1 date YES NULL
|
|||||||
f2 date YES NULL
|
f2 date YES NULL
|
||||||
DROP TABLE t1;
|
DROP TABLE t1;
|
||||||
#
|
#
|
||||||
|
#
|
||||||
|
# Bug#57278: Crash on min/max + with date out of range.
|
||||||
|
#
|
||||||
|
set @a=(select min(makedate('111','1'))) ;
|
||||||
|
select @a;
|
||||||
|
@a
|
||||||
|
0111-01-01
|
||||||
|
#
|
||||||
End of 6.0 tests
|
End of 6.0 tests
|
||||||
|
@ -1094,6 +1094,19 @@ Warning 1525 Incorrect XML value: 'parse error at line 1 pos 23: unexpected END-
|
|||||||
Warning 1525 Incorrect XML value: 'parse error at line 1 pos 23: unexpected END-OF-INPUT'
|
Warning 1525 Incorrect XML value: 'parse error at line 1 pos 23: unexpected END-OF-INPUT'
|
||||||
DROP TABLE t1;
|
DROP TABLE t1;
|
||||||
#
|
#
|
||||||
|
# Bug#57257 Replace(ExtractValue(...)) causes MySQL crash
|
||||||
|
#
|
||||||
|
SET NAMES utf8;
|
||||||
|
SELECT REPLACE(EXTRACTVALUE('1', '/a'),'ds','');
|
||||||
|
REPLACE(EXTRACTVALUE('1', '/a'),'ds','')
|
||||||
|
|
||||||
|
#
|
||||||
|
# Bug #57820 extractvalue crashes
|
||||||
|
#
|
||||||
|
SELECT AVG(DISTINCT EXTRACTVALUE((''),('$@k')));
|
||||||
|
AVG(DISTINCT EXTRACTVALUE((''),('$@k')))
|
||||||
|
NULL
|
||||||
|
#
|
||||||
# Bug#57279 updatexml dies with: Assertion failed: str_arg[length] == 0
|
# Bug#57279 updatexml dies with: Assertion failed: str_arg[length] == 0
|
||||||
#
|
#
|
||||||
SELECT UPDATEXML(NULL, (LPAD(0.1111E-15, '2011', 1)), 1);
|
SELECT UPDATEXML(NULL, (LPAD(0.1111E-15, '2011', 1)), 1);
|
||||||
|
@ -11,3 +11,4 @@
|
|||||||
##############################################################################
|
##############################################################################
|
||||||
binlog_truncate_innodb : BUG#57291 2010-10-20 anitha Originally disabled due to BUG#42643. Product bug fixed, but test changes needed
|
binlog_truncate_innodb : BUG#57291 2010-10-20 anitha Originally disabled due to BUG#42643. Product bug fixed, but test changes needed
|
||||||
binlog_spurious_ddl_errors : BUG#54195 2010-06-03 alik binlog_spurious_ddl_errors.test fails, thus disabled
|
binlog_spurious_ddl_errors : BUG#54195 2010-06-03 alik binlog_spurious_ddl_errors.test fails, thus disabled
|
||||||
|
binlog_row_failure_mixing_engines : BUG#58416 2010-11-23 ramil Fails on win x86 debug_max
|
||||||
|
@ -129,6 +129,14 @@ select hex(cast(_ascii 0x7f as char(1) character set latin1));
|
|||||||
--echo End of 5.0 tests
|
--echo End of 5.0 tests
|
||||||
|
|
||||||
|
|
||||||
|
--echo #
|
||||||
|
--echo # Bug#58022 ... like ... escape export_set ( ... ) crashes when export_set returns warnings
|
||||||
|
--echo #
|
||||||
|
SELECT '' LIKE '' ESCAPE EXPORT_SET(1, 1, 1, 1, '');
|
||||||
|
|
||||||
|
--echo End of 5.1 tests
|
||||||
|
|
||||||
|
|
||||||
--echo #
|
--echo #
|
||||||
--echo # Start of 5.5 tests
|
--echo # Start of 5.5 tests
|
||||||
--echo #
|
--echo #
|
||||||
|
@ -1209,6 +1209,13 @@ DROP PROCEDURE sp1;
|
|||||||
DROP TABLE t1;
|
DROP TABLE t1;
|
||||||
DROP TABLE t2;
|
DROP TABLE t2;
|
||||||
|
|
||||||
|
--echo #
|
||||||
|
--echo # Bug#57257 Replace(ExtractValue(...)) causes MySQL crash
|
||||||
|
--echo #
|
||||||
|
SET NAMES utf8;
|
||||||
|
SELECT CONVERT(REPLACE(EXPORT_SET('a','a','a','','a'),'00','') USING ujis);
|
||||||
|
|
||||||
|
|
||||||
set names default;
|
set names default;
|
||||||
set character_set_database=default;
|
set character_set_database=default;
|
||||||
set character_set_server=default;
|
set character_set_server=default;
|
||||||
|
@ -1458,6 +1458,7 @@ SELECT HEX(INSERT(_utf8 0xD18FD18E, 2, 1, 0x20));
|
|||||||
|
|
||||||
--echo End of 5.1 tests
|
--echo End of 5.1 tests
|
||||||
|
|
||||||
|
|
||||||
--echo Start of 5.4 tests
|
--echo Start of 5.4 tests
|
||||||
|
|
||||||
#
|
#
|
||||||
@ -1537,6 +1538,18 @@ DROP TABLE t1, t2;
|
|||||||
SET NAMES utf8;
|
SET NAMES utf8;
|
||||||
--source include/ctype_numconv.inc
|
--source include/ctype_numconv.inc
|
||||||
|
|
||||||
|
--echo #
|
||||||
|
--echo # Bug#57687 crash when reporting duplicate group_key error and utf8
|
||||||
|
--echo # Make sure to modify this when Bug#58081 is fixed.
|
||||||
|
--echo #
|
||||||
|
SET NAMES utf8;
|
||||||
|
CREATE TABLE t1 (a INT);
|
||||||
|
INSERT INTO t1 VALUES (0), (0), (1), (0), (0);
|
||||||
|
--error ER_DUP_ENTRY
|
||||||
|
SELECT COUNT(*) FROM t1, t1 t2
|
||||||
|
GROUP BY INSERT('', t2.a, t1.a, (@@global.max_binlog_size));
|
||||||
|
DROP TABLE t1;
|
||||||
|
|
||||||
|
|
||||||
--echo #
|
--echo #
|
||||||
--echo # End of 5.5 tests
|
--echo # End of 5.5 tests
|
||||||
|
@ -354,3 +354,19 @@ SELECT DATE_FORMAT("0000-02-28",'%W %d %M %Y') as valid_date;
|
|||||||
SELECT DATE_FORMAT("2009-01-01",'%W %d %M %Y') as valid_date;
|
SELECT DATE_FORMAT("2009-01-01",'%W %d %M %Y') as valid_date;
|
||||||
|
|
||||||
--echo "End of 5.0 tests"
|
--echo "End of 5.0 tests"
|
||||||
|
|
||||||
|
|
||||||
|
--echo #
|
||||||
|
--echo # Start of 5.1 tests
|
||||||
|
--echo #
|
||||||
|
|
||||||
|
--echo #
|
||||||
|
--echo # Bug#58005 utf8 + get_format causes failed assertion: !str || str != Ptr'
|
||||||
|
--echo #
|
||||||
|
SET NAMES utf8;
|
||||||
|
SELECT LEAST('%', GET_FORMAT(datetime, 'eur'), CAST(GET_FORMAT(datetime, 'eur') AS CHAR(65535)));
|
||||||
|
SET NAMES latin1;
|
||||||
|
|
||||||
|
--echo #
|
||||||
|
--echo # End of 5.1 tests
|
||||||
|
--echo #
|
||||||
|
@ -600,7 +600,7 @@ DROP TABLE t1;
|
|||||||
|
|
||||||
CREATE TABLE t1(f1 VARCHAR(6) NOT NULL, FULLTEXT KEY(f1), UNIQUE(f1));
|
CREATE TABLE t1(f1 VARCHAR(6) NOT NULL, FULLTEXT KEY(f1), UNIQUE(f1));
|
||||||
INSERT INTO t1 VALUES ('test');
|
INSERT INTO t1 VALUES ('test');
|
||||||
|
--disable_warnings
|
||||||
SELECT 1 FROM t1 WHERE 1 >
|
SELECT 1 FROM t1 WHERE 1 >
|
||||||
ALL((SELECT 1 FROM t1 JOIN t1 a
|
ALL((SELECT 1 FROM t1 JOIN t1 a
|
||||||
ON (MATCH(t1.f1) against (""))
|
ON (MATCH(t1.f1) against (""))
|
||||||
@ -627,6 +627,7 @@ EXECUTE stmt;
|
|||||||
EXECUTE stmt;
|
EXECUTE stmt;
|
||||||
|
|
||||||
DEALLOCATE PREPARE stmt;
|
DEALLOCATE PREPARE stmt;
|
||||||
|
--enable_warnings
|
||||||
|
|
||||||
DROP TABLE t1;
|
DROP TABLE t1;
|
||||||
|
|
||||||
|
@ -511,6 +511,19 @@ SELECT DISTINCT GREATEST(a, (SELECT b FROM t1 LIMIT 1)) FROM t1 UNION SELECT 1;
|
|||||||
|
|
||||||
DROP TABLE t1;
|
DROP TABLE t1;
|
||||||
|
|
||||||
|
|
||||||
|
#
|
||||||
|
# Bug #57283: inet_ntoa() crashes
|
||||||
|
#
|
||||||
|
SELECT INET_NTOA(0);
|
||||||
|
SELECT '1' IN ('1', INET_NTOA(0));
|
||||||
|
|
||||||
|
|
||||||
|
--echo #
|
||||||
|
--echo # End of 5.1 tests
|
||||||
|
--echo #
|
||||||
|
|
||||||
|
|
||||||
--echo #
|
--echo #
|
||||||
--echo # Bug #58199: name_const in the having clause crashes
|
--echo # Bug #58199: name_const in the having clause crashes
|
||||||
--echo #
|
--echo #
|
||||||
@ -523,4 +536,11 @@ SELECT 1 from t1 HAVING NAME_CONST('', a);
|
|||||||
|
|
||||||
DROP TABLE t1;
|
DROP TABLE t1;
|
||||||
|
|
||||||
--echo End of tests
|
|
||||||
|
--echo #
|
||||||
|
--echo # End of 5.5 tests
|
||||||
|
--echo #
|
||||||
|
|
||||||
|
--echo #
|
||||||
|
--echo # End of tests
|
||||||
|
--echo #
|
||||||
|
@ -1078,6 +1078,65 @@ DROP TABLE t1;
|
|||||||
SET DEBUG_SYNC= 'RESET';
|
SET DEBUG_SYNC= 'RESET';
|
||||||
|
|
||||||
|
|
||||||
|
--echo #
|
||||||
|
--echo # Bug#57130 crash in Item_field::print during SHOW CREATE TABLE or VIEW
|
||||||
|
--echo #
|
||||||
|
|
||||||
|
--disable_warnings
|
||||||
|
DROP TABLE IF EXISTS t1;
|
||||||
|
DROP VIEW IF EXISTS v1;
|
||||||
|
DROP FUNCTION IF EXISTS f1;
|
||||||
|
--enable_warnings
|
||||||
|
|
||||||
|
CREATE TABLE t1(a INT);
|
||||||
|
CREATE FUNCTION f1() RETURNS INTEGER RETURN 1;
|
||||||
|
CREATE VIEW v1 AS SELECT * FROM t1 WHERE f1() = 1;
|
||||||
|
DROP FUNCTION f1;
|
||||||
|
connect(con2, localhost, root);
|
||||||
|
|
||||||
|
--echo # Connection con1
|
||||||
|
connect (con1, localhost, root);
|
||||||
|
# Need to trigger this sync point at least twice in order to
|
||||||
|
# get valgrind test failures without the patch
|
||||||
|
SET DEBUG_SYNC= 'open_tables_after_open_and_process_table SIGNAL opened WAIT_FOR dropped EXECUTE 2';
|
||||||
|
--echo # Sending:
|
||||||
|
--send SHOW CREATE VIEW v1
|
||||||
|
|
||||||
|
--echo # Connection con2
|
||||||
|
connection con2;
|
||||||
|
SET DEBUG_SYNC= 'now WAIT_FOR opened';
|
||||||
|
SET DEBUG_SYNC= 'now SIGNAL dropped';
|
||||||
|
SET DEBUG_SYNC= 'now WAIT_FOR opened';
|
||||||
|
--echo # Sending:
|
||||||
|
--send FLUSH TABLES
|
||||||
|
|
||||||
|
--echo # Connection default
|
||||||
|
connection default;
|
||||||
|
--echo # Waiting for FLUSH TABLES to be blocked.
|
||||||
|
let $wait_condition= SELECT COUNT(*)=1 FROM information_schema.processlist
|
||||||
|
WHERE state= 'Waiting for table flush' AND info= 'FLUSH TABLES';
|
||||||
|
--source include/wait_condition.inc
|
||||||
|
SET DEBUG_SYNC= 'now SIGNAL dropped';
|
||||||
|
|
||||||
|
--echo # Connection con1
|
||||||
|
connection con1;
|
||||||
|
--echo # Reaping: SHOW CREATE VIEW v1
|
||||||
|
--reap
|
||||||
|
|
||||||
|
--echo # Connection con2
|
||||||
|
connection con2;
|
||||||
|
--echo # Reaping: FLUSH TABLES
|
||||||
|
--reap
|
||||||
|
|
||||||
|
--echo # Connection default
|
||||||
|
connection default;
|
||||||
|
SET DEBUG_SYNC= 'RESET';
|
||||||
|
DROP VIEW v1;
|
||||||
|
DROP TABLE t1;
|
||||||
|
disconnect con1;
|
||||||
|
disconnect con2;
|
||||||
|
|
||||||
|
|
||||||
# Check that all connections opened by test cases in this file are really
|
# Check that all connections opened by test cases in this file are really
|
||||||
# gone so execution of other tests won't be affected by their presence.
|
# gone so execution of other tests won't be affected by their presence.
|
||||||
--source include/wait_until_count_sessions.inc
|
--source include/wait_until_count_sessions.inc
|
||||||
|
@ -2707,6 +2707,8 @@ write_file $MYSQLTEST_VARDIR/tmp/testdir/file1.txt;
|
|||||||
hello
|
hello
|
||||||
EOF
|
EOF
|
||||||
|
|
||||||
|
# Verify that --replace_result also work on list_files
|
||||||
|
--replace_result file REPLACED_FILE
|
||||||
list_files $MYSQLTEST_VARDIR/tmp/testdir;
|
list_files $MYSQLTEST_VARDIR/tmp/testdir;
|
||||||
# list_files gets the directory list before creating the new file
|
# list_files gets the directory list before creating the new file
|
||||||
list_files_write_file $MYSQLTEST_VARDIR/tmp/testdir/file2.txt $MYSQLTEST_VARDIR/tmp/testdir *;
|
list_files_write_file $MYSQLTEST_VARDIR/tmp/testdir/file2.txt $MYSQLTEST_VARDIR/tmp/testdir *;
|
||||||
|
@ -11,6 +11,7 @@ let $MYSQLD_DATADIR= `SELECT @@datadir`;
|
|||||||
--echo #
|
--echo #
|
||||||
--echo # Bug#56287: crash when using Partition datetime in sub in query
|
--echo # Bug#56287: crash when using Partition datetime in sub in query
|
||||||
--echo #
|
--echo #
|
||||||
|
|
||||||
CREATE TABLE t1
|
CREATE TABLE t1
|
||||||
(c1 bigint(20) unsigned NOT NULL AUTO_INCREMENT,
|
(c1 bigint(20) unsigned NOT NULL AUTO_INCREMENT,
|
||||||
c2 varchar(40) not null default '',
|
c2 varchar(40) not null default '',
|
||||||
@ -591,6 +592,7 @@ INSERT INTO t1 VALUES (1,1), (2,2);
|
|||||||
SELECT * FROM t1 WHERE i1 = ( SELECT i1 FROM t1 WHERE f1=0 LIMIT 1 );
|
SELECT * FROM t1 WHERE i1 = ( SELECT i1 FROM t1 WHERE f1=0 LIMIT 1 );
|
||||||
|
|
||||||
DROP TABLE t1;
|
DROP TABLE t1;
|
||||||
|
|
||||||
--enable_parsing
|
--enable_parsing
|
||||||
|
|
||||||
--echo #
|
--echo #
|
||||||
|
@ -1,6 +1,73 @@
|
|||||||
--source include/have_partition.inc
|
--source include/have_partition.inc
|
||||||
--source include/have_innodb.inc
|
--source include/have_innodb.inc
|
||||||
|
|
||||||
|
let $MYSQLD_DATADIR= `SELECT @@datadir`;
|
||||||
|
|
||||||
|
call mtr.add_suppression("nnoDB: Error: table `test`.`t1` .* Partition.* InnoDB internal");
|
||||||
|
--echo #
|
||||||
|
--echo # Bug#55091: Server crashes on ADD PARTITION after a failed attempt
|
||||||
|
--echo #
|
||||||
|
SET @old_innodb_file_format_max = @@global.innodb_file_format_max;
|
||||||
|
SET @old_innodb_file_format = @@global.innodb_file_format;
|
||||||
|
SET @old_innodb_file_per_table = @@global.innodb_file_per_table;
|
||||||
|
SET @old_innodb_strict_mode = @@global.innodb_strict_mode;
|
||||||
|
SET @@global.innodb_file_format = Barracuda,
|
||||||
|
@@global.innodb_file_per_table = ON,
|
||||||
|
@@global.innodb_strict_mode = ON;
|
||||||
|
|
||||||
|
--echo # Connection con1
|
||||||
|
--connect(con1,localhost,root,,)
|
||||||
|
|
||||||
|
CREATE TABLE t1 (id INT NOT NULL
|
||||||
|
PRIMARY KEY,
|
||||||
|
user_num CHAR(10)
|
||||||
|
) ENGINE = InnoDB
|
||||||
|
KEY_BLOCK_SIZE=4
|
||||||
|
PARTITION BY HASH(id) PARTITIONS 1;
|
||||||
|
|
||||||
|
--replace_result #p# #P#
|
||||||
|
--list_files $MYSQLD_DATADIR/test
|
||||||
|
SHOW CREATE TABLE t1;
|
||||||
|
|
||||||
|
SET GLOBAL innodb_file_per_table = OFF;
|
||||||
|
|
||||||
|
--disconnect con1
|
||||||
|
--connect(con2,localhost,root,,)
|
||||||
|
--echo # Connection con2
|
||||||
|
|
||||||
|
LOCK TABLE t1 WRITE;
|
||||||
|
|
||||||
|
--echo # ALTER fails because COMPRESSED/KEY_BLOCK_SIZE
|
||||||
|
--echo # are incompatible with innodb_file_per_table = OFF;
|
||||||
|
|
||||||
|
--error ER_GET_ERRNO
|
||||||
|
ALTER TABLE t1 ADD PARTITION PARTITIONS 1;
|
||||||
|
|
||||||
|
--replace_result #p# #P#
|
||||||
|
--list_files $MYSQLD_DATADIR/test
|
||||||
|
--echo # This SET is not needed to reproduce the bug,
|
||||||
|
--echo # it is here just to make the test case more realistic
|
||||||
|
SET innodb_strict_mode = OFF;
|
||||||
|
|
||||||
|
ALTER TABLE t1 ADD PARTITION PARTITIONS 2;
|
||||||
|
--replace_result #p# #P#
|
||||||
|
--list_files $MYSQLD_DATADIR/test
|
||||||
|
|
||||||
|
# really bug#56172
|
||||||
|
ALTER TABLE t1 REBUILD PARTITION p0;
|
||||||
|
|
||||||
|
UNLOCK TABLES;
|
||||||
|
SHOW CREATE TABLE t1;
|
||||||
|
DROP TABLE t1;
|
||||||
|
|
||||||
|
--disconnect con2
|
||||||
|
--connection default
|
||||||
|
--echo # Connection default
|
||||||
|
SET @@global.innodb_strict_mode = @old_innodb_strict_mode;
|
||||||
|
SET @@global.innodb_file_format = @old_innodb_file_format;
|
||||||
|
SET @@global.innodb_file_per_table = @old_innodb_file_per_table;
|
||||||
|
SET @@global.innodb_file_format_max = @old_innodb_file_format_max;
|
||||||
|
|
||||||
#
|
#
|
||||||
# Bug#32430 - show engine innodb status causes errors
|
# Bug#32430 - show engine innodb status causes errors
|
||||||
#
|
#
|
||||||
|
@ -252,3 +252,30 @@ drop table mysql.proc;
|
|||||||
--remove_file $MYSQLTEST_VARDIR/tmp/proc.frm
|
--remove_file $MYSQLTEST_VARDIR/tmp/proc.frm
|
||||||
--remove_file $MYSQLTEST_VARDIR/tmp/proc.MYD
|
--remove_file $MYSQLTEST_VARDIR/tmp/proc.MYD
|
||||||
--remove_file $MYSQLTEST_VARDIR/tmp/proc.MYI
|
--remove_file $MYSQLTEST_VARDIR/tmp/proc.MYI
|
||||||
|
|
||||||
|
|
||||||
|
--echo #
|
||||||
|
--echo # Bug#58414 mysql_upgrade fails on dump upgrade between 5.1.53 -> 5.5.8
|
||||||
|
--echo #
|
||||||
|
|
||||||
|
--disable_warnings
|
||||||
|
DROP TABLE IF EXISTS proc_backup;
|
||||||
|
DROP DATABASE IF EXISTS db1;
|
||||||
|
--enable_warnings
|
||||||
|
|
||||||
|
--echo # Backup the proc table
|
||||||
|
RENAME TABLE mysql.proc TO proc_backup;
|
||||||
|
CREATE TABLE mysql.proc LIKE proc_backup;
|
||||||
|
|
||||||
|
CREATE DATABASE db1;
|
||||||
|
CREATE PROCEDURE db1.p1() SET @foo = 10;
|
||||||
|
|
||||||
|
--echo # Modify a field of the table.
|
||||||
|
ALTER TABLE mysql.proc MODIFY comment CHAR (32);
|
||||||
|
|
||||||
|
# This should not fail even if mysql.proc is invalid.
|
||||||
|
DROP DATABASE db1;
|
||||||
|
|
||||||
|
--echo # Restore mysql.proc
|
||||||
|
DROP TABLE mysql.proc;
|
||||||
|
RENAME TABLE proc_backup TO mysql.proc;
|
||||||
|
@ -172,3 +172,57 @@ UNLOCK TABLES;
|
|||||||
DROP TABLE t1;
|
DROP TABLE t1;
|
||||||
SET DEBUG_SYNC='RESET';
|
SET DEBUG_SYNC='RESET';
|
||||||
|
|
||||||
|
--echo #
|
||||||
|
--echo # Bug#57659 Segfault in Query_cache::invalidate_data for TRUNCATE TABLE
|
||||||
|
--echo #
|
||||||
|
|
||||||
|
--echo # Note that this test case only reproduces the problem
|
||||||
|
--echo # when it is run with valgrind.
|
||||||
|
|
||||||
|
--disable_warnings
|
||||||
|
DROP TABLE IF EXISTS t1, m1;
|
||||||
|
--enable_warnings
|
||||||
|
|
||||||
|
CREATE TABLE t1(a INT) engine=memory;
|
||||||
|
CREATE TABLE m1(a INT) engine=merge UNION(t1);
|
||||||
|
connect(con2, localhost, root);
|
||||||
|
|
||||||
|
--echo # Connection con1
|
||||||
|
connect(con1, localhost, root);
|
||||||
|
SET DEBUG_SYNC= 'open_tables_after_open_and_process_table SIGNAL opened WAIT_FOR dropped';
|
||||||
|
--echo # Sending:
|
||||||
|
--send TRUNCATE TABLE m1
|
||||||
|
|
||||||
|
--echo # Connection con2
|
||||||
|
connection con2;
|
||||||
|
SET DEBUG_SYNC= 'now WAIT_FOR opened';
|
||||||
|
--echo # Sending:
|
||||||
|
--send FLUSH TABLES
|
||||||
|
|
||||||
|
--echo # Connection default
|
||||||
|
connection default;
|
||||||
|
--echo # Waiting for FLUSH TABLES to be blocked.
|
||||||
|
let $wait_condition= SELECT COUNT(*)=1 FROM information_schema.processlist
|
||||||
|
WHERE state= 'Waiting for table flush' AND info= 'FLUSH TABLES';
|
||||||
|
--source include/wait_condition.inc
|
||||||
|
SET DEBUG_SYNC= 'now SIGNAL dropped';
|
||||||
|
|
||||||
|
--echo # Connection con1
|
||||||
|
connection con1;
|
||||||
|
--echo # Reaping: TRUNCATE TABLE m1
|
||||||
|
--error ER_WRONG_MRG_TABLE
|
||||||
|
--reap
|
||||||
|
disconnect con1;
|
||||||
|
--source include/wait_until_disconnected.inc
|
||||||
|
|
||||||
|
--echo # Connection con2
|
||||||
|
connection con2;
|
||||||
|
--echo # Reaping: FLUSH TABLES
|
||||||
|
--reap
|
||||||
|
disconnect con2;
|
||||||
|
--source include/wait_until_disconnected.inc
|
||||||
|
|
||||||
|
--echo # Connection default
|
||||||
|
connection default;
|
||||||
|
SET DEBUG_SYNC= 'RESET';
|
||||||
|
DROP TABLE m1, t1;
|
||||||
|
@ -284,4 +284,12 @@ DROP TABLE t1;
|
|||||||
|
|
||||||
--echo #
|
--echo #
|
||||||
|
|
||||||
|
--echo #
|
||||||
|
--echo # Bug#57278: Crash on min/max + with date out of range.
|
||||||
|
--echo #
|
||||||
|
set @a=(select min(makedate('111','1'))) ;
|
||||||
|
select @a;
|
||||||
|
--echo #
|
||||||
|
|
||||||
|
|
||||||
--echo End of 6.0 tests
|
--echo End of 6.0 tests
|
||||||
|
@ -617,6 +617,20 @@ FROM t1 ORDER BY t1.id;
|
|||||||
|
|
||||||
DROP TABLE t1;
|
DROP TABLE t1;
|
||||||
|
|
||||||
|
|
||||||
|
--echo #
|
||||||
|
--echo # Bug#57257 Replace(ExtractValue(...)) causes MySQL crash
|
||||||
|
--echo #
|
||||||
|
SET NAMES utf8;
|
||||||
|
SELECT REPLACE(EXTRACTVALUE('1', '/a'),'ds','');
|
||||||
|
|
||||||
|
|
||||||
|
--echo #
|
||||||
|
--echo # Bug #57820 extractvalue crashes
|
||||||
|
--echo #
|
||||||
|
SELECT AVG(DISTINCT EXTRACTVALUE((''),('$@k')));
|
||||||
|
|
||||||
|
|
||||||
--echo #
|
--echo #
|
||||||
--echo # Bug#57279 updatexml dies with: Assertion failed: str_arg[length] == 0
|
--echo # Bug#57279 updatexml dies with: Assertion failed: str_arg[length] == 0
|
||||||
--echo #
|
--echo #
|
||||||
|
@ -63,7 +63,12 @@ FIND_PROGRAM(LIGHT_EXECUTABLE light ${WIX_DIR})
|
|||||||
IF(EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/COPYING.rtf")
|
IF(EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/COPYING.rtf")
|
||||||
SET(COPYING_RTF "${CMAKE_CURRENT_SOURCE_DIR}/COPYING.rtf")
|
SET(COPYING_RTF "${CMAKE_CURRENT_SOURCE_DIR}/COPYING.rtf")
|
||||||
ELSE()
|
ELSE()
|
||||||
FILE(READ "${CMAKE_CURRENT_SOURCE_DIR}/../../COPYING" CONTENTS)
|
IF(EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/../../LICENSE.mysql")
|
||||||
|
SET(LICENSE_FILE "${CMAKE_CURRENT_SOURCE_DIR}/../../LICENSE.mysql")
|
||||||
|
ELSE()
|
||||||
|
SET(LICENSE_FILE "${CMAKE_CURRENT_SOURCE_DIR}/../../COPYING")
|
||||||
|
ENDIF()
|
||||||
|
FILE(READ ${LICENSE_FILE} CONTENTS)
|
||||||
STRING(REGEX REPLACE "\n" "\\\\par\n" CONTENTS "${CONTENTS}")
|
STRING(REGEX REPLACE "\n" "\\\\par\n" CONTENTS "${CONTENTS}")
|
||||||
STRING(REGEX REPLACE "\t" "\\\\tab" CONTENTS "${CONTENTS}")
|
STRING(REGEX REPLACE "\t" "\\\\tab" CONTENTS "${CONTENTS}")
|
||||||
FILE(WRITE "${CMAKE_CURRENT_BINARY_DIR}/COPYING.rtf" "{\\rtf1\\ansi\\deff0{\\fonttbl{\\f0\\fnil\\fcharset0 Courier New;}}\\viewkind4\\uc1\\pard\\lang1031\\f0\\fs15")
|
FILE(WRITE "${CMAKE_CURRENT_BINARY_DIR}/COPYING.rtf" "{\\rtf1\\ansi\\deff0{\\fonttbl{\\f0\\fnil\\fcharset0 Courier New;}}\\viewkind4\\uc1\\pard\\lang1031\\f0\\fs15")
|
||||||
|
@ -1127,7 +1127,12 @@ longlong number_to_datetime(longlong nr, MYSQL_TIME *time_res,
|
|||||||
nr= (nr+19000000L)*1000000L; /* YYMMDD, year: 1970-1999 */
|
nr= (nr+19000000L)*1000000L; /* YYMMDD, year: 1970-1999 */
|
||||||
goto ok;
|
goto ok;
|
||||||
}
|
}
|
||||||
if (nr < 10000101L)
|
/*
|
||||||
|
Though officially we support DATE values from 1000-01-01 only, one can
|
||||||
|
easily insert a value like 1-1-1. So, for consistency reasons such dates
|
||||||
|
are allowed when TIME_FUZZY_DATE is set.
|
||||||
|
*/
|
||||||
|
if (nr < 10000101L && !(flags & TIME_FUZZY_DATE))
|
||||||
goto err;
|
goto err;
|
||||||
if (nr <= 99991231L)
|
if (nr <= 99991231L)
|
||||||
{
|
{
|
||||||
|
19
sql/item.cc
19
sql/item.cc
@ -7503,9 +7503,19 @@ void Item_cache_datetime::store(Item *item, longlong val_arg)
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void Item_cache_datetime::store(Item *item)
|
||||||
|
{
|
||||||
|
Item_cache::store(item);
|
||||||
|
str_value_cached= FALSE;
|
||||||
|
}
|
||||||
|
|
||||||
String *Item_cache_datetime::val_str(String *str)
|
String *Item_cache_datetime::val_str(String *str)
|
||||||
{
|
{
|
||||||
DBUG_ASSERT(fixed == 1);
|
DBUG_ASSERT(fixed == 1);
|
||||||
|
|
||||||
|
if ((value_cached || str_value_cached) && null_value)
|
||||||
|
return NULL;
|
||||||
|
|
||||||
if (!str_value_cached)
|
if (!str_value_cached)
|
||||||
{
|
{
|
||||||
/*
|
/*
|
||||||
@ -7519,6 +7529,8 @@ String *Item_cache_datetime::val_str(String *str)
|
|||||||
if (value_cached)
|
if (value_cached)
|
||||||
{
|
{
|
||||||
MYSQL_TIME ltime;
|
MYSQL_TIME ltime;
|
||||||
|
/* Return NULL in case of OOM/conversion error. */
|
||||||
|
null_value= TRUE;
|
||||||
if (str_value.alloc(MAX_DATE_STRING_REP_LENGTH))
|
if (str_value.alloc(MAX_DATE_STRING_REP_LENGTH))
|
||||||
return NULL;
|
return NULL;
|
||||||
if (cached_field_type == MYSQL_TYPE_TIME)
|
if (cached_field_type == MYSQL_TYPE_TIME)
|
||||||
@ -7541,13 +7553,14 @@ String *Item_cache_datetime::val_str(String *str)
|
|||||||
{
|
{
|
||||||
int was_cut;
|
int was_cut;
|
||||||
longlong res;
|
longlong res;
|
||||||
res= number_to_datetime(val_int(), <ime, TIME_FUZZY_DATE, &was_cut);
|
res= number_to_datetime(int_value, <ime, TIME_FUZZY_DATE, &was_cut);
|
||||||
if (res == -1)
|
if (res == -1)
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
str_value.length(my_TIME_to_str(<ime,
|
str_value.length(my_TIME_to_str(<ime,
|
||||||
const_cast<char*>(str_value.ptr())));
|
const_cast<char*>(str_value.ptr())));
|
||||||
str_value_cached= TRUE;
|
str_value_cached= TRUE;
|
||||||
|
null_value= FALSE;
|
||||||
}
|
}
|
||||||
else if (!cache_value())
|
else if (!cache_value())
|
||||||
return NULL;
|
return NULL;
|
||||||
@ -7568,7 +7581,7 @@ my_decimal *Item_cache_datetime::val_decimal(my_decimal *decimal_val)
|
|||||||
double Item_cache_datetime::val_real()
|
double Item_cache_datetime::val_real()
|
||||||
{
|
{
|
||||||
DBUG_ASSERT(fixed == 1);
|
DBUG_ASSERT(fixed == 1);
|
||||||
if (!value_cached && !cache_value_int())
|
if ((!value_cached && !cache_value_int()) || null_value)
|
||||||
return 0.0;
|
return 0.0;
|
||||||
return (double) int_value;
|
return (double) int_value;
|
||||||
}
|
}
|
||||||
@ -7576,7 +7589,7 @@ double Item_cache_datetime::val_real()
|
|||||||
longlong Item_cache_datetime::val_int()
|
longlong Item_cache_datetime::val_int()
|
||||||
{
|
{
|
||||||
DBUG_ASSERT(fixed == 1);
|
DBUG_ASSERT(fixed == 1);
|
||||||
if (!value_cached && !cache_value_int())
|
if ((!value_cached && !cache_value_int()) || null_value)
|
||||||
return 0;
|
return 0;
|
||||||
return int_value;
|
return int_value;
|
||||||
}
|
}
|
||||||
|
@ -3451,8 +3451,8 @@ public:
|
|||||||
cmp_context= STRING_RESULT;
|
cmp_context= STRING_RESULT;
|
||||||
}
|
}
|
||||||
|
|
||||||
virtual void store(Item *item) { Item_cache::store(item); }
|
|
||||||
void store(Item *item, longlong val_arg);
|
void store(Item *item, longlong val_arg);
|
||||||
|
void store(Item *item);
|
||||||
double val_real();
|
double val_real();
|
||||||
longlong val_int();
|
longlong val_int();
|
||||||
String* val_str(String *str);
|
String* val_str(String *str);
|
||||||
|
@ -4720,6 +4720,7 @@ bool Item_func_like::fix_fields(THD *thd, Item **ref)
|
|||||||
String *escape_str= escape_item->val_str(&cmp.value1);
|
String *escape_str= escape_item->val_str(&cmp.value1);
|
||||||
if (escape_str)
|
if (escape_str)
|
||||||
{
|
{
|
||||||
|
const char *escape_str_ptr= escape_str->ptr();
|
||||||
if (escape_used_in_parsing && (
|
if (escape_used_in_parsing && (
|
||||||
(((thd->variables.sql_mode & MODE_NO_BACKSLASH_ESCAPES) &&
|
(((thd->variables.sql_mode & MODE_NO_BACKSLASH_ESCAPES) &&
|
||||||
escape_str->numchars() != 1) ||
|
escape_str->numchars() != 1) ||
|
||||||
@ -4734,8 +4735,8 @@ bool Item_func_like::fix_fields(THD *thd, Item **ref)
|
|||||||
CHARSET_INFO *cs= escape_str->charset();
|
CHARSET_INFO *cs= escape_str->charset();
|
||||||
my_wc_t wc;
|
my_wc_t wc;
|
||||||
int rc= cs->cset->mb_wc(cs, &wc,
|
int rc= cs->cset->mb_wc(cs, &wc,
|
||||||
(const uchar*) escape_str->ptr(),
|
(const uchar*) escape_str_ptr,
|
||||||
(const uchar*) escape_str->ptr() +
|
(const uchar*) escape_str_ptr +
|
||||||
escape_str->length());
|
escape_str->length());
|
||||||
escape= (int) (rc > 0 ? wc : '\\');
|
escape= (int) (rc > 0 ? wc : '\\');
|
||||||
}
|
}
|
||||||
@ -4753,13 +4754,13 @@ bool Item_func_like::fix_fields(THD *thd, Item **ref)
|
|||||||
{
|
{
|
||||||
char ch;
|
char ch;
|
||||||
uint errors;
|
uint errors;
|
||||||
uint32 cnvlen= copy_and_convert(&ch, 1, cs, escape_str->ptr(),
|
uint32 cnvlen= copy_and_convert(&ch, 1, cs, escape_str_ptr,
|
||||||
escape_str->length(),
|
escape_str->length(),
|
||||||
escape_str->charset(), &errors);
|
escape_str->charset(), &errors);
|
||||||
escape= cnvlen ? ch : '\\';
|
escape= cnvlen ? ch : '\\';
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
escape= *(escape_str->ptr());
|
escape= escape_str_ptr ? *escape_str_ptr : '\\';
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
@ -1080,9 +1080,15 @@ String *Item_func_replace::val_str(String *str)
|
|||||||
search=res2->ptr();
|
search=res2->ptr();
|
||||||
search_end=search+from_length;
|
search_end=search+from_length;
|
||||||
redo:
|
redo:
|
||||||
|
DBUG_ASSERT(res->ptr() || !offset);
|
||||||
ptr=res->ptr()+offset;
|
ptr=res->ptr()+offset;
|
||||||
strend=res->ptr()+res->length();
|
strend=res->ptr()+res->length();
|
||||||
end=strend-from_length+1;
|
/*
|
||||||
|
In some cases val_str() can return empty string
|
||||||
|
with ptr() == NULL and length() == 0.
|
||||||
|
Let's check strend to avoid overflow.
|
||||||
|
*/
|
||||||
|
end= strend ? strend - from_length + 1 : NULL;
|
||||||
while (ptr < end)
|
while (ptr < end)
|
||||||
{
|
{
|
||||||
if (*ptr == *search)
|
if (*ptr == *search)
|
||||||
|
@ -2526,14 +2526,14 @@ String *Item_char_typecast::val_str(String *str)
|
|||||||
{
|
{
|
||||||
// Convert character set if differ
|
// Convert character set if differ
|
||||||
uint dummy_errors;
|
uint dummy_errors;
|
||||||
if (!(res= args[0]->val_str(&tmp_value)) ||
|
if (!(res= args[0]->val_str(str)) ||
|
||||||
str->copy(res->ptr(), res->length(), from_cs,
|
tmp_value.copy(res->ptr(), res->length(), from_cs,
|
||||||
cast_cs, &dummy_errors))
|
cast_cs, &dummy_errors))
|
||||||
{
|
{
|
||||||
null_value= 1;
|
null_value= 1;
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
res= str;
|
res= &tmp_value;
|
||||||
}
|
}
|
||||||
|
|
||||||
res->set_charset(cast_cs);
|
res->set_charset(cast_cs);
|
||||||
@ -2568,9 +2568,9 @@ String *Item_char_typecast::val_str(String *str)
|
|||||||
{
|
{
|
||||||
if (res->alloced_length() < (uint) cast_length)
|
if (res->alloced_length() < (uint) cast_length)
|
||||||
{
|
{
|
||||||
str->alloc(cast_length);
|
str_value.alloc(cast_length);
|
||||||
str->copy(*res);
|
str_value.copy(*res);
|
||||||
res= str;
|
res= &str_value;
|
||||||
}
|
}
|
||||||
bzero((char*) res->ptr() + res->length(),
|
bzero((char*) res->ptr() + res->length(),
|
||||||
(uint) cast_length - res->length());
|
(uint) cast_length - res->length());
|
||||||
|
@ -2798,12 +2798,12 @@ String *Item_func_xml_extractvalue::val_str(String *str)
|
|||||||
null_value= 0;
|
null_value= 0;
|
||||||
if (!nodeset_func ||
|
if (!nodeset_func ||
|
||||||
!(res= args[0]->val_str(str)) ||
|
!(res= args[0]->val_str(str)) ||
|
||||||
!parse_xml(res, &pxml))
|
!parse_xml(res, &pxml) ||
|
||||||
|
!(res= nodeset_func->val_str(&tmp_value)))
|
||||||
{
|
{
|
||||||
null_value= 1;
|
null_value= 1;
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
res= nodeset_func->val_str(&tmp_value);
|
|
||||||
return res;
|
return res;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -364,9 +364,7 @@ void key_unpack(String *to,TABLE *table,uint idx)
|
|||||||
while (tmp_end > tmp.ptr() && !*--tmp_end) ;
|
while (tmp_end > tmp.ptr() && !*--tmp_end) ;
|
||||||
tmp.length(tmp_end - tmp.ptr() + 1);
|
tmp.length(tmp_end - tmp.ptr() + 1);
|
||||||
}
|
}
|
||||||
if (cs->mbmaxlen > 1 &&
|
if (cs->mbmaxlen > 1 && (key_part->key_part_flag & HA_PART_KEY_SEG))
|
||||||
table->field[key_part->fieldnr - 1]->field_length !=
|
|
||||||
key_part->length)
|
|
||||||
{
|
{
|
||||||
/*
|
/*
|
||||||
Prefix key, multi-byte charset.
|
Prefix key, multi-byte charset.
|
||||||
|
@ -779,9 +779,6 @@ db_load_routine(THD *thd, int type, sp_name *name, sp_head **sphp,
|
|||||||
|
|
||||||
int ret= 0;
|
int ret= 0;
|
||||||
|
|
||||||
if (check_stack_overrun(thd, STACK_MIN_SIZE, (uchar*)&ret))
|
|
||||||
return TRUE;
|
|
||||||
|
|
||||||
thd->lex= &newlex;
|
thd->lex= &newlex;
|
||||||
newlex.current_select= NULL;
|
newlex.current_select= NULL;
|
||||||
|
|
||||||
@ -1375,6 +1372,8 @@ public:
|
|||||||
MYSQL_ERROR ** cond_hdl)
|
MYSQL_ERROR ** cond_hdl)
|
||||||
{
|
{
|
||||||
if (sql_errno == ER_NO_SUCH_TABLE ||
|
if (sql_errno == ER_NO_SUCH_TABLE ||
|
||||||
|
sql_errno == ER_CANNOT_LOAD_FROM_TABLE ||
|
||||||
|
sql_errno == ER_COL_COUNT_DOESNT_MATCH_PLEASE_UPDATE ||
|
||||||
sql_errno == ER_COL_COUNT_DOESNT_MATCH_CORRUPTED)
|
sql_errno == ER_COL_COUNT_DOESNT_MATCH_CORRUPTED)
|
||||||
return true;
|
return true;
|
||||||
return false;
|
return false;
|
||||||
@ -1611,9 +1610,6 @@ sp_find_routine(THD *thd, int type, sp_name *name, sp_cache **cp,
|
|||||||
(int) name->m_name.length, name->m_name.str,
|
(int) name->m_name.length, name->m_name.str,
|
||||||
type, cache_only));
|
type, cache_only));
|
||||||
|
|
||||||
if (check_stack_overrun(thd, STACK_MIN_SIZE, (uchar*)&depth))
|
|
||||||
return NULL;
|
|
||||||
|
|
||||||
if ((sp= sp_cache_lookup(cp, name)))
|
if ((sp= sp_cache_lookup(cp, name)))
|
||||||
{
|
{
|
||||||
ulong level;
|
ulong level;
|
||||||
|
@ -1240,8 +1240,11 @@ sp_head::execute(THD *thd, bool merge_da_on_success)
|
|||||||
The same with db_load_routine() required circa 7k bytes and
|
The same with db_load_routine() required circa 7k bytes and
|
||||||
14k bytes accordingly. Hence, here we book the stack with some
|
14k bytes accordingly. Hence, here we book the stack with some
|
||||||
reasonable margin.
|
reasonable margin.
|
||||||
|
|
||||||
|
Reverting back to 8 * STACK_MIN_SIZE until further fix.
|
||||||
|
8 * STACK_MIN_SIZE is required on some exotic platforms.
|
||||||
*/
|
*/
|
||||||
if (check_stack_overrun(thd, STACK_MIN_SIZE, (uchar*)&old_packet))
|
if (check_stack_overrun(thd, 8 * STACK_MIN_SIZE, (uchar*)&old_packet))
|
||||||
DBUG_RETURN(TRUE);
|
DBUG_RETURN(TRUE);
|
||||||
|
|
||||||
/* init per-instruction memroot */
|
/* init per-instruction memroot */
|
||||||
@ -2915,9 +2918,6 @@ sp_lex_keeper::reset_lex_and_exec_core(THD *thd, uint *nextp,
|
|||||||
It's merged with the saved parent's value at the exit of this func.
|
It's merged with the saved parent's value at the exit of this func.
|
||||||
*/
|
*/
|
||||||
bool parent_modified_non_trans_table= thd->transaction.stmt.modified_non_trans_table;
|
bool parent_modified_non_trans_table= thd->transaction.stmt.modified_non_trans_table;
|
||||||
if (check_stack_overrun(thd, STACK_MIN_SIZE, (uchar*)&parent_modified_non_trans_table))
|
|
||||||
DBUG_RETURN(TRUE);
|
|
||||||
|
|
||||||
thd->transaction.stmt.modified_non_trans_table= FALSE;
|
thd->transaction.stmt.modified_non_trans_table= FALSE;
|
||||||
DBUG_ASSERT(!thd->derived_tables);
|
DBUG_ASSERT(!thd->derived_tables);
|
||||||
DBUG_ASSERT(thd->change_list.is_empty());
|
DBUG_ASSERT(thd->change_list.is_empty());
|
||||||
@ -3073,9 +3073,6 @@ sp_instr_stmt::execute(THD *thd, uint *nextp)
|
|||||||
DBUG_ENTER("sp_instr_stmt::execute");
|
DBUG_ENTER("sp_instr_stmt::execute");
|
||||||
DBUG_PRINT("info", ("command: %d", m_lex_keeper.sql_command()));
|
DBUG_PRINT("info", ("command: %d", m_lex_keeper.sql_command()));
|
||||||
|
|
||||||
if (check_stack_overrun(thd, STACK_MIN_SIZE, (uchar*)&res))
|
|
||||||
DBUG_RETURN(TRUE);
|
|
||||||
|
|
||||||
const CSET_STRING query_backup= thd->query_string;
|
const CSET_STRING query_backup= thd->query_string;
|
||||||
#if defined(ENABLED_PROFILING)
|
#if defined(ENABLED_PROFILING)
|
||||||
/* This s-p instr is profilable and will be captured. */
|
/* This s-p instr is profilable and will be captured. */
|
||||||
|
@ -7209,9 +7209,6 @@ bool parse_sql(THD *thd,
|
|||||||
|
|
||||||
Object_creation_ctx *backup_ctx= NULL;
|
Object_creation_ctx *backup_ctx= NULL;
|
||||||
|
|
||||||
if (check_stack_overrun(thd, 2 * STACK_MIN_SIZE, (uchar*)&backup_ctx))
|
|
||||||
return TRUE;
|
|
||||||
|
|
||||||
if (creation_ctx)
|
if (creation_ctx)
|
||||||
backup_ctx= creation_ctx->set_n_backup(thd);
|
backup_ctx= creation_ctx->set_n_backup(thd);
|
||||||
|
|
||||||
|
@ -29,6 +29,8 @@
|
|||||||
#include "repl_failsafe.h"
|
#include "repl_failsafe.h"
|
||||||
#include "sql_parse.h" // check_access, check_table_access
|
#include "sql_parse.h" // check_access, check_table_access
|
||||||
#include "sql_partition.h" // partition_element
|
#include "sql_partition.h" // partition_element
|
||||||
|
#include "sql_derived.h" // mysql_derived_prepare,
|
||||||
|
// mysql_handle_derived,
|
||||||
#include "sql_db.h" // check_db_dir_existence, load_db_opt_by_name
|
#include "sql_db.h" // check_db_dir_existence, load_db_opt_by_name
|
||||||
#include "sql_time.h" // interval_type_to_name
|
#include "sql_time.h" // interval_type_to_name
|
||||||
#include "tztime.h" // struct Time_zone
|
#include "tztime.h" // struct Time_zone
|
||||||
@ -677,11 +679,18 @@ mysqld_show_create(THD *thd, TABLE_LIST *table_list)
|
|||||||
thd->lex->context_analysis_only|= CONTEXT_ANALYSIS_ONLY_VIEW;
|
thd->lex->context_analysis_only|= CONTEXT_ANALYSIS_ONLY_VIEW;
|
||||||
|
|
||||||
{
|
{
|
||||||
|
/*
|
||||||
|
Use open_tables() directly rather than open_normal_and_derived_tables().
|
||||||
|
This ensures that close_thread_tables() is not called if open tables fails
|
||||||
|
and the error is ignored. This allows us to handle broken views nicely.
|
||||||
|
*/
|
||||||
|
uint counter;
|
||||||
Show_create_error_handler view_error_suppressor(thd, table_list);
|
Show_create_error_handler view_error_suppressor(thd, table_list);
|
||||||
thd->push_internal_handler(&view_error_suppressor);
|
thd->push_internal_handler(&view_error_suppressor);
|
||||||
bool open_error=
|
bool open_error=
|
||||||
open_normal_and_derived_tables(thd, table_list,
|
open_tables(thd, &table_list, &counter,
|
||||||
MYSQL_OPEN_FORCE_SHARED_HIGH_PRIO_MDL);
|
MYSQL_OPEN_FORCE_SHARED_HIGH_PRIO_MDL) ||
|
||||||
|
mysql_handle_derived(thd->lex, &mysql_derived_prepare);
|
||||||
thd->pop_internal_handler();
|
thd->pop_internal_handler();
|
||||||
if (open_error && (thd->killed || thd->is_error()))
|
if (open_error && (thd->killed || thd->is_error()))
|
||||||
goto exit;
|
goto exit;
|
||||||
|
@ -472,6 +472,13 @@ bool Truncate_statement::truncate_table(THD *thd, TABLE_LIST *table_ref)
|
|||||||
binlog_stmt= !error || error != HA_ERR_WRONG_COMMAND;
|
binlog_stmt= !error || error != HA_ERR_WRONG_COMMAND;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
If we tried to open a MERGE table and failed due to problems with the
|
||||||
|
children tables, the table will have been closed and table_ref->table
|
||||||
|
will be invalid. Reset the pointer here in any case as
|
||||||
|
query_cache_invalidate does not need a valid TABLE object.
|
||||||
|
*/
|
||||||
|
table_ref->table= NULL;
|
||||||
query_cache_invalidate3(thd, table_ref, FALSE);
|
query_cache_invalidate3(thd, table_ref, FALSE);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1464,7 +1464,7 @@ my_strnncoll_utf16_bin(CHARSET_INFO *cs,
|
|||||||
}
|
}
|
||||||
if (s_wc != t_wc)
|
if (s_wc != t_wc)
|
||||||
{
|
{
|
||||||
return my_bincmp(s, s + s_res, t, t + t_res);
|
return s_wc > t_wc ? 1 : -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
s+= s_res;
|
s+= s_res;
|
||||||
@ -1504,7 +1504,7 @@ my_strnncollsp_utf16_bin(CHARSET_INFO *cs,
|
|||||||
|
|
||||||
if (s_wc != t_wc)
|
if (s_wc != t_wc)
|
||||||
{
|
{
|
||||||
return my_bincmp(s, s + s_res, t, t + t_res);
|
return s_wc > t_wc ? 1 : -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
s+= s_res;
|
s+= s_res;
|
||||||
|
@ -1967,17 +1967,6 @@ my_strnxfrm_unicode_full_bin(CHARSET_INFO *cs,
|
|||||||
if ((res= cs->cset->mb_wc(cs, &wc, src, se)) <= 0)
|
if ((res= cs->cset->mb_wc(cs, &wc, src, se)) <= 0)
|
||||||
break;
|
break;
|
||||||
src+= res;
|
src+= res;
|
||||||
if (cs->mbminlen == 2) /* utf16_bin */
|
|
||||||
{
|
|
||||||
/*
|
|
||||||
Reorder code points to weights as follows:
|
|
||||||
U+0000..U+D7FF -> [00][00][00]..[00][D7][FF] BMP part #1
|
|
||||||
U+10000..U+10FFFF -> [01][00][00]..[10][FF][FF] Supplementary
|
|
||||||
U+E000..U+FFFF -> [20][E0][00]..[20][FF][FF] BMP part #2
|
|
||||||
*/
|
|
||||||
if (wc >= 0xE000 && wc <= 0xFFFF)
|
|
||||||
wc+= 0x200000;
|
|
||||||
}
|
|
||||||
*dst++= (uchar) (wc >> 16);
|
*dst++= (uchar) (wc >> 16);
|
||||||
*dst++= (uchar) ((wc >> 8) & 0xFF);
|
*dst++= (uchar) ((wc >> 8) & 0xFF);
|
||||||
*dst++= (uchar) (wc & 0xFF);
|
*dst++= (uchar) (wc & 0xFF);
|
||||||
|
@ -398,6 +398,7 @@ export CFLAGS=${MYSQL_BUILD_CFLAGS:-${CFLAGS:-$RPM_OPT_FLAGS}}
|
|||||||
export CXXFLAGS=${MYSQL_BUILD_CXXFLAGS:-${CXXFLAGS:-$RPM_OPT_FLAGS -felide-constructors -fno-exceptions -fno-rtti}}
|
export CXXFLAGS=${MYSQL_BUILD_CXXFLAGS:-${CXXFLAGS:-$RPM_OPT_FLAGS -felide-constructors -fno-exceptions -fno-rtti}}
|
||||||
export LDFLAGS=${MYSQL_BUILD_LDFLAGS:-${LDFLAGS:-}}
|
export LDFLAGS=${MYSQL_BUILD_LDFLAGS:-${LDFLAGS:-}}
|
||||||
export CMAKE=${MYSQL_BUILD_CMAKE:-${CMAKE:-cmake}}
|
export CMAKE=${MYSQL_BUILD_CMAKE:-${CMAKE:-cmake}}
|
||||||
|
export MAKE_JFLAG=${MYSQL_BUILD_MAKE_JFLAG:-}
|
||||||
|
|
||||||
# Build debug mysqld and libmysqld.a
|
# Build debug mysqld and libmysqld.a
|
||||||
mkdir debug
|
mkdir debug
|
||||||
@ -425,7 +426,7 @@ mkdir debug
|
|||||||
-DCOMPILATION_COMMENT="%{compilation_comment_debug}" \
|
-DCOMPILATION_COMMENT="%{compilation_comment_debug}" \
|
||||||
-DMYSQL_SERVER_SUFFIX="%{server_suffix}"
|
-DMYSQL_SERVER_SUFFIX="%{server_suffix}"
|
||||||
echo BEGIN_DEBUG_CONFIG ; egrep '^#define' include/config.h ; echo END_DEBUG_CONFIG
|
echo BEGIN_DEBUG_CONFIG ; egrep '^#define' include/config.h ; echo END_DEBUG_CONFIG
|
||||||
make VERBOSE=1
|
make ${MAKE_JFLAG} VERBOSE=1
|
||||||
)
|
)
|
||||||
# Build full release
|
# Build full release
|
||||||
mkdir release
|
mkdir release
|
||||||
@ -440,7 +441,7 @@ mkdir release
|
|||||||
-DCOMPILATION_COMMENT="%{compilation_comment_release}" \
|
-DCOMPILATION_COMMENT="%{compilation_comment_release}" \
|
||||||
-DMYSQL_SERVER_SUFFIX="%{server_suffix}"
|
-DMYSQL_SERVER_SUFFIX="%{server_suffix}"
|
||||||
echo BEGIN_NORMAL_CONFIG ; egrep '^#define' include/config.h ; echo END_NORMAL_CONFIG
|
echo BEGIN_NORMAL_CONFIG ; egrep '^#define' include/config.h ; echo END_NORMAL_CONFIG
|
||||||
make VERBOSE=1
|
make ${MAKE_JFLAG} VERBOSE=1
|
||||||
)
|
)
|
||||||
|
|
||||||
# Use the build root for temporary storage of the shared libraries.
|
# Use the build root for temporary storage of the shared libraries.
|
||||||
@ -1084,6 +1085,16 @@ echo "=====" >> $STATUS_HISTORY
|
|||||||
# merging BK trees)
|
# merging BK trees)
|
||||||
##############################################################################
|
##############################################################################
|
||||||
%changelog
|
%changelog
|
||||||
|
* Tue Nov 23 2010 Jonathan Perkin <jonathan.perkin@oracle.com>
|
||||||
|
|
||||||
|
- EXCEPTIONS-CLIENT has been deleted, remove it from here too
|
||||||
|
- Support MYSQL_BUILD_MAKE_JFLAG environment variable for passing
|
||||||
|
a '-j' argument to make.
|
||||||
|
|
||||||
|
* Mon Nov 1 2010 Georgi Kodinov <georgi.godinov@oracle.com>
|
||||||
|
|
||||||
|
- Added test authentication (WL#1054) plugin binaries
|
||||||
|
|
||||||
* Wed Oct 6 2010 Georgi Kodinov <georgi.godinov@oracle.com>
|
* Wed Oct 6 2010 Georgi Kodinov <georgi.godinov@oracle.com>
|
||||||
|
|
||||||
- Added example external authentication (WL#1054) plugin binaries
|
- Added example external authentication (WL#1054) plugin binaries
|
||||||
@ -1095,10 +1106,6 @@ echo "=====" >> $STATUS_HISTORY
|
|||||||
- Add a "triggerpostun" to handle the uninstall of the "-community" server RPM.
|
- Add a "triggerpostun" to handle the uninstall of the "-community" server RPM.
|
||||||
- This fixes bug#55015 "MySQL server is not restarted properly after RPM upgrade".
|
- This fixes bug#55015 "MySQL server is not restarted properly after RPM upgrade".
|
||||||
|
|
||||||
* Wed Nov 24 2010 Alexander Nozdrin <alexander.nozdrin@oracle.com>
|
|
||||||
|
|
||||||
- EXCEPTIONS-CLIENT has been deleted, remove it from here too.
|
|
||||||
|
|
||||||
* Tue Jun 15 2010 Joerg Bruehe <joerg.bruehe@sun.com>
|
* Tue Jun 15 2010 Joerg Bruehe <joerg.bruehe@sun.com>
|
||||||
|
|
||||||
- Change the behaviour on installation and upgrade:
|
- Change the behaviour on installation and upgrade:
|
||||||
|
Loading…
x
Reference in New Issue
Block a user