tokutek / mariadb-5.5 Goto Github PK
View Code? Open in Web Editor NEWTokuDB for MariaDB 5.5
Home Page: http://www.tokutek.com/products/tokudb-for-mysql/
License: GNU Lesser General Public License v2.1
TokuDB for MariaDB 5.5
Home Page: http://www.tokutek.com/products/tokudb-for-mysql/
License: GNU Lesser General Public License v2.1
This is a release of MariaDB. MariaDB is designed as a drop-in replacement of MySQL(R) with more features, new storage engines, fewer bugs, and better performance. MariaDB is brought to you by many of the original developers of MySQL who now work for Monty Program Ab, and by many people in the community. MySQL, which is the base of MariaDB, is a product and trademark of Oracle Corporation, Inc. For a list of developers and other contributors, see the Credits appendix. You can also do 'SHOW authors' to get a list of active contributors. A description of the MariaDB project and a manual can be found at: http://kb.askmonty.org/ http://kb.askmonty.org/en/mariadb-versus-mysql-features/ http://kb.askmonty.org/en/mariadb-versus-mysql-compatibility/ As MariaDB is a full replacement of MySQL, the MySQL manual at http://dev.mysql.com/doc is generally applicable. More help is available from the Maria Discuss mailing list https://launchpad.net/~maria-discuss and the #maria IRC channel on Freenode. *************************************************************************** NOTE: MariaDB is specifically available only under version 2 of the GNU General Public License (GPLv2). (I.e. Without the "any later version" clause.) This is inherited from MySQL. Please see the README file in the MySQL distribution for more information. License information can be found in the COPYING file and the EXCEPTIONS-CLIENT file. *************************************************************************** IMPORTANT: Bug and/or error reports regarding MariaDB should be submitted at http://mariadb.org/jira Bugs in the MySQL code can also be submitted at http://bugs.mysql.com The code for MariaDB, including all revision history, can be found at: https://code.launchpad.net/maria *************************************************************************** %%The following software may be included in this product: FindGTest.cmake (part of CMake 2.8.0) Use of any of this software is governed by the terms of the license below: # Copyright 2009 Kitware, Inc. # Copyright 2009 Philip Lowman # Copyright 2009 Daniel Blezek # # Distributed under the OSI-approved BSD License (the "License"); # see accompanying file Copyright.txt for details. # # This software is distributed WITHOUT ANY WARRANTY; without even the # implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. # See the License for more information. #=========================================================================== # (To distributed this file outside of CMake, substitute the full # License text for the above reference.) # # Thanks to Daniel Blezek for the GTEST_ADD_TESTS code Text of Copyright.txt mentioned above: CMake - Cross Platform Makefile Generator Copyright 2000-2009 Kitware, Inc., Insight Software Consortium All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. * Neither the names of Kitware, Inc., the Insight Software Consortium, nor the names of their contributors may be used to endorse or promote products derived from this software without specific prior written permission. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 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 OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. *************************************************************************** %%The following software may be included in this product: Cmake Use of any of this software is governed by the terms of the license below: CMake is distributed under BSD License Copyright (c) 2008, Kitware, Inc. All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. * Neither the name of Kitware, Inc. nor the names of its 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 IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL Kitware Inc. BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 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 OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. Additional License(s) cmake-2.4.8/Utilities/cmtar/compat/gethostname.c: gethostname.c: minimal substitute for missing gethostname() function created 2000-Mar-02 jmk requires SVR4 uname() and -lc by Jim Knoble Copyright ? 2000 Jim Knoble Permission to use, copy, modify, distribute, and sell this software and its documentation for any purpose is hereby granted without fee, provided that the above copyright notice appear in all copies and that both that copyright notice and this permission notice appear in supporting documentation. This software is provided "as is", without warranty of any kind, express or implied, including but not limited to the warranties of merchantability, fitness for a particular purpose and noninfringement. In no event shall the author(s) be liable for any claim, 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 use or other dealings in the software. ---------------------------------- * Originally written by Steven M. Bellovin while * at the University of North Carolina at Chapel Hill. Later tweaked by * a couple of people on Usenet. Completely overhauled by Rich $alz * and Jim Berets in August, 1990. * * This code is in the public domain and has no copyright. ------------------------------- THIS CODE IS SPECIFICALLY EXEMPTED FROM THE NCURSES PACKAGE COPYRIGHT. You may freely copy it for use as a template for your own field types. If you develop a field type that might be of general use, please send it back to the ncurses maintainers for inclusion in the next version. ************************************************************************** * Author : Per Foreby, [email protected] * Author : Juergen Pfeifer, [email protected] ************************************************************************** ---------------------------------------- Copyright (c) 2002 Insight Consortium. All rights reserved. See ITKCopyright.txt or http://www.itk.org/HTML/Copyright.htm for details. This software is distributed WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the above copyright notices for more information. -------------------------------------------- Skeleton parser for Yacc-like parsing with Bison, Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003 Free Software Foundation, Inc. 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 the Free Software Foundation; either version 2, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. As a special exception, when this file is copied by Bison into a Bison output file, you may use that output file without restriction. This special exception was added by the Free Software Foundation in version 1.24 of Bison. --------------------------------------------------- cmake-2.4.8/Utilities/cmzlib/zlib.h: zlib.h -- interface of the 'zlib' general purpose compression library version 1.1.4, March 11th, 2002 Copyright (C) 1995-2002 Jean-loup Gailly and Mark Adler This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages arising from the use of this software. Permission is granted to anyone to use this software for any purpose, including commercial applications, and to alter it and redistribute it freely, subject to the following restrictions: 1. The origin of this software must not be misrepresented; you must not claim that you wrote the original software. If you use this software in a product, an acknowledgment in the product documentation would be appreciated but is not required. 2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software. 3. This notice may not be removed or altered from any source distribution. Jean-loup Gailly Mark Adler ---------------------------------------------- This source code was modified by Martin Hedenfalk for use in Curl. His latest changes were done 2000-09-18. It has since been patched away like a madman by Daniel Stenberg to make it better applied to curl conditions, and to make it not use globals, pollute name space and more. This source code 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 It has since been patched and modified a lot by Daniel Stenberg to make it better applied to curl conditions, and to make it not use globals, pollute name space and more. This source code awaits a rewrite to work around the paragraph 2 in the BSD licenses as explained below. Copyright (c) 1998, 1999 Kungliga Tekniska Hgskolan (Royal Institute of Technology, Stockholm, Sweden). All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. 3. Neither the name of the Institute nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. THIS SOFTWARE IS PROVIDED BY THE INSTITUTE AND CONTRIBUTORS ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE INSTITUTE OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 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 OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. --------------------------------------------- Permission to use, copy, modify, and distribute this software for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies. THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE AUTHORS AND CONTRIBUTORS ACCEPT NO RESPONSIBILITY IN ANY CONCEIVABLE MANNER. -------------------------------------------------- cmake-2.4.8/Utilities/cmcurl/inet_pton.c, cmake-2.4.8/Source/CTest/Curl/inet_pton.c: This is from the BIND 4.9.4 release, modified to compile by itself Copyright (c) 1996 by Internet Software Consortium. Permission to use, copy, modify, and distribute this software for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies. THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL INTERNET SOFTWARE CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. ------------------------------------------------------- * Copyright (C) 2001 by Eric Kidd. All rights reserved. * Copyright (C) 2001 by Luke Howard. All rights reserved. * Copyright (C) 2002 Ximian, Inc. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * 3. The name of the author may not be used to endorse or promote products * derived from this software without specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND ANY * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE * DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE FOR * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL * 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 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. --------------------------------------------------- Copyright (c) 1994 The Regents of the University of California. All rights reserved. This code is derived from software contributed to Berkeley by Chuck Karish of Mindcraft, Inc. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. 3. Neither the name of the University nor the names of its contributors Copyright (c) 1985, 1986 The Regents of the University of California. All rights reserved. This code is derived from software contributed to Berkeley by James A. Woods, derived from original work by Spencer Thomas and Joseph Orost. ------------------------------------------------ Copyright (c) 1989, 1993, 1994 The Regents of the University of California. All rights reserved. This code is derived from software contributed to Berkeley by Guido van Rossum. Copyright (c) 1990 The Regents of the University of California. All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. 3. All advertising materials mentioning features or use of this software must display the following acknowledgement: This product includes software developed by the University of California, Berkeley and its contributors. 4. Neither the name of the University nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 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 OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. ------------------------------------------------------ Project ___| | | | _ \| | / __| | | | |_) | | | (__| |_| | _ <| |___ \___|\___/|_| \_\_____| Copyright (C) 1998 - 2004, Daniel Stenberg, , et al. Copyright (C) 2004, Daniel Stenberg, , et al. This software is licensed as described in the file COPYING, which you should have received as part of this distribution. The terms are also available at http://curl.haxx.se/docs/copyright.html. You may opt to use, copy, modify, merge, publish, distribute and/or sell copies of the Software, and permit persons to whom the Software is furnished to do so, under the terms of the COPYING file. This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. ------------------------------------------------------------ *************************************************************************** Copyright (c) 1998 Free Software Foundation, Inc. Copyright (c) 1998,2000 Free Software Foundation, Inc. Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, distribute with modifications, sublicense, and/or sell 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 all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 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 OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. Except as contained in this notice, the name(s) of the above copyright holders shall not be used in advertising or otherwise to promote the sale, use or other dealings in this Software without prior written authorization. *************************************************************************** ------------------------------------------------------ Copyright (c) 1997 Todd C. Miller All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. 3. The name of the author may not be used to endorse or promote products derived from this software without specific prior written permission. THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 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 OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 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 OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. *************************************************************************** *************************************************************************** %%The following software may be included in this product: Fred Fish's Dbug Library Use of any of this software is governed by the terms of the license below: * * N O T I C E * * * * Copyright Abandoned, 1987, Fred Fish * * * * * * This previously copyrighted work has been placed into the public * * domain by the author and may be freely used for any purpose, * * private or commercial. * * * * Because of the number of inquiries I was receiving about the use * * of this product in commercially developed works I have decided to * * simply make it public domain to further its unrestricted use. I * * specifically would be most happy to see this material become a * * part of the standard Unix distributions by AT&T and the Berkeley * * Computer Science Research Group, and a standard part of the GNU * * system from the Free Software Foundation. * * * * I would appreciate it, as a courtesy, if this notice is left in * * all copies and derivative works. Thank you. * * * * The author makes no warranty of any kind with respect to this * * product and explicitly disclaims any implied warranties of mer- * * chantability or fitness for any particular purpose. * * *************************************************************************** %%The following software may be included in this product: 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: * Copyright Abandoned, 1987, Fred Fish * * * * * * This previously copyrighted work has been placed into the public * * domain by the author and may be freely used for any purpose, * * private or commercial. * * * * Because of the number of inquiries I was receiving about the use * * of this product in commercially developed works I have decided to * * simply make it public domain to further its unrestricted use. I * * specifically would be most happy to see this material become a * * part of the standard Unix distributions by AT&T and the Berkeley * * Computer Science Research Group, and a standard part of the GNU * * system from the Free Software Foundation. * * * * I would appreciate it, as a courtesy, if this notice is left in * * all copies and derivative works. Thank you. * * * * The author makes no warranty of any kind with respect to this * * product and explicitly disclaims any implied warranties of mer- * * chantability or fitness for any particular purpose. * *************************************************************************** %%The following software may be included in this product: GNU Libtool, only ltmain.sh, libtool, auto-gen fil Use of any of this software is governed by the terms of the license below: ltmain.sh inclusion: # ltmain.sh - Provide generalized library-building support services. # NOTE: Changing this file will not affect anything until you rerun configure. # # Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005, 2006, # 2007 Free Software Foundation, Inc. # Originally by Gordon Matzigkeit , 1996 # # 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 # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, but # WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU # General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. # # As a special exception to the GNU General Public License, if you # distribute this file as part of a program that contains a # configuration script generated by Autoconf, you may include it under # the same distribution terms that you use for the rest of that program. libtool inclusion: # libtoolT - Provide generalized library-building support services. # Generated automatically by (GNU mysql 5.1.30) # NOTE: Changes made to this file will be lost: look at ltmain.sh. # # Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, # 2006, 2007 Free Software Foundation, Inc. # # This file is part of GNU Libtool: # Originally by Gordon Matzigkeit , 1996 # # 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 # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, but # WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU # General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. # # As a special exception to the GNU General Public License, if you # distribute this file as part of a program that contains a # configuration script generated by Autoconf, you may include it under # the same distribution terms that you use for the rest of that program. Auto-generated files: # `$echo "$cfgfile" | sed 's%^.*/%%'` - Provide generalized library-building # support services. # Generated automatically by $PROGRAM (GNU $PACKAGE $VERSION$TIMESTAMP) # NOTE: Changes made to this file will be lost: look at ltmain.sh. # # Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, # 2004, 2005, 2006, 2007 Free Software Foundation, Inc. # # This file is part of GNU Libtool: # Originally by Gordon Matzigkeit , 1996 # # 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 # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, but # WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU # General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. # # As a special exception to the GNU General Public License, if you # distribute this file as part of a program that contains a # configuration script generated by Autoconf, you may include it under # the same distribution terms that you use for the rest of that program. Additional License(s) # As a special exception to the GNU General Public License, if you # distribute this file as part of a program that contains a # configuration script generated by Autoconf, you may include it under # the same distribution terms that you use for the rest of that program. *************************************************************************** %%The following software may be included in this product: innochecksum.c Use of any of this software is governed by the terms of the license below: GNU GENERAL PUBLIC LICENSE Version 2, June 1991 Copyright (C) 1989, 1991 Free Software Foundation, Inc. 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. Preamble The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users. This General Public License applies to most of the Free Software Foundation's software and to any other program whose authors commit to using it. (Some other Free Software Foundation software is covered by the GNU Lesser General Public License instead.) You can apply it to your programs, too. When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs; and that you know you can do these things. To protect your rights, we need to make restrictions that forbid anyone to deny you these rights or to ask you to surrender the rights. These restrictions translate to certain responsibilities for you if you distribute copies of the software, or if you modify it. For example, if you distribute copies of such a program, whether gratis or for a fee, you must give the recipients all the rights that you have. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights. We protect your rights with two steps: (1) copyright the software, and (2) offer you this license which gives you legal permission to copy, distribute and/or modify the software. Also, for each author's protection and ours, we want to make certain that everyone understands that there is no warranty for this free software. If the software is modified by someone else and passed on, we want its recipients to know that what they have is not the original, so that any problems introduced by others will not reflect on the original authors' reputations. Finally, any free program is threatened constantly by software patents. We wish to avoid the danger that redistributors of a free program will individually obtain patent licenses, in effect making the program proprietary. To prevent this, we have made it clear that any patent must be licensed for everyone's free use or not licensed at all. The precise terms and conditions for copying, distribution and modification follow. TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION 0. This License applies to any program or other work which contains a notice placed by the copyright holder saying it may be distributed under the terms of this General Public License. The "Program", below, refers to any such program or work, and a "work based on the Program" means either the Program or any derivative work under copyright law: that is to say, a work containing the Program or a portion of it, either verbatim or with modifications and/or translated into another language. (Hereinafter, translation is included without limitation in the term "modification".) Each licensee is addressed as "you". Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running the Program is not restricted, and the output from the Program is covered only if its contents constitute a work based on the Program (independent of having been made by running the Program). Whether that is true depends on what the Program does. 1. You may copy and distribute verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and give any other recipients of the Program a copy of this License along with the Program. You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee. 2. You may modify your copy or copies of the Program or any portion of it, thus forming a work based on the Program, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions: a) You must cause the modified files to carry prominent notices stating that you changed the files and the date of any change. b) You must cause any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License. c) If the modified program normally reads commands interactively when run, you must cause it, when started running for such interactive use in the most ordinary way, to print or display an announcement including an appropriate copyright notice and a notice that there is no warranty (or else, saying that you provide a warranty) and that users may redistribute the program under these conditions, and telling the user how to view a copy of this License. (Exception: if the Program itself is interactive but does not normally print such an announcement, your work based on the Program is not required to print an announcement.) These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Program, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Program, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it. Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Program. In addition, mere aggregation of another work not based on the Program with the Program (or with a work based on the Program) on a volume of a storage or distribution medium does not bring the other work under the scope of this License. 3. You may copy and distribute the Program (or a work based on it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you also do one of the following: a) Accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, b) Accompany it with a written offer, valid for at least three years, to give any third party, for a charge no more than your cost of physically performing source distribution, a complete machine-readable copy of the corresponding source code, to be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, c) Accompany it with the information you received as to the offer to distribute corresponding source code. (This alternative is allowed only for noncommercial distribution and only if you received the program in object code or executable form with such an offer, in accord with Subsection b above.) The source code for a work means the preferred form of the work for making modifications to it. For an executable work, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the executable. However, as a special exception, the source code distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable. If distribution of executable or object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place counts as distribution of the source code, even though third parties are not compelled to copy the source along with the object code. 4. You may not copy, modify, sublicense, or distribute the Program except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense or distribute the Program is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance. 5. You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Program or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Program (or any work based on the Program), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Program or works based on it. 6. Each time you redistribute the Program (or any work based on the Program), the recipient automatically receives a license from the original licensor to copy, distribute or modify the Program subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties to this License. 7. If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Program at all. For example, if a patent license would not permit royalty-free redistribution of the Program by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Program. If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply and the section as a whole is intended to apply in other circumstances. It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system, which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice. This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License. 8. If the distribution and/or use of the Program is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Program under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License. 9. The Free Software Foundation may publish revised and/or new versions of the General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. Each version is given a distinguishing version number. If the Program specifies a version number of this License which applies to it and "any later version", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of this License, you may choose any version ever published by the Free Software Foundation. 10. If you wish to incorporate parts of the Program into other free programs whose distribution conditions are different, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally. NO WARRANTY 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. END OF TERMS AND CONDITIONS How to Apply These Terms to Your New Programs If you develop a new program, and you want it to be of the greatest possible use to the public, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms. To do so, attach the following notices to the program. It is safest to attach them to the start of each source file to most effectively convey the exclusion of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found. one line to give the program's name and an idea of what it does. Copyright (C) yyyy name of author 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 the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. Also add information on how to contact you by electronic and paper mail. If the program is interactive, make it output a short notice like this when it starts in an interactive mode: Gnomovision version 69, Copyright (C) year name of author Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. This is free software, and you are welcome to redistribute it under certain conditions; type `show c' for details. The hypothetical commands `show w' and `show c' should show the appropriate parts of the General Public License. Of course, the commands you use may be called something other than `show w' and `show c'; they could even be mouse-clicks or menu items--whatever suits your program. You should also get your employer (if you work as a programmer) or your school, if any, to sign a "copyright disclaimer" for the program, if necessary. Here is a sample; alter the names: Yoyodyne, Inc., hereby disclaims all copyright interest in the program `Gnomovision' (which makes passes at compilers) written by James Hacker. signature of Ty Coon, 1 April 1989 Ty Coon, President of Vice This General Public License does not permit incorporating your program into proprietary programs. If your program is a subroutine library, you may consider it more useful to permit linking proprietary applications with the library. If this is what you want to do, use the GNU Lesser General Public License instead of this License. Additional Documentation License(s) innochecksum.c is documented in the MySQL Reference Manual at http://dev.mysql.com/doc/refman/5.1/en/innochecksum.html The Reference Manual is not licensed under the GPL; rather, it is offered under normal copyright, but with permission to copy/redistribute electronically. *************************************************************************** %%The following software may be included in this product: lib_sql.cc Use of any of this software is governed by the terms of the license below: /* * Copyright (c) 2000 * SWsoft company * * This material is provided "as is", with absolutely no warranty expressed * or implied. Any use is at your own risk. * * Permission to use or copy this software for any purpose is hereby granted * without fee, provided the above notices are retained on all copies. * Permission to modify the code and to distribute modified code is granted, * provided the above notices are retained, and a notice that the code was * modified is included with the above copyright notice. * This code was modified by the MySQL team */ *************************************************************************** %%The following software may be included in this product: libevent Use of any of this software is governed by the terms of the license below: /* * Copyright (c) 2000-2004 Niels Provos * All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * 3. The name of the author may not be used to endorse or promote products * derived from this software without specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 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 OUT OF THE USE OF * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ Additional License(s) http://creativecommons.org/licenses/publicdomain *************************************************************************** %%The following software may be included in this product: Async DNS Library Use of any of this software is governed by the terms of the license below: /* Async DNS Library * Adam Langley * http://www.imperialviolet.org/eventdns.html * Public Domain code * * This software is Public Domain. To view a copy of the public domain dedication, * visit http://creativecommons.org/licenses/publicdomain/ or send a letter to * Creative Commons, 559 Nathan Abbott Way, Stanford, California 94305, USA. * * I ask and expect, but do not require, that all derivative works contain an * attribution similar to: * Parts developed by Adam Langley * * You may wish to replace the word "Parts" with something else depending on * the amount of original code. * * (Derivative works does not include programs which link against, run or include * the source verbatim in their source distributions) * * Version: 0.1b */ *************************************************************************** %%The following software may be included in this product: log.c Use of any of this software is governed by the terms of the license below: /* $OpenBSD: err.c,v 1.2 2002/06/25 15:50:15 mickey Exp $ */ /* * log.c * * Based on err.c, which was adapted from OpenBSD libc *err* *warn* code. * * Copyright (c) 2005 Nick Mathewson * * Copyright (c) 2000 Dug Song * * Copyright (c) 1993 * The Regents of the University of California. All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * 3. Neither the name of the University nor the names of its contributors * may be used to endorse or promote products derived from this software * without specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL * 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 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. */ *************************************************************************** %%The following software may be included in this product: min_heap.h Use of any of this software is governed by the terms of the license below: /* * Copyright (c) 2006 Maxim Yegorushkin * All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * 3. The name of the author may not be used to endorse or promote products * derived from this software without specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 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 OUT OF THE USE OF * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ *************************************************************************** %%The following software may be included in this product: win32.c Use of any of this software is governed by the terms of the license below: /* * Copyright 2000-2002 Niels Provos * Copyright 2003 Michael A. Davis * All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * 3. The name of the author may not be used to endorse or promote products * derived from this software without specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 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 OUT OF THE USE OF * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ *************************************************************************** %%The following software may be included in this product: regex++ Use of any of this software is governed by the terms of the license below: Copyright 1992, 1993, 1994 Henry Spencer. All rights reserved. This software is not subject to any license of the American Telephone and Telegraph Company or of the Regents of the University of California. Permission is granted to anyone to use this software for any purpose on any computer system, and to alter it and redistribute it, subject to the following restrictions: 1. The author is not responsible for the consequences of use of this software, no matter how awful, even if they arise from flaws in it. 2. The origin of this software must not be misrepresented, either by explicit claim or by omission. Since few users ever read sources, credits must appear in the documentation. 3. Altered versions must be plainly marked as such, and must not be misrepresented as being the original software. Since few users ever read sources, credits must appear in the documentation. 4. This notice may not be removed or altered. =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= /*- * Copyright (c) 1994 * The Regents of the University of California. All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * 3. All advertising materials mentioning features or use of this software * must display the following acknowledgement: * This product includes software developed by the University of * California, Berkeley and its contributors. * 4. Neither the name of the University nor the names of its contributors * may be used to endorse or promote products derived from this software * without specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL * 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 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * * @(#)COPYRIGHT 8.1 (Berkeley) 3/16/94 */ *************************************************************************** %%The following software may be included in this product: Richard A. O'Keefe strings package Use of any of this software is governed by the terms of the license below: These files are in the public domain. This includes getopt.c, which is the work of Henry Spencer, University of Toronto Zoology, who says of it "None of this software is derived from Bell software. I had no access to the source for Bell's versions at the time I wrote it. This software is hereby explicitly placed in the public domain. It may be used for any purpose on any machine by anyone." I would greatly prefer it if *my* material received no military use. *************************************************************************** %%The following software may be included in this product: t_ctype.h Use of any of this software is governed by the terms of the license below: http://bioinfo.mbb.yale.edu/genome/yeast/cluster/database/mysql/include/t_ctype.h /* Copyright (C) 1998, 1999 by Pruet Boonma, all rights reserved. Copyright (C) 1998 by Theppitak Karoonboonyanan, all rights reserved. Permission to use, copy, modify, distribute and sell this software and its documentation for any purpose is hereby granted without fee, provided that the above copyright notice appear in all copies. Smaphan Raruenrom and Pruet Boonma makes no representations about the suitability of this software for any purpose. It is provided "as is" without express or implied warranty. */ *************************************************************************** %%The following software may be included in this product: SHA-1 in C Use of any of this software is governed by the terms of the license below: SHA-1 in C By Steve Reid 100% Public Domain Additional License(s) 100% Public Domain *************************************************************************** %%The following software may be included in this product: TCMalloc (part of google-perftools) Use of any of this software is governed by the terms of the license below: # Copyright (c) 1998-2006, Google Inc. # All rights reserved. # # Redistribution and use in source and binary forms, with or without # modification, are permitted provided that the following conditions are # met: # # * Redistributions of source code must retain the above copyright # notice, this list of conditions and the following disclaimer. # * Redistributions in binary form must reproduce the above # copyright notice, this list of conditions and the following disclaimer # in the documentation and/or other materials provided with the # distribution. # * Neither the name of Google Inc. nor the names of its # contributors may be used to endorse or promote products derived from # this software without specific prior written permission. # # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS # "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT # LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR # A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT # OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, # SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 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 OUT OF THE USE # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. Additional License(s) *** File src/tests/ptmalloc/thread-m.h contains this GPLv2 (or later) text: /* Basic platform-independent macro definitions for mutexes and thread-specific data. Copyright (C) 1996, 1997, 1998 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Wolfram Gloger , 1996. The GNU C Library is free software; you can redistribute it and/or modify it under the terms of the GNU Library General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. The GNU C Library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Library General Public License for more details. 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 not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ *** File src/tests/ptmalloc/malloc-machine.h contains this BSD like text: /* Basic platform-independent macro definitions for mutexes, thread-specific data and parameters for malloc. Posix threads (pthreads) version. Copyright (C) 2004 Wolfram Gloger . Permission to use, copy, modify, distribute, and sell this software and its documentation for any purpose is hereby granted without fee, provided that (i) the above copyright notices and this permission notice appear in all copies of the software and related documentation, and (ii) the name of Wolfram Gloger may not be used in any advertising or publicity relating to the software. THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND, EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL WOLFRAM GLOGER BE LIABLE FOR ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. */ *************************************************************************** %%The following software may be included in this product: The tz database Use of any of this software is governed by the terms of the license below: Sources for Time Zone and Daylight Saving Time Data @(#)tz-link.htm 7.54 Please send corrections to this web page to the time zone mailing list. The tz database The public-domain time zone database contains code and data that represent the history of local time for many representative locations around the globe. It is updated periodically to reflect changes made by political bodies to time zone boundaries, UTC offsets, and daylight-saving rules. This database (often called tz or zoneinfo) is used by several implementations, including the GNU C Library used in GNU/Linux, FreeBSD, NetBSD, OpenBSD, Cygwin, DJGPP, HP-UX, IRIX, Mac OS X, OpenVMS, Solaris, Tru64, and UnixWare. Each location in the database represents a national region where all clocks keeping local time have agreed since 1970. Locations are identified by continent or ocean and then by the name of the location, which is typically the largest city within the region. For example, America/New_York represents most of the US eastern time zone; America/Phoenix represents most of Arizona, which uses mountain time without daylight saving time (DST); America/Detroit represents most of Michigan, which uses eastern time but with different DST rules in 1975; and other entries represent smaller regions like Starke County, Indiana, which switched from central to eastern time in 1991 and switched back in 2006. To use the database on an extended POSIX implementation set the TZ environment variable to the location's full name, e.g., TZ="America/New_York". In the tz database's FTP distribution the code is in the file tzcodeC.tar.gz, where C is the code's version; similarly, the data are in tzdataD.tar.gz, where D is the data's version. The following shell commands download these files to a GNU/Linux or similar host; see the downloaded README file for what to do next. wget 'ftp://elsie.nci.nih.gov/pub/tz*.tar.gz' gzip -dc tzcode*.tar.gz | tar -xf - gzip -dc tzdata*.tar.gz | tar -xf - The code lets you compile the tz source files into machine-readable binary files, one for each location. It also lets you read a tz binary file and interpret time stamps for that location. The data are by no means authoritative. If you find errors, please send changes to the time zone mailing list. You can also subscribe to the mailing list, retrieve the archive of old messages (in gzip compressed format), or retrieve archived older versions of code and data; there is also a smaller HTTP mirror. *************************************************************************** %%The following software may be included in this product: UnicodeData.txt Use of any of this software is governed by the terms of the license below: Unicode Terms of Use For the general privacy policy governing access to this site, see the Unicode Privacy Policy. For trademark usage, see the Unicode Consortium (R) Trademarks and Logo Policy. Notice to End User: Terms of Use Carefully read the following legal agreement ("Agreement"). Use or copying of the software and/or codes provided with this agreement (The "Software") constitutes your acceptance of these terms 1. Unicode Copyright. 1. Copyright (c) 1991-2008 Unicode, Inc. All rights reserved. 2. Certain documents and files on this website contain a legend indicating that "Modification is permitted." Any person is hereby authorized, without fee, to modify such documents 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, reproduce, and distribute all documents and files solely for informational purposes in the creation of products supporting the Unicode Standard, subject to the Terms and Conditions herein. 4. Further specifications of rights and restrictions pertaining to the use of the particular set of data files known as the "Unicode Character Database" can be found in Exhibit 1. 5. Each version of the Unicode Standard has further specifications of rights and restrictions of use. For the book editions, these are found on the back of the title page. For the online edition, certain files (such as the PDF files for book chapters and code charts) carry specific restrictions. All other files are covered under these general Terms of Use. To request a permission to reproduce any part of the Unicode 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 licensed to the United States of America, its agencies and/or instrumentalities under this Agreement is commercial technical data or commercial computer software developed exclusively at private expense as defined in FAR 2.101, or DFARS 252.227-7014 (June 1995), as applicable. For technical data, use, duplication, or disclosure by the Government is subject to restrictions as set forth in DFARS 202.227-7015 Technical Data, Commercial and Items (Nov 1995) and this Agreement. For Software, in accordance with FAR 12-212 or DFARS 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. 1. This publication and/or website may include technical or typographical errors or other inaccuracies . Changes are periodically added to the information herein; these changes will be incorporated in new editions of the publication and/or website. Unicode may make improvements and/or changes in the product(s) and/or program(s) described in this publication and/or website at any time. 2. If this file has been purchased on magnetic or optical 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 SOFTWARE IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND EITHER EXPRESS, IMPLIED, OR STATUTORY, INCLUDING, BUT NOT LIMITED TO, ANY WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT. UNICODE AND ITS LICENSORS ASSUME NO RESPONSIBILITY FOR ERRORS OR OMISSIONS IN 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 liable for any special, incidental, indirect or consequential damages of any kind, or any damages whatsoever, whether or not Unicode was advised of the possibility of the damage, including, without limitation, those resulting from the following: loss of use, data or profits, in connection with the use, modification or distribution of this information or its derivatives. 5. Trademarks. 1. Unicode and the Unicode logo are registered trademarks of Unicode, Inc. 2. This site contains product names and corporate names of other companies. All product names and company names and logos mentioned herein are the trademarks or registered trademarks of their respective owners. Other products and corporate names mentioned herein which are trademarks of a third party are used only for explanation and for the owners' benefit and with no intent to infringe. 3. Use of third party products or information referred to herein is at the user's risk. 6. Miscellaneous. 1. Jurisdiction and Venue. This server is operated from a location in the State of California, United States of America. Unicode makes no representation that the materials are appropriate for use in other locations. If you access this server from other locations, you are responsible for compliance with local laws. This Agreement, all use of this site and any claims and damages resulting from use of this site are governed solely by the laws of the State of California without regard to any principles which would apply 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. 2. Modification by Unicode Unicode shall have the right to modify this Agreement at any time by posting it to this site. The user may not assign any part of this Agreement without Unicode's prior written consent. 3. Taxes. The user agrees to pay any taxes arising from access to this website or use of the information herein, except for those based on Unicode's net income. 4. Severability. If any provision of this Agreement is declared invalid or unenforceable, the remaining provisions of this Agreement shall remain in effect. 5. Entire Agreement. This Agreement constitutes the entire agreement between the parties. EXHIBIT 1 UNICODE, INC. LICENSE AGREEMENT - DATA FILES AND SOFTWARE Unicode Data Files include all data files under the directories http://www.unicode.org/Public/, http://www.unicode.org/reports/, and http://www.unicode.org/cldr/data/ . Unicode Software includes any source code published in the Unicode Standard or under the directories http://www.unicode.org/Public/, http://www.unicode.org/reports/, and http://www.unicode.org/cldr/data/. NOTICE TO USER: Carefully read the following legal agreement. BY DOWNLOADING, INSTALLING, COPYING OR OTHERWISE USING UNICODE INC.'S DATA FILES ("DATA FILES"), AND/OR SOFTWARE ("SOFTWARE"), YOU UNEQUIVOCALLY ACCEPT, AND AGREE TO BE BOUND BY, ALL OF THE TERMS AND CONDITIONS OF THIS AGREEMENT. IF YOU DO NOT AGREE, DO NOT DOWNLOAD, INSTALL, COPY, DISTRIBUTE OR USE THE DATA FILES OR SOFTWARE. COPYRIGHT AND PERMISSION NOTICE Copyright (c) 1991-2008 Unicode, Inc. All rights reserved. Distributed under the Terms of Use in http://www.unicode.org/copyright.html. Permission is hereby granted, free of charge, to any person obtaining a copy of the Unicode data files and any associated documentation (the "Data Files") or Unicode software and any associated documentation (the "Software") to deal in the Data Files or Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, and/or sell copies of the Data Files or Software, and to permit persons to whom the Data Files or Software are furnished to do so, provided that (a) the above copyright notice(s) and this permission notice appear with all copies of the Data Files or Software, (b) both the above copyright notice(s) and this permission notice appear in associated documentation, and (c) there is clear notice in each modified Data File or in the Software as well as in the documentation associated with the Data File(s) or Software that the data or software has been modified. THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF THIRD PARTY RIGHTS. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA FILES OR SOFTWARE. Except as contained in this notice, the name of a copyright holder shall not be used in advertising or otherwise to promote the sale, use or other dealings in these Data Files or Software without prior written authorization of the copyright holder. Unicode and the Unicode logo are trademarks of Unicode, Inc., and may be registered in some jurisdictions. All other trademarks and registered trademarks mentioned herein are the property of their respective owners. *************************************************************************** %%The following software may be included in this product: zlib Use of any of this software is governed by the terms of the license below: /* zlib.h -- interface of the 'zlib' general purpose compression library version 1.2.3, July 18th, 2005 Copyright (C) 1995-2005 Jean-loup Gailly and Mark Adler This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages arising from the use of this software. Permission is granted to anyone to use this software for any purpose, including commercial applications, and to alter it and redistribute it freely, subject to the following restrictions: 1. The origin of this software must not be misrepresented; you must not claim that you wrote the original software. If you use this software in a product, an acknowledgment in the product documentation would be appreciated but is not required. 2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software. 3. This notice may not be removed or altered from any source distribution. Jean-loup Gailly [email protected] Mark Adler [email protected] */ *************************************************************************** %%The following software may be included in this product: dtoa.c Use of any of this software is governed by the terms of the license below: /**************************************************************** This file incorporates work covered by the following copyright and permission notice: The author of this software is David M. Gay. Copyright (c) 1991, 2000, 2001 by Lucent Technologies. Permission to use, copy, modify, and distribute this software for any purpose without fee is hereby granted, provided that this entire notice is included in all copies of any software which is or includes a copy or modification of this software and in all copies of the supporting documentation for such software. THIS SOFTWARE IS BEING PROVIDED "AS IS", WITHOUT ANY EXPRESS OR IMPLIED WARRANTY. IN PARTICULAR, NEITHER THE AUTHOR NOR LUCENT MAKES ANY REPRESENTATION OR WARRANTY OF ANY KIND CONCERNING THE MERCHANTABILITY OF THIS SOFTWARE OR ITS FITNESS FOR ANY PARTICULAR PURPOSE. ***************************************************************/ *************************************************************************** %%The following software may be included in this product: getarg.{c,h} Use of any of this software is governed by the terms of the license below: /* Copyright (C) 2003 MySQL AB 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 the Free Software Foundation; version 2 of the License. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ /* * Copyright (c) 1997, 1999 Kungliga Tekniska H366gskolan * (Royal Institute of Technology, Stockholm, Sweden). * All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * * 3. Neither the name of the Institute nor the names of its contributors * may be used to endorse or promote products derived from this software * without specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY THE INSTITUTE AND CONTRIBUTORS ``AS IS'' AND * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE * ARE DISCLAIMED. IN NO EVENT SHALL THE INSTITUTE OR CONTRIBUTORS BE LIABLE * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL * 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 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. */ *************************************************************************** %%The following software may be included in this product: MD5 message-digest algorithm (md5_hash.cpp) Use of any of this software is governed by the terms of the license below: /* * This code implements the MD5 message-digest algorithm. * The algorithm is due to Ron Rivest. This code was * written by Colin Plumb in 1993, no copyright is claimed. * This code is in the public domain; do with it what you wish. * * Equivalent code is available from RSA Data Security, Inc. * This code has been tested against that, and is equivalent, * except that you don't need to include two pages of legalese * with every copy. * * The code has been modified by Mikael Ronstroem to handle * calculating a hash value of a key that is always a multiple * of 4 bytes long. Word 0 of the calculated 4-word hash value * is returned as the hash value. */ *************************************************************************** %%The following software may be included in this product: nt_servc.{cc,h} Use of any of this software is governed by the terms of the license below: /** @file @brief Windows NT Service class library. Copyright Abandoned 1998 Irena Pancirov - Irnet Snc This file is public domain and comes with NO WARRANTY of any kind */ *************************************************************************** %%The following software may be included in this product: GNU Readline Use of any of this software is governed by the terms of the license below: GNU GENERAL PUBLIC LICENSE Version 2, June 1991 Copyright (C) 1989, 1991 Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. Preamble The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users. This General Public License applies to most of the Free Software Foundation's software and to any other program whose authors commit to using it. (Some other Free Software Foundation software is covered by the GNU Lesser General Public License instead.) You can apply it to your programs, too. When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs; and that you know you can do these things. To protect your rights, we need to make restrictions that forbid anyone to deny you these rights or to ask you to surrender the rights. These restrictions translate to certain responsibilities for you if you distribute copies of the software, or if you modify it. For example, if you distribute copies of such a program, whether gratis or for a fee, you must give the recipients all the rights that you have. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights. We protect your rights with two steps: (1) copyright the software, and (2) offer you this license which gives you legal permission to copy, distribute and/or modify the software. Also, for each author's protection and ours, we want to make certain that everyone understands that there is no warranty for this free software. If the software is modified by someone else and passed on, we want its recipients to know that what they have is not the original, so that any problems introduced by others will not reflect on the original authors' reputations. Finally, any free program is threatened constantly by software patents. We wish to avoid the danger that redistributors of a free program will individually obtain patent licenses, in effect making the program proprietary. To prevent this, we have made it clear that any patent must be licensed for everyone's free use or not licensed at all. The precise terms and conditions for copying, distribution and modification follow. GNU GENERAL PUBLIC LICENSE TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION 0. This License applies to any program or other work which contains a notice placed by the copyright holder saying it may be distributed under the terms of this General Public License. The "Program", below, refers to any such program or work, and a "work based on the Program" means either the Program or any derivative work under copyright law: that is to say, a work containing the Program or a portion of it, either verbatim or with modifications and/or translated into another language. (Hereinafter, translation is included without limitation in the term "modification".) Each licensee is addressed as "you". Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running the Program is not restricted, and the output from the Program is covered only if its contents constitute a work based on the Program (independent of having been made by running the Program). Whether that is true depends on what the Program does. 1. You may copy and distribute verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and give any other recipients of the Program a copy of this License along with the Program. You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee. 2. You may modify your copy or copies of the Program or any portion of it, thus forming a work based on the Program, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions: a) You must cause the modified files to carry prominent notices stating that you changed the files and the date of any change. b) You must cause any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License. c) If the modified program normally reads commands interactively when run, you must cause it, when started running for such interactive use in the most ordinary way, to print or display an announcement including an appropriate copyright notice and a notice that there is no warranty (or else, saying that you provide a warranty) and that users may redistribute the program under these conditions, and telling the user how to view a copy of this License. (Exception: if the Program itself is interactive but does not normally print such an announcement, your work based on the Program is not required to print an announcement.) These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Program, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Program, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it. Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Program. In addition, mere aggregation of another work not based on the Program with the Program (or with a work based on the Program) on a volume of a storage or distribution medium does not bring the other work under the scope of this License. 3. You may copy and distribute the Program (or a work based on it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you also do one of the following: a) Accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, b) Accompany it with a written offer, valid for at least three years, to give any third party, for a charge no more than your cost of physically performing source distribution, a complete machine-readable copy of the corresponding source code, to be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, c) Accompany it with the information you received as to the offer to distribute corresponding source code. (This alternative is allowed only for noncommercial distribution and only if you received the program in object code or executable form with such an offer, in accord with Subsection b above.) The source code for a work means the preferred form of the work for making modifications to it. For an executable work, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the executable. However, as a special exception, the source code distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable. If distribution of executable or object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place counts as distribution of the source code, even though third parties are not compelled to copy the source along with the object code. 4. You may not copy, modify, sublicense, or distribute the Program except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense or distribute the Program is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance. 5. You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Program or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Program (or any work based on the Program), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Program or works based on it. 6. Each time you redistribute the Program (or any work based on the Program), the recipient automatically receives a license from the original licensor to copy, distribute or modify the Program subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties to this License. 7. If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Program at all. For example, if a patent license would not permit royalty-free redistribution of the Program by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Program. If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply and the section as a whole is intended to apply in other circumstances. It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system, which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice. This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License. 8. If the distribution and/or use of the Program is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Program under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License. 9. The Free Software Foundation may publish revised and/or new versions of the General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. Each version is given a distinguishing version number. If the Program specifies a version number of this License which applies to it and "any later version", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of this License, you may choose any version ever published by the Free Software Foundation. 10. If you wish to incorporate parts of the Program into other free programs whose distribution conditions are different, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally. NO WARRANTY 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. END OF TERMS AND CONDITIONS How to Apply These Terms to Your New Programs If you develop a new program, and you want it to be of the greatest possible use to the public, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms. To do so, attach the following notices to the program. It is safest to attach them to the start of each source file to most effectively convey the exclusion of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found. Copyright (C) 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 the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. Also add information on how to contact you by electronic and paper mail. If the program is interactive, make it output a short notice like this when it starts in an interactive mode: Gnomovision version 69, Copyright (C) year name of author Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. This is free software, and you are welcome to redistribute it under certain conditions; type `show c' for details. The hypothetical commands `show w' and `show c' should show the appropriate parts of the General Public License. Of course, the commands you use may be called something other than `show w' and `show c'; they could even be mouse-clicks or menu items--whatever suits your program. You should also get your employer (if you work as a programmer) or your school, if any, to sign a "copyright disclaimer" for the program, if necessary. Here is a sample; alter the names: Yoyodyne, Inc., hereby disclaims all copyright interest in the program `Gnomovision' (which makes passes at compilers) written by James Hacker. , 1 April 1989 Ty Coon, President of Vice This General Public License does not permit incorporating your program into proprietary programs. If your program is a subroutine library, you may consider it more useful to permit linking proprietary applications with the library. If this is what you want to do, use the GNU Lesser General Public License instead of this License. *************************************************************************** %%The following software may be included in this product: HandlerSocket plugin for MySQL Copyright (c) 2010 DeNA Co.,Ltd. All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. * Neither the name of DeNA Co.,Ltd. nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. THIS SOFTWARE IS PROVIDED BY DeNA Co.,Ltd. "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL DeNA Co.,Ltd. BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 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 OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. ***************************************************************************
we have a customer that has observed problems related to the
interaction of the thread pools in mariadb 5.5.30 and tokudb 7.1.0.
the problem is that connections that stuck for 100's of seconds in the
Killed state when a big tokudb transaction commit is in progress. the
customer claims that this problem was resolved by turning the thread
pool OFF. have there been any fixes to the thread pool implementation
post the 5.5.30 release?
here is some information that may be useful.
the processlist showed 2838 client connections of which:
851 Killed
483 Sleep
1467 Connect
1 show processlist
1 processing a commit on a big delete from a tokudb table
35 blocked on a row lock held by the big delete
the Killed connections look like:
84847752 sfi_mysql 10.0.0.60:1814 sfi Killed 93 NULL 0.000
with the connection address and time slightly different
a gdb snapshot of the system at the time of the failure:
291 total threads
130 threads waiting on fil_aio_wait
52 threads waiting on tokudb's work_on_kibbutz
16 thread tokudb deserialization thread waiting
36 mysql update thread blocked on the tokudb lock tree
1thread executing a big tokudb delete transaction
40 threads in the thread pool get_event function
1 tokudb checkpoint thread blocked waiting for the LP MO lock, which
is held by the big txn commit thread
that leaves 15 misc worker threads that are not doing anything interesting
the gdb stacks for the thread pool threads are:
Thread 78 : epoll_wait , io_poll_wait , listener , get_event ,
worker_main , start_thread , clone
Thread 71 : pthread_cond_timedwait@@GLIBC_2.3.2 ,
inline_mysql_cond_timedwait , get_event , worker_main , start_thread ,
clone
Thread 70 : epoll_wait , io_poll_wait , listener , get_event ,
worker_main , start_thread , clone
Thread 69 : pthread_cond_timedwait@@GLIBC_2.3.2 ,
inline_mysql_cond_timedwait , get_event , worker_main , start_thread ,
clone
Thread 68 : epoll_wait , io_poll_wait , listener , get_event ,
worker_main , start_thread , clone
Thread 62 : epoll_wait , io_poll_wait , listener , get_event ,
worker_main , start_thread , clone
Thread 57 : epoll_wait , io_poll_wait , listener , get_event ,
worker_main , start_thread , clone
Thread 52 : epoll_wait , io_poll_wait , listener , get_event ,
worker_main , start_thread , clone
Thread 51 : pthread_cond_timedwait@@GLIBC_2.3.2 ,
inline_mysql_cond_timedwait , get_event , worker_main , start_thread ,
clone
Thread 49 : pthread_cond_timedwait@@GLIBC_2.3.2 ,
inline_mysql_cond_timedwait , get_event , worker_main , start_thread ,
clone
Thread 45 : pthread_cond_timedwait@@GLIBC_2.3.2 ,
inline_mysql_cond_timedwait , get_event , worker_main , start_thread ,
clone
Thread 44 : pthread_cond_timedwait@@GLIBC_2.3.2 ,
inline_mysql_cond_timedwait , get_event , worker_main , start_thread ,
clone
Thread 43 : epoll_wait , io_poll_wait , listener , get_event ,
worker_main , start_thread , clone
Thread 42 : pthread_cond_timedwait@@GLIBC_2.3.2 ,
inline_mysql_cond_timedwait , get_event , worker_main , start_thread ,
clone
Thread 41 : epoll_wait , io_poll_wait , listener , get_event ,
worker_main , start_thread , clone
Thread 39 : pthread_cond_timedwait@@GLIBC_2.3.2 ,
inline_mysql_cond_timedwait , get_event , worker_main , start_thread ,
clone
Thread 37 : pthread_cond_timedwait@@GLIBC_2.3.2 ,
inline_mysql_cond_timedwait , get_event , worker_main , start_thread ,
clone
Thread 36 : pthread_cond_timedwait@@GLIBC_2.3.2 ,
inline_mysql_cond_timedwait , get_event , worker_main , start_thread ,
clone
Thread 35 : epoll_wait , io_poll_wait , listener , get_event ,
worker_main , start_thread , clone
Thread 33 : epoll_wait , io_poll_wait , listener , get_event ,
worker_main , start_thread , clone
Thread 32 : epoll_wait , io_poll_wait , listener , get_event ,
worker_main , start_thread , clone
Thread 31 : pthread_cond_timedwait@@GLIBC_2.3.2 ,
inline_mysql_cond_timedwait , get_event , worker_main , start_thread ,
clone
Thread 26 : pthread_cond_timedwait@@GLIBC_2.3.2 ,
inline_mysql_cond_timedwait , get_event , worker_main , start_thread ,
clone
Thread 24 : pthread_cond_timedwait@@GLIBC_2.3.2 ,
inline_mysql_cond_timedwait , get_event , worker_main , start_thread ,
clone
Thread 22 : epoll_wait , io_poll_wait , listener , get_event ,
worker_main , start_thread , clone
Thread 21 : epoll_wait , io_poll_wait , listener , get_event ,
worker_main , start_thread , clone
Thread 20 : pthread_cond_timedwait@@GLIBC_2.3.2 ,
inline_mysql_cond_timedwait , get_event , worker_main , start_thread ,
clone
Thread 19 : pthread_cond_timedwait@@GLIBC_2.3.2 ,
inline_mysql_cond_timedwait , get_event , worker_main , start_thread ,
clone
Thread 18 : epoll_wait , io_poll_wait , listener , get_event ,
worker_main , start_thread , clone
Thread 17 : pthread_cond_timedwait@@GLIBC_2.3.2 ,
inline_mysql_cond_timedwait , get_event , worker_main , start_thread ,
clone
Thread 16 : pthread_cond_timedwait@@GLIBC_2.3.2 ,
inline_mysql_cond_timedwait , get_event , worker_main , start_thread ,
clone
Thread 13 : pthread_cond_timedwait@@GLIBC_2.3.2 ,
inline_mysql_cond_timedwait , get_event , worker_main , start_thread ,
clone
Thread 12 : epoll_wait , io_poll_wait , listener , get_event ,
worker_main , start_thread , clone
Thread 11 : epoll_wait , io_poll_wait , listener , get_event ,
worker_main , start_thread , clone
Thread 8 : pthread_cond_timedwait@@GLIBC_2.3.2 ,
inline_mysql_cond_timedwait , get_event , worker_main , start_thread ,
clone
Thread 7 : pthread_cond_timedwait@@GLIBC_2.3.2 ,
inline_mysql_cond_timedwait , get_event , worker_main , start_thread ,
clone
Thread 5 : pthread_cond_timedwait@@GLIBC_2.3.2 ,
inline_mysql_cond_timedwait , get_event , worker_main , start_thread ,
clone
Thread 4 : pthread_cond_timedwait@@GLIBC_2.3.2 ,
inline_mysql_cond_timedwait , get_event , worker_main , start_thread ,
clone
Thread 3 : pthread_cond_timedwait@@GLIBC_2.3.2 ,
inline_mysql_cond_timedwait , get_event , worker_main , start_thread ,
clone
Thread 2 : pthread_cond_timedwait@@GLIBC_2.3.2 ,
inline_mysql_cond_timedwait , get_event , worker_main , start_thread ,
clone
Here is the RQG test that causes this crash:
./runall.pl --grammar=conf/temporal/temporal_functions.yy --duration=300 --queries=100000000 --threads=64 --basedir=/mnt/ssd/mysql/mariadb-5.5.35-tokudb-7.1.5-rc.3-debug-e-linux-x86_64 --vardir=/mnt/ssd/mysql/vardir1 --mask-level=0 --mask=0 --seed=1 --mysqld=--general_log --sqltrace
Program terminated with signal 6, Aborted.
#0 0x00007ff8c1d13f2c in __pthread_kill (threadid=<optimized out>, signo=signo@entry=6) at ../nptl/sysdeps/unix/sysv/linux/pthread_kill.c:62
#0 0x00007ff8c1d13f2c in __pthread_kill (threadid=<optimized out>, signo=signo@entry=6) at ../nptl/sysdeps/unix/sysv/linux/pthread_kill.c:62
#1 0x0000000000b91c63 in my_write_core (sig=6) at /home/tokubuild/builds/build-tokudb-1386719273-debug-e/mariadb-5.5.34/mysys/stacktrace.c:457
#2 0x00000000006f78ca in handle_fatal_signal (sig=6) at /home/tokubuild/builds/build-tokudb-1386719273-debug-e/mariadb-5.5.34/sql/signal_handler.cc:264
#3 <signal handler called>
#4 0x00007ff8c136d037 in __GI_raise (sig=sig@entry=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:56
#5 0x00007ff8c1370698 in __GI_abort () at abort.c:90
#6 0x00007ff8bfd3b746 in toku_do_backtrace_abort () at /home/tokubuild/builds/build-tokudb-1386719273-debug-e/mariadb-5.5.34/storage/tokudb/ft-index/portability/toku_assert.cc:191
#7 0x00007ff8bfd3b7dc in toku_do_assert_fail (expr_as_string=expr_as_string@entry=0x7ff8bfd8fb88 "left_child_number <= right_child_number", function=function@entry=0x7ff8bfd918d0 <keysrange_in_leaf_partition(ft_handle*, ftnode*, __toku_dbt*, __toku_dbt*, int, int, unsigned long, unsigned long*, unsigned long*, unsigned long*, unsigned long*, unsigned long*, bool*)::__FUNCTION__> "keysrange_in_leaf_partition", file=file@entry=0x7ff8bfd8cf68 "/home/tokubuild/builds/build-tokudb-1386719273-debug-e/mariadb-5.5.34/storage/tokudb/ft-index/ft/ft-ops.cc", line=line@entry=5771, caller_errno=0) at /home/tokubuild/builds/build-tokudb-1386719273-debug-e/mariadb-5.5.34/storage/tokudb/ft-index/portability/toku_assert.cc:212
#8 0x00007ff8bfcd6769 in keysrange_in_leaf_partition (single_basement_node=<optimized out>, greater=<optimized out>, equal_right=<optimized out>, middle=<optimized out>, equal_left=<optimized out>, less=<optimized out>, estimated_num_rows=<optimized out>, right_child_number=<optimized out>, left_child_number=<optimized out>, key_right=<optimized out>, key_left=<optimized out>, node=<optimized out>, brt=<optimized out>) at /home/tokubuild/builds/build-tokudb-1386719273-debug-e/mariadb-5.5.34/storage/tokudb/ft-index/ft/ft-ops.cc:5771
#9 toku_ft_keysrange_internal (brt=brt@entry=0x7ff88f0b1fb0, node=0x7ff88f276320, key_left=key_left@entry=0x7ff8a41f57a0, key_right=key_right@entry=0x7ff8a41f57c0, may_find_right=may_find_right@entry=true, less=less@entry=0x7ff8a41f54f8, equal_left=equal_left@entry=0x7ff8a41f5500, middle=middle@entry=0x7ff8a41f5508, equal_right=equal_right@entry=0x7ff8a41f5510, greater=greater@entry=0x7ff8a41f5518, single_basement_node=single_basement_node@entry=0x7ff8a41f54f6, estimated_num_rows=estimated_num_rows@entry=14555, min_bfe=min_bfe@entry=0x7ff8a41f5590, match_bfe=match_bfe@entry=0x7ff8a41f5610, unlockers=unlockers@entry=0x7ff8a41f5570, ancestors=ancestors@entry=0x0, bounds=bounds@entry=0x7ff8bfd916b0 <infinite_bounds>) at /home/tokubuild/builds/build-tokudb-1386719273-debug-e/mariadb-5.5.34/storage/tokudb/ft-index/ft/ft-ops.cc:5835
#10 0x00007ff8bfcd72bb in toku_ft_keysrange (brt=0x7ff88f0b1fb0, key_left=key_left@entry=0x7ff8a41f57a0, key_right=key_right@entry=0x7ff8a41f57c0, less_p=less_p@entry=0x7ff8a41f5770, equal_left_p=equal_left_p@entry=0x7ff8a41f5778, middle_p=middle_p@entry=0x7ff8a41f5780, equal_right_p=equal_right_p@entry=0x7ff8a41f5788, greater_p=greater_p@entry=0x7ff8a41f5790, middle_3_exact_p=middle_3_exact_p@entry=0x7ff8a41f576f) at /home/tokubuild/builds/build-tokudb-1386719273-debug-e/mariadb-5.5.34/storage/tokudb/ft-index/ft/ft-ops.cc:5953
#11 0x00007ff8bfc83d24 in toku_db_keys_range64 (db=0x7ff88f0b7240, txn=0x7ff8a6644b00, keyleft=0x7ff8a41f57a0, keyright=0x7ff8a41f57c0, less=0x7ff8a41f5770, left=0x7ff8a41f5778, between=0x7ff8a41f5780, right=0x7ff8a41f5788, greater=0x7ff8a41f5790, middle_3_exact=0x7ff8a41f576f) at /home/tokubuild/builds/build-tokudb-1386719273-debug-e/mariadb-5.5.34/storage/tokudb/ft-index/src/ydb_db.cc:747
#12 0x00007ff8bfc62536 in ha_tokudb::records_in_range (this=0x7ff88f985078, keynr=1, start_key=<optimized out>, end_key=0x7ff8a41f5880) at /home/tokubuild/builds/build-tokudb-1386719273-debug-e/mariadb-5.5.34/storage/tokudb/ha_tokudb.cc:7395
#13 0x0000000000697c09 in handler::multi_range_read_info_const (this=0x7ff88f985078, keyno=keyno@entry=1, seq=0x7ff8a41f59b0, seq_init_param=<optimized out>, n_ranges_arg=<optimized out>, bufsz=bufsz@entry=0x7ff8a41f590c, flags=flags@entry=0x7ff8a41f5908, cost=cost@entry=0x7ff8a41f5fc0) at /home/tokubuild/builds/build-tokudb-1386719273-debug-e/mariadb-5.5.34/sql/multi_range_read.cc:94
#14 0x0000000000699d30 in DsMrr_impl::dsmrr_info_const (this=0x7ff88f9854e0, keyno=1, seq=<optimized out>, seq_init_param=<optimized out>, n_ranges=<optimized out>, bufsz=0x7ff8a41f5f9c, flags=flags@entry=0x7ff8a41f5f98, cost=cost@entry=0x7ff8a41f5fc0) at /home/tokubuild/builds/build-tokudb-1386719273-debug-e/mariadb-5.5.34/sql/multi_range_read.cc:1451
#15 0x00007ff8bfc50061 in ha_tokudb::multi_range_read_info_const (this=<optimized out>, keyno=<optimized out>, seq=<optimized out>, seq_init_param=<optimized out>, n_ranges=<optimized out>, bufsz=<optimized out>, flags=0x7ff8a41f5f98, cost=0x7ff8a41f5fc0) at /home/tokubuild/builds/build-tokudb-1386719273-debug-e/mariadb-5.5.34/storage/tokudb/ha_tokudb_mrr_maria.cc:120
#16 0x00000000007d3fcc in check_quick_select (param=param@entry=0x7ff8a41f7be0, idx=idx@entry=1, index_only=false, tree=<optimized out>, update_tbl_stats=update_tbl_stats@entry=true, mrr_flags=mrr_flags@entry=0x7ff8a41f5f98, bufsize=bufsize@entry=0x7ff8a41f5f9c, cost=cost@entry=0x7ff8a41f5fc0) at /home/tokubuild/builds/build-tokudb-1386719273-debug-e/mariadb-5.5.34/sql/opt_range.cc:10073
#17 0x00000000007d6a84 in get_key_scans_params (param=param@entry=0x7ff8a41f7be0, tree=tree@entry=0x7ff88fa39d60, index_read_must_be_used=index_read_must_be_used@entry=false, update_tbl_stats=update_tbl_stats@entry=true, read_time=read_time@entry=2.6333333333333333) at /home/tokubuild/builds/build-tokudb-1386719273-debug-e/mariadb-5.5.34/sql/opt_range.cc:6746
#18 0x00000000007e71c0 in SQL_SELECT::test_quick_select (this=this@entry=0x7ff88fb253a0, thd=thd@entry=0x7ff8ad2ea060, keys_to_use=..., keys_to_use@entry=..., prev_tables=prev_tables@entry=0, limit=limit@entry=1, force_quick_range=<optimized out>, ordered_output=ordered_output@entry=false) at /home/tokubuild/builds/build-tokudb-1386719273-debug-e/mariadb-5.5.34/sql/opt_range.cc:3100
#19 0x000000000081061f in check_quick (limit=1, force_quick_range=false, thd=0x7ff8ad2ea060, this=0x7ff88fb253a0) at /home/tokubuild/builds/build-tokudb-1386719273-debug-e/mariadb-5.5.34/sql/opt_range.h:1003
#20 mysql_delete (thd=thd@entry=0x7ff8ad2ea060, table_list=0x7ff88fb24280, conds=0x7ff88fb24f30, order_list=order_list@entry=0x7ff8ad2edc88, limit=1, options=0) at /home/tokubuild/builds/build-tokudb-1386719273-debug-e/mariadb-5.5.34/sql/sql_delete.cc:210
#21 0x00000000005a390b in mysql_execute_command (thd=thd@entry=0x7ff8ad2ea060) at /home/tokubuild/builds/build-tokudb-1386719273-debug-e/mariadb-5.5.34/sql/sql_parse.cc:3105
may need to pick up mariadb 5.5.32 (or newer)
https://mariadb.atlassian.net/browse/MDEV-4578
Thread 1 (Thread 0x7ffc0d1fe700 (LWP 2033)):
#0 0x00007ffc2d21bf0c in __pthread_kill (threadid=<optimized out>, signo=signo@entry=11) at ../nptl/sysdeps/unix/sysv/linux/pthread_kill.c:62
#1 0x0000000000b91c63 in my_write_core (sig=11) at /home/tokubuild/builds/build-tokudb-1386006533-debug-e/mariadb/mysys/stacktrace.c:457
#2 0x00000000006f78ca in handle_fatal_signal (sig=11) at /home/tokubuild/builds/build-tokudb-1386006533-debug-e/mariadb/sql/signal_handler.cc:264
#3 <signal handler called>
#4 key_unpack (to=to@entry=0x7ffc0d1f86c0, table=0x7ffbf2561c60, idx=idx@entry=2) at /home/tokubuild/builds/build-tokudb-1386006533-debug-e/mariadb/sql/key.cc:430
#5 0x00000000006fcfb5 in handler::print_keydup_error (this=this@entry=0x7ffc0e5f0078, key_nr=key_nr@entry=2, msg=0x7ffc2bff0c8b "Duplicate entry '%-.64s' for key '%-.192s'", errflag=errflag@entry=0) at /home/tokubuild/builds/build-tokudb-1386006533-debug-e/mariadb/sql/handler.cc:2885
#6 0x00000000006fd527 in handler::print_error (this=0x7ffc0e5f0078, error=121, errflag=0) at /home/tokubuild/builds/build-tokudb-1386006533-debug-e/mariadb/sql/handler.cc:2961
#7 0x000000000062405f in mysql_alter_table (thd=thd@entry=0x7ffc11d3c060, new_db=<optimized out>, new_name=0x7ffbf2cd4190 "t1", create_info=create_info@entry=0x7ffc0d1fbfe0, table_list=0x7ffbf2cd5800, table_list@entry=0x7ffbf2cd41c8, alter_info=alter_info@entry=0x7ffc0d1fbf40, order_num=0, order=0x0, ignore=false, require_online=false) at /home/tokubuild/builds/build-tokudb-1386006533-debug-e/mariadb/sql/sql_table.cc:7018
#8 0x000000000066ed51 in Alter_table_statement::execute (this=<optimized out>, thd=0x7ffc11d3c060) at /home/tokubuild/builds/build-tokudb-1386006533-debug-e/mariadb/sql/sql_alter.cc:106
#9 0x00000000005a70a8 in mysql_execute_command (thd=thd@entry=0x7ffc11d3c060) at /home/tokubuild/builds/build-tokudb-1386006533-debug-e/mariadb/sql/sql_parse.cc:4525
#10 0x00000000005a84f7 in mysql_parse (thd=thd@entry=0x7ffc11d3c060, rawbuf=<optimized out>, length=<optimized out>, parser_state=parser_state@entry=0x7ffc0d1fd5f0) at /home/tokubuild/builds/build-tokudb-1386006533-debug-e/mariadb/sql/sql_parse.cc:5812
#11 0x00000000005a908a in dispatch_command (command=command@entry=COM_QUERY, thd=thd@entry=0x7ffc11d3c060, packet=packet@entry=0x7ffc11d41061 "ALTER TABLE t1 ADD UNIQUE KEY uidx ( col3 ) , ADD PRIMARY KEY ( col4(10), col3 )", packet_length=packet_length@entry=80) at /home/tokubuild/builds/build-tokudb-1386006533-debug-e/mariadb/sql/sql_parse.cc:1082
#12 0x00000000005aaa16 in do_command (thd=0x7ffc11d3c060) at /home/tokubuild/builds/build-tokudb-1386006533-debug-e/mariadb/sql/sql_parse.cc:797
#13 0x000000000066b82e in do_handle_one_connection (thd_arg=thd_arg@entry=0x7ffc11d3c060) at /home/tokubuild/builds/build-tokudb-1386006533-debug-e/mariadb/sql/sql_connect.cc:1266
#14 0x000000000066b920 in handle_one_connection (arg=0x7ffc11d3c060) at /home/tokubuild/builds/build-tokudb-1386006533-debug-e/mariadb/sql/sql_connect.cc:1181
#15 0x00007ffc2d216f6e in start_thread (arg=0x7ffc0d1fe700) at pthread_create.c:311
#16 0x00007ffc2c9399cd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:113
Hello and thank you for TokuDB,
I also posted in the tokudb-user mailing list but just noticed that github is the place to report bugs.
On Red Hat Enterprise Linux Server release 6.X which has by default glibcxx 4.4 (glibc 2.12), when using mariadb-5.5.30-tokudb-7.0.1-linux-x86_64.tar.gz
INSTALL PLUGIN handlersocket SONAME 'handlersocket.so';
ERROR 1126 (HY000): Can't open shared library 'mariadb-5.5.30-tokudb-7.0.1-linux-x86_64/lib/plugin/handlersocket.so' (errno: 2 /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.15' not found (required by mariadb-5.5.30-tokudb-7.0.1)
MariaDB have bintar downloads for GLIBC_2.14+ specifically - https://downloads.mariadb.org/mariadb/5.5.31/#os_group=linux_generic&file_type=tar_gz
The non GLIBC_2.14+ bintars from mariadb work on RHEL6 (including handlersocket) and I imagine on other OS versions with older versions of GLIBC(XX). I think mariadb are building on an OS with an older version of GLIBC(XX).
ldd mariadb-5.5.30-tokudb-7.0.1-linux-x86_64/lib/plugin/handlersocket.so
mariadb-5.5.30-tokudb-7.0.1-linux-x86_64/lib/plugin/handlersocket.so: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.15' not found (required by mariadb-5.5.30-tokudb-7.0.1-linux-x86_64/lib/plugin/handlersocket.so)
linux-vdso.so.1 => (0x00007fff05a55000)
libstdc++.so.6 => /usr/lib64/libstdc++.so.6 (0x00007ff735986000)
libm.so.6 => /lib64/libm.so.6 (0x00007ff735701000)
libc.so.6 => /lib64/libc.so.6 (0x00007ff735360000)
/lib64/ld-linux-x86-64.so.2 (0x0000003763e00000)
libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x00007ff73514a000)
readelf -d mariadb-5.5.30-tokudb-7.0.1-linux-x86_64/lib/plugin/handlersocket.so
Dynamic section at offset 0x24e08 contains 27 entries:
Tag Type Name/Value
0x0000000000000001 (NEEDED) Shared library: [libstdc++.so.6]
0x0000000000000001 (NEEDED) Shared library: [libm.so.6]
0x0000000000000001 (NEEDED) Shared library: [libc.so.6]
0x000000000000000e (SONAME) Library soname: [handlersocket.so]
0x000000000000000c (INIT) 0xbac8
0x000000000000000d (FINI) 0x20314
0x0000000000000019 (INIT_ARRAY) 0x224600
0x000000000000001b (INIT_ARRAYSZ) 8 (bytes)
0x000000000000001a (FINI_ARRAY) 0x224608
0x000000000000001c (FINI_ARRAYSZ) 8 (bytes)
0x0000000000000004 (HASH) 0x158
0x0000000000000005 (STRTAB) 0x3c10
0x0000000000000006 (SYMTAB) 0xd48
0x000000000000000a (STRSZ) 17768 (bytes)
0x000000000000000b (SYMENT) 24 (bytes)
0x0000000000000003 (PLTGOT) 0x225160
0x0000000000000002 (PLTRELSZ) 5424 (bytes)
0x0000000000000014 (PLTREL) RELA
0x0000000000000017 (JMPREL) 0xa598
0x0000000000000007 (RELA) 0x85d0
0x0000000000000008 (RELASZ) 8136 (bytes)
0x0000000000000009 (RELAENT) 24 (bytes)
0x000000006ffffffe (VERNEED) 0x8560
0x000000006fffffff (VERNEEDNUM) 2
0x000000006ffffff0 (VERSYM) 0x8178
0x000000006ffffff9 (RELACOUNT) 81
0x0000000000000000 (NULL) 0x0
ldd mariadb-5.5.31-linux-x86_64/lib/plugin/handlersocket.so
linux-vdso.so.1 => (0x00007fff133ff000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x00007fa468161000)
libstdc++.so.6 => /usr/lib64/libstdc++.so.6 (0x00007fa467e5a000)
libm.so.6 => /lib64/libm.so.6 (0x00007fa467bd6000)
libc.so.6 => /lib64/libc.so.6 (0x00007fa467835000)
/lib64/ld-linux-x86-64.so.2 (0x0000003763e00000)
libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x00007fa46761e000)
readelf -d mariadb-5.5.31-linux-x86_64/lib/plugin/handlersocket.so
Dynamic section at offset 0x278e8 contains 25 entries:
Tag Type Name/Value
0x0000000000000001 (NEEDED) Shared library: [libpthread.so.0]
0x0000000000000001 (NEEDED) Shared library: [libstdc++.so.6]
0x0000000000000001 (NEEDED) Shared library: [libm.so.6]
0x0000000000000001 (NEEDED) Shared library: [libc.so.6]
0x000000000000000e (SONAME) Library soname: [handlersocket.so]
0x000000000000000c (INIT) 0xb038
0x000000000000000d (FINI) 0x22d58
0x0000000000000004 (HASH) 0x158
0x000000006ffffef5 (GNU_HASH) 0xc60
0x0000000000000005 (STRTAB) 0x3f68
0x0000000000000006 (SYMTAB) 0x1610
0x000000000000000a (STRSZ) 15189 (bytes)
0x000000000000000b (SYMENT) 24 (bytes)
0x0000000000000003 (PLTGOT) 0x227c28
0x0000000000000002 (PLTRELSZ) 4488 (bytes)
0x0000000000000014 (PLTREL) RELA
0x0000000000000017 (JMPREL) 0x9eb0
0x0000000000000007 (RELA) 0x7ed0
0x0000000000000008 (RELASZ) 8160 (bytes)
0x0000000000000009 (RELAENT) 24 (bytes)
0x000000006ffffffe (VERNEED) 0x7e30
0x000000006fffffff (VERNEEDNUM) 3
0x000000006ffffff0 (VERSYM) 0x7abe
0x000000006ffffff9 (RELACOUNT) 80
0x0000000000000000 (NULL) 0x0
rpm -qf /usr/lib64/libstdc++.so.6
libstdc++-4.4.6-3.el6.x86_64
strings /usr/lib64/libstdc++.so.6 | grep GLIBC
GLIBCXX_3.4
GLIBCXX_3.4.1
GLIBCXX_3.4.2
GLIBCXX_3.4.3
GLIBCXX_3.4.4
GLIBCXX_3.4.5
GLIBCXX_3.4.6
GLIBCXX_3.4.7
GLIBCXX_3.4.8
GLIBCXX_3.4.9
GLIBCXX_3.4.10
GLIBCXX_3.4.11
GLIBCXX_3.4.12
GLIBCXX_3.4.13
GLIBC_2.2.5
GLIBC_2.3
GLIBC_2.4
GLIBC_2.3.2
GLIBCXX_FORCE_NEW
GLIBCXX_DEBUG_MESSAGE_LENGTH
nm mariadb-5.5.30-tokudb-7.0.1-linux-x86_64/lib/plugin/handlersocket.so | grep 'GLIBCXX_3.4.15'
U ZNSt8__detail15_List_node_base7_M_hookEPS0@@GLIBCXX_3.4.15
U _ZNSt8__detail15_List_node_base9_M_unhookEv@@GLIBCXX_3.4.15
nm mariadb-5.5.31-linux-x86_64/lib/plugin/handlersocket.so | grep List_node_base
U ZNSt15_List_node_base4hookEPS@@GLIBCXX_3.4
U _ZNSt15_List_node_base6unhookEv@@GLIBCXX_3.4
Red Hat EL6 does not by default have version > 4.5 of libstdc++6 with GLIBCXX_3.4.15.
I did notice in https://github.com/Tokutek/ft-engine/blob/master/README.md that GCC >= 4.7 is recommended and that I will have to pass --cc and --cxx options as the default is 4.7. I also noticed in https://github.com/Tokutek/ft-engine/issues/7#issuecomment-17050811 CentOS 5 is used with 4.7 installed because a C++11-compatible compiler is needed (http://gcc.gnu.org/gcc-4.7/cxx0x_status.html), and I can get these RPMs for EL(5|6) from devtools. From what I have read it looks like building the mariadb src (with tokudb) on EL6 with the default GCC will not work, I imagine the mariadb buildbots would detect this. Hmm, looks like I'll be trying GCC 4.7.2 from RH devtools:
https://access.redhat.com/site/documentation/en-US/Red_Hat_Developer_Toolset/1/html/1.1_Release_Notes/ch-Features.html
Thanks again.
https://lists.launchpad.net/maria-developers/msg04821.html
https://bugs.launchpad.net/maria/+bug/1049621
http://www.sourceware.org/bugzilla/show_bug.cgi?id=12518
grep -A 5 '^VERSION' mariadb-5.5.30-tokudb-7.0.1-linux-x86_64/bin/mysqlbug
VERSION="5.5.30-tokudb-7.0.1"
COMP_CALL_INFO="CC='/usr/local/gcc-4.7/bin/gcc47' CFLAGS='-Wall -O3 -g -static-libgcc -fno-omit-frame-pointer -fno-strict-aliasing -DDBUG_OFF -DMY_PTHREAD_FASTMUTEX=1' CXX='/usr/local/gcc-4.7/bin/g++47' CXXFLAGS='-Wall -Wno-unused-parameter -fno-implicit-templates -fno-exceptions -fno-rtti -O3 -g -static-libgcc -fno-omit-frame-pointer -fno-strict-aliasing -DDBUG_OFF -DMY_PTHREAD_FASTMUTEX=1' LDFLAGS='' ASFLAGS=''"
COMP_RUN_INFO="CC='/usr/local/gcc-4.7/bin/gcc47' CFLAGS='-Wall -O3 -g -static-libgcc -fno-omit-frame-pointer -fno-strict-aliasing -DDBUG_OFF -DMY_PTHREAD_FASTMUTEX=1' CXX='/usr/local/gcc-4.7/bin/g++47' CXXFLAGS='-Wall -Wno-unused-parameter -fno-implicit-templates -fno-exceptions -fno-rtti -O3 -g -static-libgcc -fno-omit-frame-pointer -fno-strict-aliasing -DDBUG_OFF -DMY_PTHREAD_FASTMUTEX=1' LDFLAGS='' ASFLAGS=''"
grep -A 5 '^VERSION' mariadb-5.5.31-linux-x86_64/bin/mysqlbug
VERSION="5.5.31"
COMP_CALL_INFO="CC='/usr/bin/gcc' CFLAGS='-Wall -O3 -g -static-libgcc -fno-omit-frame-pointer -fno-strict-aliasing -DDBUG_OFF -DMY_PTHREAD_FASTMUTEX=1' CXX='/usr/bin/c++' CXXFLAGS='-Wall -Wno-unused-parameter -fno-implicit-templates -fno-exceptions -fno-rtti -O3 -g -static-libgcc -fno-omit-frame-pointer -fno-strict-aliasing -DDBUG_OFF -DMY_PTHREAD_FASTMUTEX=1' LDFLAGS='' ASFLAGS=''"
COMP_RUN_INFO="CC='/usr/bin/gcc' CFLAGS='-Wall -O3 -g -static-libgcc -fno-omit-frame-pointer -fno-strict-aliasing -DDBUG_OFF -DMY_PTHREAD_FASTMUTEX=1' CXX='/usr/bin/c++' CXXFLAGS='-Wall -Wno-unused-parameter -fno-implicit-templates -fno-exceptions -fno-rtti -O3 -g -static-libgcc -fno-omit-frame-pointer -fno-strict-aliasing -DDBUG_OFF -DMY_PTHREAD_FASTMUTEX=1' LDFLAGS='' ASFLAGS=''"
the ft loader called the tokudb handler with an empty key. there are 2 bugs. the tokudb handler crashes if it tries to decode an empty key. the ft loader passes the tokudb handler an empty key.
Program terminated with signal 11, Segmentation fault.
(gdb) bt
#0 0x000000328bc0be32 in pthread_kill () from /lib64/libpthread.so.0
#1 0x0000000000b878b3 in my_write_core (sig=11) at /home/tokubuild/builds/build-tokudb-7.1.5-rc.1-debug-e/mariadb-5.5.35/mysys/stacktrace.c:457
#2 0x00000000006ecdfa in handle_fatal_signal (sig=11) at /home/tokubuild/builds/build-tokudb-7.1.5-rc.1-debug-e/mariadb-5.5.35/sql/signal_handler.cc:264
#3 <signal handler called>
#4 unpack_toku_int (num_bytes=4, from_tokudb=0x1 <Address 0x1 out of bounds>, to_mysql=0x2aead044258b "") at /home/tokubuild/builds/build-tokudb-7.1.5-rc.1-debug-e/mariadb-5.5.35/storage/tokudb/hatoku_c\
mp.cc:400
#5 unpack_toku_key_field (key_part_length=4, field=0x2aead1bb2db8, from_tokudb=0x1 <Address 0x1 out of bounds>, to_mysql=0x2aead044258b "") at /home/tokubuild/builds/build-tokudb-7.1.5-rc.1-debug-e/mari\
adb-5.5.35/storage/tokudb/hatoku_cmp.cc:1514
#6 ha_tokudb::place_key_into_mysql_buff (this=this@entry=0x2aeadafc7078, key_info=<optimized out>, record=record@entry=0x2aead0442078 "\377\367\377", data=data@entry=0x1 <Address 0x1 out of bounds>) at \
/home/tokubuild/builds/build-tokudb-7.1.5-rc.1-debug-e/mariadb-5.5.35/storage/tokudb/ha_tokudb.cc:2588
#7 0x00002aea9306644f in ha_tokudb::unpack_key (this=this@entry=0x2aeadafc7078, record=0x2aead0442078 "\377\367\377", key=key@entry=0x2aeabeab4828, index=0) at /home/tokubuild/builds/build-tokudb-7.1.5-\
rc.1-debug-e/mariadb-5.5.35/storage/tokudb/ha_tokudb.cc:2608
#8 0x00002aea930664f2 in ha_tokudb::set_dup_value_for_pk (this=0x2aeadafc7078, key=key@entry=0x2aeabeab4828) at /home/tokubuild/builds/build-tokudb-7.1.5-rc.1-debug-e/mariadb-5.5.35/storage/tokudb/ha_to\
kudb.cc:8238
#9 0x00002aea93066573 in loader_dup_fun (db=<optimized out>, i=<optimized out>, err=-30996, key=0x2aeabeab4828, val=<optimized out>, error_extra=0x2aeadafc88b0) at /home/tokubuild/builds/build-tokudb-7.\
1.5-rc.1-debug-e/mariadb-5.5.35/storage/tokudb/ha_tokudb.cc:518
#10 0x00002aea930bde47 in ft_loader_call_error_function (loader_error=0x2aeabeab4800) at /home/tokubuild/builds/build-tokudb-7.1.5-rc.1-debug-e/mariadb-5.5.35/storage/tokudb/ft-index/ft/ftloader-callback\
.cc:167
#11 0x00002aea930bd031 in toku_ft_loader_close (bl=0x2aeabeab4800, error_function=<optimized out>, error_extra=<optimized out>, poll_function=0x2aea9304d289 <loader_poll_fun(void*, float)>, poll_extra=0x\
2aeadafc88b0) at /home/tokubuild/builds/build-tokudb-7.1.5-rc.1-debug-e/mariadb-5.5.35/storage/tokudb/ft-index/ft/ftloader.cc:2858
#12 0x00002aea9308a7d2 in ft_loader_close_and_redirect (loader=0x2aeacffbab20) at /home/tokubuild/builds/build-tokudb-7.1.5-rc.1-debug-e/mariadb-5.5.35/storage/tokudb/ft-index/src/loader.cc:216
#13 0x00002aea9308b35b in toku_loader_close (loader=0x2aeacffbab20) at /home/tokubuild/builds/build-tokudb-7.1.5-rc.1-debug-e/mariadb-5.5.35/storage/tokudb/ft-index/src/loader.cc:469
#14 0x00002aea9306c070 in ha_tokudb::end_bulk_insert (this=0x2aeadafc7078, abort=abort@entry=false) at /home/tokubuild/builds/build-tokudb-7.1.5-rc.1-debug-e/mariadb-5.5.35/storage/tokudb/ha_tokudb.cc:33\
27
#15 0x00002aea9306c4dc in ha_tokudb::end_bulk_insert (this=<optimized out>) at /home/tokubuild/builds/build-tokudb-7.1.5-rc.1-debug-e/mariadb-5.5.35/storage/tokudb/ha_tokudb.cc:3391
#16 0x0000000000619248 in ha_end_bulk_insert (this=0x2aeadafc7078) at /home/tokubuild/builds/build-tokudb-7.1.5-rc.1-debug-e/mariadb-5.5.35/sql/handler.h:2220
#17 copy_data_between_tables (error_if_not_empty=false, keys_onoff=(unknown: 3330199904), deleted=<synthetic pointer>, copied=<synthetic pointer>, order=0x0, order_num=0, ignore=120, create=..., to=0x2ae\
ad0441260, from=0x2aead1bb5e60, thd=0x2aea8de87060) at /home/tokubuild/builds/build-tokudb-7.1.5-rc.1-debug-e/mariadb-5.5.35/sql/sql_table.cc:7737
#18 mysql_alter_table (thd=<optimized out>, new_db=<optimized out>, new_name=0x2aeabe85a1a8 "table100_tokudb_tokudb_small", create_info=0x2aeb2c846260, table_list=0x3e8, alter_info=0x2aeb2c8461c0, order_\
num=0, order=0x0, ignore=false, require_online=false) at /home/tokubuild/builds/build-tokudb-7.1.5-rc.1-debug-e/mariadb-5.5.35/sql/sql_table.cc:6941
#19 0x00000000006643c1 in Alter_table_statement::execute (this=<optimized out>, thd=0x2aea8de87060) at /home/tokubuild/builds/build-tokudb-7.1.5-rc.1-debug-e/mariadb-5.5.35/sql/sql_alter.cc:106
#20 0x000000000059c3d9 in mysql_execute_command (thd=thd@entry=0x2aea8de87060) at /home/tokubuild/builds/build-tokudb-7.1.5-rc.1-debug-e/mariadb-5.5.35/sql/sql_parse.cc:4526
#21 0x000000000059d7c5 in mysql_parse (thd=thd@entry=0x2aea8de87060, rawbuf=<optimized out>, length=<optimized out>, parser_state=parser_state@entry=0x2aeb2c847870) at /home/tokubuild/builds/build-tokudb\
-7.1.5-rc.1-debug-e/mariadb-5.5.35/sql/sql_parse.cc:5813
#22 0x000000000059e356 in dispatch_command (command=command@entry=COM_QUERY, thd=thd@entry=0x2aea8de87060, packet=packet@entry=0x2aea8de8c061 "ALTER TABLE `table100_tokudb_tokudb_small` ADD PRIMARY KEY (\
c2) USING HASH", packet_length=packet_length@entry=74) at /home/tokubuild/builds/build-tokudb-7.1.5-rc.1-debug-e/mariadb-5.5.35/sql/sql_parse.cc:1082
(gdb)
#9 0x00002aea93066573 in loader_dup_fun (db=<optimized out>, i=<optimized out>, err=-30996, key=0x2aeabeab4828, val=<optimized out>, error_extra=0x2aeadafc88b0) at /home/tokubuild/builds/build-tokudb-7.\
1.5-rc.1-debug-e/mariadb-5.5.35/storage/tokudb/ha_tokudb.cc:518
518 in /home/tokubuild/builds/build-tokudb-7.1.5-rc.1-debug-e/mariadb-5.5.35/storage/tokudb/ha_tokudb.cc
(gdb) p *key
$1 = {data = 0x0, size = 0, ulen = 0, flags = 0}
Tokutek/ft-engine#195
same problem as Tokutek/mysql-5.5#14
I've (Zardosht) noticed a scenario with index condition pushdown (ICP) in MariaDB
that leads to really bad performance in TokuDB. I don't know if it is
a bug in ICP or if TokuDB is misusing/misunderstanding the API.
Here is the problem. Suppose we run the following query on the following schema:
SELECT * FROM foo WHERE col1 = '7' ORDER BY b desc
| foo | CREATE TABLE `foo` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`col1` varchar(100) COLLATE utf8_unicode_ci NOT NULL,
`b` int(11) DEFAULT NULL,
`c` int(11) DEFAULT NULL,
`d` int(11) DEFAULT NULL,
PRIMARY KEY (`id`),
CLUSTERING KEY `col1_2` (`col1`,`b`)
) ENGINE=TokuDB AUTO_INCREMENT=8001 DEFAULT CHARSET=utf8
COLLATE=utf8_unicode_ci ROW_FORMAT=TOKUDB_ZLIB |
The output of explain is:
MariaDB [test]> explain SELECT * FROM foo WHERE col1 = '7' ORDER BY b desc;
+------+-------------+-------+------+---------------+--------+---------+-------+------+-------------+
| id | select_type | table | type | possible_keys | key | key_len
| ref | rows | Extra |
+------+-------------+-------+------+---------------+--------+---------+-------+------+-------------+
| 1 | SIMPLE | foo | ref | col1_2 | col1_2 | 302
| const | 1320 | Using where |
+------+-------------+-------+------+---------------+--------+---------+-------+------+-------------+
1 row in set (2.32 sec)
The query is doing a reverse range scan, as it should.
We get handler::idx_cond_push called, but end_range is not set. As a
result, TokuDB thinks it can use index condition pushdown to filter
rows. As we do this and get to the end, because end_range is not set,
we never get a result of ICP_OUT_OF_RANGE, and always get a result of
ICP_NO_MATCH. So, when we go to retrieve that first row past the end
of the range, the row that will tell MySQL it should stop searching,
TokuDB never finds a row and never gets ICP_NO_MATCH. It scans to the
beginning of the index (because it is running in reverse order),
getting ICP_NO_MATCH for every row it encounters.
Although my index is clustering, I've seen this with a normal key as well.
If col1 is an int instead of the funky varchar, handler::idx_cond_push
is never called, so this problem does not exist.
It seems to me that if end_range is not set and we cannot reliably
learn when we go out of range, we should not have
handler::idx_cond_push called, otherwise we can get bad performance
such as the example above.
see Tokutek/ft-engine#21
mariadb and mysql use a different debug variable.
LOAD DATA INFILE 'leak172_t1.data' INTO TABLE `t1` fields terminated by ',';
set session debug="+d,tokudb_end_bulk_insert_sleep";
+Warnings:
+Warning 1287 '@@debug' is deprecated and will be removed in a future release. Please use '@@debug_dbug' instead
LOAD DATA INFILE 'leak172_t2.data' INTO TABLE `t2` fields terminated by ',';
UPDATE t1, t2 SET t1.`c5` = 4 WHERE t1.`c6` <= 'o';
ERROR HY000: Lock wait timeout exceeded; try restarting transaction
Tokutek/ft-engine#195
all of the other tests already have @Perl@ expanded, so this one should as well.
Thread pointer: 0x0x7f2719337060
Attempting backtrace. You can use the following information to find out
where mysqld died. If you see no messages after this, something went
terribly wrong...
stack_bottom = 0x7f2734f6de28 thread_stack 0x48000
(my_addr_resolve failure: fork)
/mnt/ssd/data/mariadb-5.5.34-tokudb-1386006533-debug-e-linux-x86_64/bin/mysqld(my_print_stacktrace+0x2b) [0xb91d68]
/mnt/ssd/data/mariadb-5.5.34-tokudb-1386006533-debug-e-linux-x86_64/bin/mysqld(handle_fatal_signal+0x2d8) [0x6f7654]
/lib/x86_64-linux-gnu/libpthread.so.0(+0xfbb0) [0x7f2734482bb0]
/mnt/ssd/data/mariadb-5.5.34-tokudb-1386006533-debug-e-linux-x86_64/bin/mysqld() [0xb62d0b]
/mnt/ssd/data/mariadb-5.5.34-tokudb-1386006533-debug-e-linux-x86_64/bin/mysqld() [0xb6c027]
/mnt/ssd/data/mariadb-5.5.34-tokudb-1386006533-debug-e-linux-x86_64/bin/mysqld() [0xb6c33b]
/mnt/ssd/data/mariadb-5.5.34-tokudb-1386006533-debug-e-linux-x86_64/bin/mysqld() [0x6f7db9]
/mnt/ssd/data/mariadb-5.5.34-tokudb-1386006533-debug-e-linux-x86_64/bin/mysqld(plugin_foreach_with_mask(THD*, char (*)(THD*, st_plugin_int**, void*), int, unsigned int, void*)+0x242) [0x5b13d2]
/mnt/ssd/data/mariadb-5.5.34-tokudb-1386006533-debug-e-linux-x86_64/bin/mysqld(ha_discover(THD*, char const*, char const*, unsigned char**, unsigned long*)+0xc4) [0x6ff31d]
/mnt/ssd/data/mariadb-5.5.34-tokudb-1386006533-debug-e-linux-x86_64/bin/mysqld(ha_check_if_table_exists(THD*, char const*, char const*, bool*)+0x5e) [0x6ff3bb]
/mnt/ssd/data/mariadb-5.5.34-tokudb-1386006533-debug-e-linux-x86_64/bin/mysqld(check_if_table_exists(THD*, TABLE_LIST*, bool, bool*)+0x1c9) [0x557026]
/mnt/ssd/data/mariadb-5.5.34-tokudb-1386006533-debug-e-linux-x86_64/bin/mysqld(open_table(THD*, TABLE_LIST*, st_mem_root*, Open_table_context*)+0x675) [0x56043e]
/mnt/ssd/data/mariadb-5.5.34-tokudb-1386006533-debug-e-linux-x86_64/bin/mysqld(open_tables(THD*, TABLE_LIST**, unsigned int*, unsigned int, Prelocking_strategy*)+0x5af) [0x5619c7]
/mnt/ssd/data/mariadb-5.5.34-tokudb-1386006533-debug-e-linux-x86_64/bin/mysqld(open_and_lock_tables(THD*, TABLE_LIST*, bool, unsigned int, Prelocking_strategy*)+0x96) [0x5625c7]
/mnt/ssd/data/mariadb-5.5.34-tokudb-1386006533-debug-e-linux-x86_64/bin/mysqld(mysql_execute_command(THD*)+0x11bb) [0x5a153a]
/mnt/ssd/data/mariadb-5.5.34-tokudb-1386006533-debug-e-linux-x86_64/bin/mysqld(mysql_parse(THD*, char*, unsigned int, Parser_state*)+0x15d) [0x5a84f7]
/mnt/ssd/data/mariadb-5.5.34-tokudb-1386006533-debug-e-linux-x86_64/bin/mysqld(dispatch_command(enum_server_command, THD*, char*, unsigned int)+0xa23) [0x5a908a]
/mnt/ssd/data/mariadb-5.5.34-tokudb-1386006533-debug-e-linux-x86_64/bin/mysqld(do_command(THD*)+0x263) [0x5aaa16]
/mnt/ssd/data/mariadb-5.5.34-tokudb-1386006533-debug-e-linux-x86_64/bin/mysqld(do_handle_one_connection(THD*)+0x12c) [0x66b82e]
/mnt/ssd/data/mariadb-5.5.34-tokudb-1386006533-debug-e-linux-x86_64/bin/mysqld(handle_one_connection+0x52) [0x66b920]
/lib/x86_64-linux-gnu/libpthread.so.0(+0x7f6e) [0x7f273447af6e]
/lib/x86_64-linux-gnu/libc.so.6(clone+0x6d) [0x7f2733b9d9cd]
@ -26,7 +26,7 @@
3930 set tokudb_disable_hot_alter=0;
3931 set tokudb_disable_slow_alter=1;
3932 ALTER TABLE test_enum MODIFY COLUMN col2 ENUM('value1','value3');
3933 -ERROR 42000: Table 'test_enum' uses an extension that doesn't exist in this MySQL version
3934 +ERROR 42000: Table 'test_enum' uses an extension that doesn't exist in this MariaDB version
3935 set tokudb_disable_hot_alter=1;
3936 set tokudb_disable_slow_alter=0;
3937 ALTER TABLE test_enum MODIFY COLUMN col2 ENUM('value1','value3');
3938 @@ -46,7 +46,7 @@
3939 set tokudb_disable_hot_alter=0;
3940 set tokudb_disable_slow_alter=1;
3941 ALTER TABLE test_enum MODIFY COLUMN col2 ENUM('value1','value2','value4');
3942 -ERROR 42000: Table 'test_enum' uses an extension that doesn't exist in this MySQL version
3943 +ERROR 42000: Table 'test_enum' uses an extension that doesn't exist in this MariaDB version
main.func_time w7 [ pass ] 8353
1904
1905 MTR's internal check of the test case 'main.func_time' failed.
1906 This means that the test case does not preserve the state that existed
1907 before the test case was executed. Most likely the test case did not
1908 do a proper clean-up. It could also be caused by the previous test run
1909 by this thread, if the server wasn't restarted.
1910 This is the diff of the states of the servers before and after the
1911 test case was executed:
1912 mysqltest: Logging to '/data/tokubuild/mysqls/mariadb-5.5.35-tokudb-7.1.5-rc.1-debug-e-linux-x86_64/mysql-test/var/7/tmp/check-mysqld_1.log'.
1913 mysqltest: Results saved in '/data/tokubuild/mysqls/mariadb-5.5.35-tokudb-7.1.5-rc.1-debug-e-linux-x86_64/mysql-test/var/7/tmp/check-mysqld_1.result'.
1914 mysqltest: Connecting to server localhost:16140 (socket /tmp/ORbMEWwJmv/7/mysqld.1.sock) as 'root', connection 'default', attempt 0 ...
1915 mysqltest: ... Connected.
1916 mysqltest: Start processing test commands from './include/check-testcase.test' ...
1917 mysqltest: ... Done processing test commands.
1918 --- /data/tokubuild/mysqls/mariadb-5.5.35-tokudb-7.1.5-rc.1-debug-e-linux-x86_64/mysql-test/var/7/tmp/check-mysqld_1.result 2014-02-11 08:54:08.531105135 -0500
1919 +++ /data/tokubuild/mysqls/mariadb-5.5.35-tokudb-7.1.5-rc.1-debug-e-linux-x86_64/mysql-test/var/7/tmp/check-mysqld_1.reject 2014-02-11 08:54:17.158050605 -0500
1920 @@ -313,7 +313,7 @@
1921 SQL_LOG_OFF OFF
1922 SQL_LOW_PRIORITY_UPDATES OFF
1923 SQL_MAX_JOIN_SIZE 18446744073709551615
1924 -SQL_MODE
1925 +SQL_MODE NO_ENGINE_SUBSTITUTION
1926 SQL_NOTES ON
1927 SQL_QUOTE_SHOW_CREATE ON
1928 SQL_SAFE_UPDATES OFF
1929
1930 mysqltest: Result length mismatch
1931
1932 not ok
During a non-combinations run of partitions-99-hash.yy, a crash occurs. The stack trace appears as shown below:
#0 0x00007f3dcedd3f0c in __pthread_kill (threadid=<optimized out>, signo=signo@entry=6) at ../nptl/sysdeps/unix/sysv/linux/pthread_kill.c:62
#0 0x00007f3dcedd3f0c in __pthread_kill (threadid=<optimized out>, signo=signo@entry=6) at ../nptl/sysdeps/unix/sysv/linux/pthread_kill.c:62
#1 0x0000000000b91c63 in my_write_core (sig=6) at /home/tokubuild/builds/build-tokudb-1386006533-debug-e/mariadb/mysys/stacktrace.c:457
#2 0x00000000006f78ca in handle_fatal_signal (sig=6) at /home/tokubuild/builds/build-tokudb-1386006533-debug-e/mariadb/sql/signal_handler.cc:264
#3 <signal handler called>
#4 0x00007f3dce42df77 in __GI_raise (sig=sig@entry=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:56
#5 0x00007f3dce4315e8 in __GI_abort () at abort.c:90
#6 0x0000000000b984ba in safe_mutex_unlock (mp=<optimized out>, file=file@entry=0xcfaaa8 "/home/tokubuild/builds/build-tokudb-1386006533-debug-e/mariadb/storage/myisam/mi_keycache.c", line=line@entry=87) at /home/tokubuild/builds/build-tokudb-1386006533-debug-e/mariadb/mysys/thr_mutex.c:420
#7 0x00000000009155c9 in mi_assign_to_key_cache (info=0x7f3d88b5e260, key_map=<optimized out>, key_cache=0x7f3db3b2fae0) at /home/tokubuild/builds/build-tokudb-1386006533-debug-e/mariadb/storage/myisam/mi_keycache.c:87
#8 0x00000000008f931c in ha_myisam::assign_to_keycache (this=0x7f3d8422b078, thd=0x7f3db3fec060, check_opt=<optimized out>) at /home/tokubuild/builds/build-tokudb-1386006533-debug-e/mariadb/storage/myisam/ha_myisam.cc:1237
#9 0x0000000000b6b969 in ha_partition::handle_opt_part (this=this@entry=0x7f3d95caa678, thd=thd@entry=0x7f3db3fec060, check_opt=check_opt@entry=0x7f3db13f9660, part_id=part_id@entry=0, flag=flag@entry=5) at /home/tokubuild/builds/build-tokudb-1386006533-debug-e/mariadb/sql/ha_partition.cc:1091
#10 0x0000000000b6bc2f in ha_partition::handle_opt_partitions (this=this@entry=0x7f3d95caa678, thd=thd@entry=0x7f3db3fec060, check_opt=check_opt@entry=0x7f3db13f9660, flag=flag@entry=5) at /home/tokubuild/builds/build-tokudb-1386006533-debug-e/mariadb/sql/ha_partition.cc:1246
#11 0x0000000000b6be02 in ha_partition::assign_to_keycache (this=0x7f3d95caa678, thd=0x7f3db3fec060, check_opt=0x7f3db13f9660) at /home/tokubuild/builds/build-tokudb-1386006533-debug-e/mariadb/sql/ha_partition.cc:1018
#12 0x00000000006773cc in mysql_admin_table(THD *, TABLE_LIST *, HA_CHECK_OPT *, const char *, thr_lock_type, bool, bool, uint, int (*)(THD *, TABLE_LIST *, HA_CHECK_OPT *), struct {...}, int (*)(THD *, TABLE_LIST *)) (thd=thd@entry=0x7f3db3fec060, tables=tables@entry=0x7f3d8d0ac1a0, check_opt=check_opt@entry=0x7f3db13f9660, operator_name=operator_name@entry=0xcf8a48 "assign_to_keycache", lock_type=lock_type@entry=TL_READ_NO_INSERT, open_for_modify=open_for_modify@entry=false, repair_table_use_frm=repair_table_use_frm@entry=false, extra_open_options=extra_open_options@entry=0, prepare_func=prepare_func@entry=0x0, operator_func=&virtual table offset 512, view_operator_func=view_operator_func@entry=0x0) at /home/tokubuild/builds/build-tokudb-1386006533-debug-e/mariadb/sql/sql_admin.cc:654
#13 0x00000000006790be in mysql_assign_to_keycache (thd=thd@entry=0x7f3db3fec060, tables=tables@entry=0x7f3d8d0ac1a0, key_cache_name=key_cache_name@entry=0x7f3db3fefe58) at /home/tokubuild/builds/build-tokudb-1386006533-debug-e/mariadb/sql/sql_admin.cc:997
#14 0x00000000005a0fbd in mysql_execute_command (thd=thd@entry=0x7f3db3fec060) at /home/tokubuild/builds/build-tokudb-1386006533-debug-e/mariadb/sql/sql_parse.cc:2352
#15 0x00000000005a84f7 in mysql_parse (thd=thd@entry=0x7f3db3fec060, rawbuf=<optimized out>, length=<optimized out>, parser_state=parser_state@entry=0x7f3db13fa5f0) at /home/tokubuild/builds/build-tokudb-1386006533-debug-e/mariadb/sql/sql_parse.cc:5812
#16 0x00000000005a908a in dispatch_command (command=command@entry=COM_QUERY, thd=thd@entry=0x7f3db3fec060, packet=packet@entry=0x7f3db3ff1061 "", packet_length=packet_length@entry=49) at /home/tokubuild/builds/build-tokudb-1386006533-debug-e/mariadb/sql/sql_parse.cc:1082
#17 0x00000000005aaa16 in do_command (thd=0x7f3db3fec060) at /home/tokubuild/builds/build-tokudb-1386006533-debug-e/mariadb/sql/sql_parse.cc:797
#18 0x000000000066b82e in do_handle_one_connection (thd_arg=thd_arg@entry=0x7f3db3fec060) at /home/tokubuild/builds/build-tokudb-1386006533-debug-e/mariadb/sql/sql_connect.cc:1266
#19 0x000000000066b920 in handle_one_connection (arg=0x7f3db3fec060) at /home/tokubuild/builds/build-tokudb-1386006533-debug-e/mariadb/sql/sql_connect.cc:1181
#20 0x00007f3dcedcef6e in start_thread (arg=0x7f3db13fb700) at pthread_create.c:311
#21 0x00007f3dce4f19cd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:113
+ --tokudb-alter-print-error
+ Print errors for alter table operations
--tokudb-analyze-time=#
analyze time
--tokudb-backup-throttle=#
@@ -884,6 +886,7 @@ The following options may be given as the first argument:
TokuDB path to gdb for extra debug info on fatal signal
--tokudb-hide-default-row-format
hide the default row format
+ (Defaults to on; use --skip-tokudb-hide-default-row-format to disable.)
--tokudb-init-flags=#
Sets TokuDB DB_ENV->open flags
--tokudb-last-lock-timeout=name
@@ -1191,6 +1194,7 @@ time-format %H:%i:%s
timed-mutexes FALSE
tmp-table-size 16777216
tokudb ON
+tokudb-alter-print-error FALSE
tokudb-analyze-time 5
tokudb-backup-throttle 18446744073709551615
tokudb-block-size 4194304
@@ -1214,7 +1218,7 @@ tokudb-fs-reserve-percent 5
tokudb-fsync-log-period 0
tokudb-gdb-on-fatal TRUE
tokudb-gdb-path /usr/bin/gdb
-tokudb-hide-default-row-format FALSE
+tokudb-hide-default-row-format TRUE
Program terminated with signal 6, Aborted.
#0 0x00007f728e2a0f2c in __pthread_kill (threadid=<optimized out>, signo=signo@entry=6) at ../nptl/sysdeps/unix/sysv/linux/pthread_kill.c:62
#0 0x00007f728e2a0f2c in __pthread_kill (threadid=<optimized out>, signo=signo@entry=6) at ../nptl/sysdeps/unix/sysv/linux/pthread_kill.c:62
#1 0x0000000000b91c63 in my_write_core (sig=6) at /home/tokubuild/builds/build-tokudb-1386719273-debug-e/mariadb-5.5.34/mysys/stacktrace.c:457
#2 0x00000000006f78ca in handle_fatal_signal (sig=6) at /home/tokubuild/builds/build-tokudb-1386719273-debug-e/mariadb-5.5.34/sql/signal_handler.cc:264
#3 <signal handler called>
#4 0x00007f728d8fa037 in __GI_raise (sig=sig@entry=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:56
#5 0x00007f728d8fd698 in __GI_abort () at abort.c:90
#6 0x00007f728d8f2e03 in __assert_fail_base (fmt=0x7f728da4a158 "%s%s%s:%u: %s%sAssertion `%s' failed.\n%n", assertion=assertion@entry=0x7f728c1871b5 "r == 0", file=file@entry=0x7f728c17c460 "/home/tokubuild/builds/build-tokudb-1386719273-debug-e/mariadb-5.5.34/storage/tokudb/hatoku_defines.h", line=line@entry=368, function=function@entry=0x7f728c17f960 <commit_txn(__toku_db_txn*, unsigned int)::__PRETTY_FUNCTION__> "void commit_txn(DB_TXN*, uint32_t)") at assert.c:92
#7 0x00007f728d8f2eb2 in __GI___assert_fail (assertion=0x7f728c1871b5 "r == 0", file=0x7f728c17c460 "/home/tokubuild/builds/build-tokudb-1386719273-debug-e/mariadb-5.5.34/storage/tokudb/hatoku_defines.h", line=368, function=0x7f728c17f960 <commit_txn(__toku_db_txn*, unsigned int)::__PRETTY_FUNCTION__> "void commit_txn(DB_TXN*, uint32_t)") at assert.c:101
#8 0x00007f728c071c65 in commit_txn (flags=0, txn=0x7f7270106100) at /home/tokubuild/builds/build-tokudb-1386719273-debug-e/mariadb-5.5.34/storage/tokudb/hatoku_defines.h:368
#9 ha_tokudb::external_lock (this=0x7f72703bd078, thd=0x7f7272b30060, lock_type=2) at /home/tokubuild/builds/build-tokudb-1386719273-debug-e/mariadb-5.5.34/storage/tokudb/ha_tokudb.cc:6189
#10 0x0000000000700352 in handler::ha_external_lock (this=0x7f72703bd078, thd=thd@entry=0x7f7272b30060, lock_type=lock_type@entry=2) at /home/tokubuild/builds/build-tokudb-1386719273-debug-e/mariadb-5.5.34/sql/handler.cc:5142
#11 0x00000000007b101b in unlock_external (thd=thd@entry=0x7f7272b30060, table=table@entry=0x7f72700a1408, count=<optimized out>, count@entry=1) at /home/tokubuild/builds/build-tokudb-1386719273-debug-e/mariadb-5.5.34/sql/lock.cc:673
#12 0x00000000007b15af in mysql_unlock_read_tables (thd=0x7f7272b30060, sql_lock=0x7f72700a13e0) at /home/tokubuild/builds/build-tokudb-1386719273-debug-e/mariadb-5.5.34/sql/lock.cc:432
#13 0x00000000005e46da in JOIN::join_free (this=this@entry=0x7f7270243040) at /home/tokubuild/builds/build-tokudb-1386719273-debug-e/mariadb-5.5.34/sql/sql_select.cc:10708
#14 0x00000000005e4d29 in do_select (join=join@entry=0x7f7270243040, fields=fields@entry=0x7f7272b33b70, table=table@entry=0x0, procedure=0x0) at /home/tokubuild/builds/build-tokudb-1386719273-debug-e/mariadb-5.5.34/sql/sql_select.cc:16407
#15 0x00000000005f3b78 in JOIN::exec (this=this@entry=0x7f7270243040) at /home/tokubuild/builds/build-tokudb-1386719273-debug-e/mariadb-5.5.34/sql/sql_select.cc:2859
#16 0x00000000005f4866 in mysql_select (thd=thd@entry=0x7f7272b30060, rref_pointer_array=rref_pointer_array@entry=0x7f7272b33cc8, tables=0x7f72700b1ae8, wild_num=1, fields=..., conds=0x7f72700b2df8, og_num=0, order=0x0, group=0x0, having=0x0, proc_param=0x0, select_options=select_options@entry=2684619520, result=result@entry=0x7f7270243020, unit=unit@entry=0x7f7272b33388, select_lex=select_lex@entry=0x7f7272b33a60) at /home/tokubuild/builds/build-tokudb-1386719273-debug-e/mariadb-5.5.34/sql/sql_select.cc:3079
#17 0x00000000005f88a8 in handle_select (thd=thd@entry=0x7f7272b30060, lex=lex@entry=0x7f7272b332d8, result=result@entry=0x7f7270243020, setup_tables_done_option=setup_tables_done_option@entry=0) at /home/tokubuild/builds/build-tokudb-1386719273-debug-e/mariadb-5.5.34/sql/sql_select.cc:318
#18 0x000000000059ac8a in execute_sqlcom_select (thd=thd@entry=0x7f7272b30060, all_tables=0x7f72700b1ae8) at /home/tokubuild/builds/build-tokudb-1386719273-debug-e/mariadb-5.5.34/sql/sql_parse.cc:4701
#19 0x00000000005a0bb8 in mysql_execute_command (thd=thd@entry=0x7f7272b30060) at /home/tokubuild/builds/build-tokudb-1386719273-debug-e/mariadb-5.5.34/sql/sql_parse.cc:2234
#20 0x00000000005a84f7 in mysql_parse (thd=thd@entry=0x7f7272b30060, rawbuf=<optimized out>, length=<optimized out>, parser_state=parser_state@entry=0x7f7279ea35f0) at /home/tokubuild/builds/build-tokudb-1386719273-debug-e/mariadb-5.5.34/sql/sql_parse.cc:5812
#21 0x00000000005a908a in dispatch_command (command=command@entry=COM_QUERY, thd=thd@entry=0x7f7272b30060, packet=packet@entry=0x7f7272b35061 "", packet_length=packet_length@entry=240) at /home/tokubuild/builds/build-tokudb-1386719273-debug-e/mariadb-5.5.34/sql/sql_parse.cc:1082
#22 0x00000000005aaa16 in do_command (thd=0x7f7272b30060) at /home/tokubuild/builds/build-tokudb-1386719273-debug-e/mariadb-5.5.34/sql/sql_parse.cc:797
#23 0x000000000066b82e in do_handle_one_connection (thd_arg=thd_arg@entry=0x7f7272b30060) at /home/tokubuild/builds/build-tokudb-1386719273-debug-e/mariadb-5.5.34/sql/sql_connect.cc:1266
#24 0x000000000066b920 in handle_one_connection (arg=0x7f7272b30060) at /home/tokubuild/builds/build-tokudb-1386719273-debug-e/mariadb-5.5.34/sql/sql_connect.cc:1181
#25 0x00007f728e29bf8e in start_thread (arg=0x7f7279ea4700) at pthread_create.c:311
#26 0x00007f728d9bda0d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:113
In version 5.5.30-tokudb-7.0.4-MariaDB-log:
MariaDB [(none)]> show variables like 'tokudb_version';
+----------------+-------+
| Variable_name | Value |
+----------------+-------+
| tokudb_version | |
+----------------+-------+
1 row in set (0.00 sec)
This was not the case with earlier engines.
The following set of commands causes a warning in server error log after the connection disconnects:
DROP TABLE IF EXISTS t1;
CREATE TABLE t1 (a INT, b INT) ENGINE=TokuDB;
BEGIN;
SELECT b FROM t1;
CREATE TEMPORARY TABLE tmp1 ( i INT ) ENGINE=TokuDB SELECT b FROM t1;
ROLLBACK;
The warning comes in different flavors.
With
SET GLOBAL log_output='TABLE';
SET GLOBAL general_log = ON;
131209 3:32:56 [Warning] Could not remove temporary table: '/home/elenst/bzr/10.0/data/tmp/#sql6b52_e_0', error: 175
With
SET GLOBAL log_output='FILE';
131209 3:34:13 [Warning] Could not remove temporary table: '/home/elenst/bzr/10.0/data/tmp/#sql6b52_f_0', error: 2
Reproducible on mariadb-5.5.30-tokudb-7.0.1 and mysql-5.5.30-tokudb-7.0.1.
I'm not sure whether it's related to #25 , since it doesn't contain details.
#0 0x00007f4ecee8df0c in __pthread_kill (threadid=<optimized out>, signo=signo@entry=6) at ../nptl/sysdeps/unix/sysv/linux/pthread_kill.c:62
#0 0x00007f4ecee8df0c in __pthread_kill (threadid=<optimized out>, signo=signo@entry=6) at ../nptl/sysdeps/unix/sysv/linux/pthread_kill.c:62
#1 0x0000000000b91c63 in my_write_core (sig=6) at /home/tokubuild/builds/build-tokudb-1386006533-debug-e/mariadb/mysys/stacktrace.c:457
#2 0x00000000006f78ca in handle_fatal_signal (sig=6) at /home/tokubuild/builds/build-tokudb-1386006533-debug-e/mariadb/sql/signal_handler.cc:264
#3 <signal handler called>
#4 0x00007f4ece4e7f77 in __GI_raise (sig=sig@entry=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:56
#5 0x00007f4ece4eb5e8 in __GI_abort () at abort.c:90
#6 0x00007f4eccd3c0b6 in toku_do_backtrace_abort () at /home/tokubuild/builds/build-tokudb-1386006533-debug-e/mariadb/storage/tokudb/ft-index/portability/toku_assert.cc:191
#7 0x00007f4eccd3c14c in toku_do_assert_fail (expr_as_string=<optimized out>, function=<optimized out>, file=<optimized out>, line=<optimized out>, caller_errno=0) at /home/tokubuild/builds/build-tokudb-1386006533-debug-e/mariadb/storage/tokudb/ft-index/portability/toku_assert.cc:212
#8 0x00007f4eccc7b0f0 in env_crash (db_env=<optimized out>, msg=<optimized out>, fun=<optimized out>, file=<optimized out>, line=<optimized out>, caller_errno=<optimized out>) at /home/tokubuild/builds/build-tokudb-1386006533-debug-e/mariadb/storage/tokudb/ft-index/src/ydb.cc:2236
#9 0x00007f4eccc566e6 in toku_hton_assert_fail (expr_as_string=expr_as_string@entry=0x7f4eccd7b4ce "r==0", fun=fun@entry=0x7f4eccd80f12 <ha_tokudb::index_end()::__FUNCTION__> "index_end", file=file@entry=0x7f4eccd7c710 "/home/tokubuild/builds/build-tokudb-1386006533-debug-e/mariadb/storage/tokudb/ha_tokudb.cc", line=line@entry=4672, caller_errno=0) at /home/tokubuild/builds/build-tokudb-1386006533-debug-e/mariadb/storage/tokudb/hatoku_hton.cc:198
#10 0x00007f4eccc62038 in ha_tokudb::index_end (this=0x7f4e914a7078) at /home/tokubuild/builds/build-tokudb-1386006533-debug-e/mariadb/storage/tokudb/ha_tokudb.cc:4672
#11 0x00000000005db6cf in ha_index_end (this=0x7f4e914a7078) at /home/tokubuild/builds/build-tokudb-1386006533-debug-e/mariadb/sql/handler.h:2142
#12 ha_index_or_rnd_end (this=0x7f4e914a7078) at /home/tokubuild/builds/build-tokudb-1386006533-debug-e/mariadb/sql/handler.h:2186
#13 st_join_table::cleanup (this=this@entry=0x7f4e966dd0a0) at /home/tokubuild/builds/build-tokudb-1386006533-debug-e/mariadb/sql/sql_select.cc:10378
#14 0x00000000005e4097 in JOIN::cleanup (this=this@entry=0x7f4e966db078, full=full@entry=true) at /home/tokubuild/builds/build-tokudb-1386006533-debug-e/mariadb/sql/sql_select.cc:10780
#15 0x00000000005e5017 in JOIN::destroy (this=0x7f4e966db078) at /home/tokubuild/builds/build-tokudb-1386006533-debug-e/mariadb/sql/sql_select.cc:2918
#16 0x000000000062f980 in st_select_lex::cleanup (this=this@entry=0x7f4e96630468) at /home/tokubuild/builds/build-tokudb-1386006533-debug-e/mariadb/sql/sql_union.cc:995
#17 0x000000000062fb4f in st_select_lex_unit::cleanup (this=this@entry=0x7f4e966307d0) at /home/tokubuild/builds/build-tokudb-1386006533-debug-e/mariadb/sql/sql_union.cc:860
#18 0x000000000062fa28 in st_select_lex::cleanup (this=this@entry=0x7f4eb39c3a60) at /home/tokubuild/builds/build-tokudb-1386006533-debug-e/mariadb/sql/sql_union.cc:1002
#19 0x000000000062fb4f in st_select_lex_unit::cleanup (this=this@entry=0x7f4eb39c3388) at /home/tokubuild/builds/build-tokudb-1386006533-debug-e/mariadb/sql/sql_union.cc:860
#20 0x00000000005a7335 in mysql_execute_command (thd=thd@entry=0x7f4eb39c0060) at /home/tokubuild/builds/build-tokudb-1386006533-debug-e/mariadb/sql/sql_parse.cc:4592
#21 0x00000000005a84f7 in mysql_parse (thd=thd@entry=0x7f4eb39c0060, rawbuf=<optimized out>, length=<optimized out>, parser_state=parser_state@entry=0x7f4eaefb35f0) at /home/tokubuild/builds/build-tokudb-1386006533-debug-e/mariadb/sql/sql_parse.cc:5812
rpl.rpl_stm_tokudb 'mix' w4 [ pass ] 1295
357
358 MTR's internal check of the test case 'rpl.rpl_stm_tokudb' failed.
359 This means that the test case does not preserve the state that existed
360 before the test case was executed. Most likely the test case did not
361 do a proper clean-up. It could also be caused by the previous test run
362 by this thread, if the server wasn't restarted.
363 This is the diff of the states of the servers before and after the
364 test case was executed:
365 mysqltest: Logging to '/data/tokubuild/mysqls/mariadb-5.5.35-tokudb-7.1.5-rc.1-debug-e-linux-x86_64/mysql-test/var/4/tmp/check-mysqld_2.log'.
366 mysqltest: Results saved in '/data/tokubuild/mysqls/mariadb-5.5.35-tokudb-7.1.5-rc.1-debug-e-linux-x86_64/mysql-test/var/4/tmp/check-mysqld_2.result'.
367 mysqltest: Connecting to server localhost:16101 (socket /tmp/ORbMEWwJmv/4/mysqld.2.sock) as 'root', connection 'default', attempt 0 ...
368 mysqltest: ... Connected.
369 mysqltest: Start processing test commands from './include/check-testcase.test' ...
370 mysqltest: ... Done processing test commands.
371 --- /data/tokubuild/mysqls/mariadb-5.5.35-tokudb-7.1.5-rc.1-debug-e-linux-x86_64/mysql-test/var/4/tmp/check-mysqld_2.result 2014-02-11 08:36:49.831672134 -0500
372 +++ /data/tokubuild/mysqls/mariadb-5.5.35-tokudb-7.1.5-rc.1-debug-e-linux-x86_64/mysql-test/var/4/tmp/check-mysqld_2.reject 2014-02-11 08:36:51.352662516 -0500
373 @@ -834,4 +834,4 @@
374 VARIABLE_NAME VARIABLE_VALUE
375 DEBUG_SYNC ON - current signal: ''
376 Variable_name Value
377 -Slave_open_temp_tables 0
378 +Slave_open_temp_tables 1
379
380 mysqltest: Result content mismatch
381
382 not ok
Program terminated with signal 6, Aborted.
#0 0x00007f6f9581cf2c in __pthread_kill (threadid=<optimized out>, signo=signo@entry=6) at ../nptl/sysdeps/unix/sysv/linux/pthread_kill.c:62
#0 0x00007f6f9581cf2c in __pthread_kill (threadid=<optimized out>, signo=signo@entry=6) at ../nptl/sysdeps/unix/sysv/linux/pthread_kill.c:62
#1 0x0000000000b91c63 in my_write_core (sig=6) at /home/tokubuild/builds/build-tokudb-1386719273-debug-e/mariadb-5.5.34/mysys/stacktrace.c:457
#2 0x00000000006f78ca in handle_fatal_signal (sig=6) at /home/tokubuild/builds/build-tokudb-1386719273-debug-e/mariadb-5.5.34/sql/signal_handler.cc:264
#3 <signal handler called>
#4 0x00007f6f94e76037 in __GI_raise (sig=sig@entry=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:56
#5 0x00007f6f94e79698 in __GI_abort () at abort.c:90
#6 0x00007f6f94e6ee03 in __assert_fail_base (fmt=0x7f6f94fc6158 "%s%s%s:%u: %s%sAssertion `%s' failed.\n%n", assertion=assertion@entry=0xc3c2a0 "mon > 0 && mon < 13", file=file@entry=0xc3c3a0 "/home/tokubuild/builds/build-tokudb-1386719273-debug-e/mariadb-5.5.34/sql/tztime.cc", line=line@entry=799, function=function@entry=0xc3cbc0 <sec_since_epoch(int, int, int, int, int, int)::__PRETTY_FUNCTION__> "my_time_t sec_since_epoch(int, int, int, int, int, int)") at assert.c:92
#7 0x00007f6f94e6eeb2 in __GI___assert_fail (assertion=0xc3c2a0 "mon > 0 && mon < 13", file=0xc3c3a0 "/home/tokubuild/builds/build-tokudb-1386719273-debug-e/mariadb-5.5.34/sql/tztime.cc", line=799, function=0xc3cbc0 <sec_since_epoch(int, int, int, int, int, int)::__PRETTY_FUNCTION__> "my_time_t sec_since_epoch(int, int, int, int, int, int)") at assert.c:101
#8 0x000000000064b7b6 in sec_since_epoch (year=2008, mon=0, mday=0, hour=7728, min=0, sec=0) at /home/tokubuild/builds/build-tokudb-1386719273-debug-e/mariadb-5.5.34/sql/tztime.cc:799
#9 0x000000000064bb27 in TIME_to_gmt_sec (error_code=0x7f6f77ff817c, sp=0x7f6f7a6f6408, t=0x7f6f77ff81f0) at /home/tokubuild/builds/build-tokudb-1386719273-debug-e/mariadb-5.5.34/sql/tztime.cc:942
#10 Time_zone_db::TIME_to_gmt_sec (this=<optimized out>, t=0x7f6f77ff81f0, error_code=0x7f6f77ff817c) at /home/tokubuild/builds/build-tokudb-1386719273-debug-e/mariadb-5.5.34/sql/tztime.cc:1261
#11 0x0000000000794f80 in Item_func_convert_tz::get_date (this=0x7f6f63e08910, ltime=0x7f6f77ff81f0, fuzzy_date=<optimized out>) at /home/tokubuild/builds/build-tokudb-1386719273-debug-e/mariadb-5.5.34/sql/item_timefunc.cc:1974
#12 0x0000000000729a86 in get_datetime_value (thd=thd@entry=0x7f6f80feb060, item_arg=item_arg@entry=0x7f6f77ff8298, cache_arg=cache_arg@entry=0x7f6f77ff8290, warn_item=0x7f6f63e08910, is_null=is_null@entry=0x7f6f77ff828f) at /home/tokubuild/builds/build-tokudb-1386719273-debug-e/mariadb-5.5.34/sql/item_cmpfunc.cc:902
#13 0x0000000000729e93 in Item_func_between::val_int (this=0x7f6f63e08a08) at /home/tokubuild/builds/build-tokudb-1386719273-debug-e/mariadb-5.5.34/sql/item_cmpfunc.cc:2265
#14 0x000000000070a437 in Item::val_bool (this=0x7f6f63e08a08) at /home/tokubuild/builds/build-tokudb-1386719273-debug-e/mariadb-5.5.34/sql/item.cc:215
#15 0x00000000007236bf in Item_cond_and::val_int (this=0x7f6f63dd0208) at /home/tokubuild/builds/build-tokudb-1386719273-debug-e/mariadb-5.5.34/sql/item_cmpfunc.cc:4692
#16 0x00000000006f5f17 in skip_record (this=<optimized out>, thd=<optimized out>) at /home/tokubuild/builds/build-tokudb-1386719273-debug-e/mariadb-5.5.34/sql/opt_range.h:1013
#17 find_all_keys (tempfile=0x7f6f77ff8680, buffpek_pointers=0x7f6f77ff8810, sort_keys_buf=0x7f6f63e78060 '\245' <repeats 4949 times>, "h4z\025", '\245' <repeats 3143 times>, 'Z' <repeats 32768 times>, "\200\032\310co\177", sort_keys=0x7f6f63e78060, select=0x7f6f63dd0348, param=0x7f6f77ff8600) at /home/tokubuild/builds/build-tokudb-1386719273-debug-e/mariadb-5.5.34/sql/filesort.cc:630
#18 filesort (thd=thd@entry=0x7f6f80feb060, table=table@entry=0x7f6f76d0d460, sortorder=0x7f6f00000000, s_length=1993397344, select=select@entry=0x7f6f63dd0348, max_rows=18446744069414584320, max_rows@entry=18446744073709551615, sort_positions=sort_positions@entry=false, examined_rows=examined_rows@entry=0x7f6f77ff8e58) at /home/tokubuild/builds/build-tokudb-1386719273-debug-e/mariadb-5.5.34/sql/filesort.cc:240
#19 0x00000000005e5abb in create_sort_index (thd=0x7f6f80feb060, join=join@entry=0x7f6f63e090c8, order=<optimized out>, filesort_limit=18446744073709551615, select_limit=18446744073709551615, is_order_by=false) at /home/tokubuild/builds/build-tokudb-1386719273-debug-e/mariadb-5.5.34/sql/sql_select.cc:19689
#20 0x00000000005f3a23 in JOIN::exec (this=this@entry=0x7f6f63e090c8) at /home/tokubuild/builds/build-tokudb-1386719273-debug-e/mariadb-5.5.34/sql/sql_select.cc:2829
#21 0x00000000005f4866 in mysql_select (thd=thd@entry=0x7f6f80feb060, rref_pointer_array=rref_pointer_array@entry=0x7f6f80feecc8, tables=0x7f6f63cb9b50, wild_num=0, fields=..., conds=0x7f6f63cbab18, og_num=2, order=0x7f6f63e08e40, group=0x0, having=0x0, proc_param=0x0, select_options=select_options@entry=2147748608, result=result@entry=0x7f6f63e090a8, unit=unit@entry=0x7f6f80fee388, select_lex=select_lex@entry=0x7f6f80feea60) at /home/tokubuild/builds/build-tokudb-1386719273-debug-e/mariadb-5.5.34/sql/sql_select.cc:3079
#22 0x00000000005f88a8 in handle_select (thd=thd@entry=0x7f6f80feb060, lex=lex@entry=0x7f6f80fee2d8, result=result@entry=0x7f6f63e090a8, setup_tables_done_option=setup_tables_done_option@entry=0) at /home/tokubuild/builds/build-tokudb-1386719273-debug-e/mariadb-5.5.34/sql/sql_select.cc:318
#23 0x000000000059ac8a in execute_sqlcom_select (thd=thd@entry=0x7f6f80feb060, all_tables=0x7f6f63cb9b50) at /home/tokubuild/builds/build-tokudb-1386719273-debug-e/mariadb-5.5.34/sql/sql_parse.cc:4701
#24 0x00000000005a0bb8 in mysql_execute_command (thd=thd@entry=0x7f6f80feb060) at /home/tokubuild/builds/build-tokudb-1386719273-debug-e/mariadb-5.5.34/sql/sql_parse.cc:2234
#25 0x00000000005a84f7 in mysql_parse (thd=thd@entry=0x7f6f80feb060, rawbuf=<optimized out>, length=<optimized out>, parser_state=parser_state@entry=0x7f6f77ffa5f0) at /home/tokubuild/builds/build-tokudb-1386719273-debug-e/mariadb-5.5.34/sql/sql_parse.cc:5812
#26 0x00000000005a908a in dispatch_command (command=command@entry=COM_QUERY, thd=thd@entry=0x7f6f80feb060, packet=packet@entry=0x7f6f80f75061 " SELECT `pk` AS c1 , TIMESTAMP( `col_date_nokey` ) AS c2 , `col_date_nokey` AS c3 , `col_datetime_nokey` AS c4 FROM `BB` WHERE FROM_DAYS( `col_int_nokey` ) IS NOT NULL AND `col_time_key` NOT IN ( TIMESTAMP( CURRENT_DATE() ) , UTC_DATE() , DATE( '2004-10-25' ) ) AND `col_date_nokey` BETWEEN `pk` AND CONVERT_TZ( GREATEST( `col_varchar_key` , `col_time_nokey` , '2007-12-22' , '0000-00-00' , `col_date_key` ) , 'leap/Europe/Moscow' , 'Japan' ) AND LOCALTIME() IS NOT NULL ORDER BY `pk` , `col_varchar_nokey`", packet_length=packet_length@entry=507) at /home/tokubuild/builds/build-tokudb-1386719273-debug-e/mariadb-5.5.34/sql/sql_parse.cc:1082
#27 0x00000000005aaa16 in do_command (thd=0x7f6f80feb060) at /home/tokubuild/builds/build-tokudb-1386719273-debug-e/mariadb-5.5.34/sql/sql_parse.cc:797
#28 0x000000000066b82e in do_handle_one_connection (thd_arg=thd_arg@entry=0x7f6f80feb060) at /home/tokubuild/builds/build-tokudb-1386719273-debug-e/mariadb-5.5.34/sql/sql_connect.cc:1266
#29 0x000000000066b920 in handle_one_connection (arg=0x7f6f80feb060) at /home/tokubuild/builds/build-tokudb-1386719273-debug-e/mariadb-5.5.34/sql/sql_connect.cc:1181
#30 0x00007f6f95817f8e in start_thread (arg=0x7f6f77ffb700) at pthread_create.c:311
#31 0x00007f6f94f39a0d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:113
| Id | User | Host | db | Command | Time | State | Info | Progress |
| 489 | tokubuild | localhost | tpch30G_tokudb | Query | 101 | ./tpch30G_tokudb/orders key=orders_dt_idx 2 | check table orders | 0.000 |
Program terminated with signal 6, Aborted.
#0 0x00007f51a29a0f0c in __pthread_kill (threadid=<optimized out>, signo=signo@entry=6) at ../nptl/sysdeps/unix/sysv/linux/pthread_kill.c:62
#0 0x00007f51a29a0f0c in __pthread_kill (threadid=<optimized out>, signo=signo@entry=6) at ../nptl/sysdeps/unix/sysv/linux/pthread_kill.c:62
#1 0x0000000000b91c63 in my_write_core (sig=6) at /home/tokubuild/builds/build-tokudb-1386006533-debug-e/mariadb/mysys/stacktrace.c:457
#2 0x00000000006f78ca in handle_fatal_signal (sig=6) at /home/tokubuild/builds/build-tokudb-1386006533-debug-e/mariadb/sql/signal_handler.cc:264
#3 <signal handler called>
#4 0x00007f51a1ffaf77 in __GI_raise (sig=sig@entry=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:56
#5 0x00007f51a1ffe5e8 in __GI_abort () at abort.c:90
#6 0x00007f51a1ff3d43 in __assert_fail_base (fmt=0x7f51a214af58 "%s%s%s:%u: %s%sAssertion `%s' failed.\n%n", assertion=assertion@entry=0xcc4966 "0", file=file@entry=0xc101d8 "/home/tokubuild/builds/build-tokudb-1386006533-debug-e/mariadb/sql/protocol.cc", line=line@entry=518, function=function@entry=0xc10b60 <Protocol::end_statement()::__PRETTY_FUNCTION__> "void Protocol::end_statement()") at assert.c:92
#7 0x00007f51a1ff3df2 in __GI___assert_fail (assertion=0xcc4966 "0", file=0xc101d8 "/home/tokubuild/builds/build-tokudb-1386006533-debug-e/mariadb/sql/protocol.cc", line=518, function=0xc10b60 <Protocol::end_statement()::__PRETTY_FUNCTION__> "void Protocol::end_statement()") at assert.c:101
#8 0x0000000000524714 in Protocol::end_statement (this=0x7f51873cd628) at /home/tokubuild/builds/build-tokudb-1386006533-debug-e/mariadb/sql/protocol.cc:518
#9 0x00000000005aa0a5 in dispatch_command (command=command@entry=COM_QUERY, thd=thd@entry=0x7f51873cd060, packet=<optimized out>, packet@entry=0x7f51873d2061 "DELETE FROM `AA` WHERE `col_int_key` BETWEEN 'msjbuklzlflgzedxwghsobsyredqqvlcidsdxhwdtqqdccmktjutjdlfzqunozpqesuasdakamishcvyqiykigwffzmnjojoolfauwefmbugevzhrcqymngehqrrgctnwzbctbirrelhhkpwpoiuwyzzoghacpfocdhvjpmxqskvccxjigrslibtclymfbmlvdesrqurgidtouyeatixzmqbbubvipquvwxgptqitmnsxodqvotkdiqyyqiysk' AND 'have' OR ((`col_datetime_nokey` > REPEAT(232, 'had')) AND (`col_time_key` IN ( NULL, DATEDIFF(NOW(), '2000-10-08'), 'sjbuklzlflg', REPEAT(224, 'that'), NULL )))", packet_length=packet_length@entry=467) at /home/tokubuild/builds/build-tokudb-1386006533-debug-e/mariadb/sql/sql_parse.cc:1475
#10 0x00000000005aaa16 in do_command (thd=0x7f51873cd060) at /home/tokubuild/builds/build-tokudb-1386006533-debug-e/mariadb/sql/sql_parse.cc:797
#11 0x000000000066b82e in do_handle_one_connection (thd_arg=thd_arg@entry=0x7f51873cd060) at /home/tokubuild/builds/build-tokudb-1386006533-debug-e/mariadb/sql/sql_connect.cc:1266
#12 0x000000000066b920 in handle_one_connection (arg=0x7f51873cd060) at /home/tokubuild/builds/build-tokudb-1386006533-debug-e/mariadb/sql/sql_connect.cc:1181
#13 0x00007f51a299bf6e in start_thread (arg=0x7f518e4a5700) at pthread_create.c:311
#14 0x00007f51a20be9cd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:113
Here is a copy of the gentest.pl command as well:
gentest.pl --gendata= --threads=64 --queries=10000000 --duration=300 --dsn=dbi:mysql:host=127.0.0.1:port=19300:user=root:database=test --grammar=conf/replication/replication_basic.yy
rpl.rpl_ddl 'innodb_plugin,mix' w2 [ pass ] 1370
91
92 MTR's internal check of the test case 'rpl.rpl_ddl' failed.
93 This means that the test case does not preserve the state that existed
94 before the test case was executed. Most likely the test case did not
95 do a proper clean-up. It could also be caused by the previous test run
96 by this thread, if the server wasn't restarted.
97 This is the diff of the states of the servers before and after the
98 test case was executed:
99 mysqltest: Logging to '/data/tokubuild/mysqls/mariadb-5.5.35-tokudb-7.1.5-rc.1-debug-e-linux-x86_64/mysql-test/var/2/tmp/check-mysqld_2.log'.
100 mysqltest: Results saved in '/data/tokubuild/mysqls/mariadb-5.5.35-tokudb-7.1.5-rc.1-debug-e-linux-x86_64/mysql-test/var/2/tmp/check-mysqld_2.result'.
101 mysqltest: Connecting to server localhost:16001 (socket /tmp/ORbMEWwJmv/2/mysqld.2.sock) as 'root', connection 'default', attempt 0 ...
102 mysqltest: ... Connected.
103 mysqltest: Start processing test commands from './include/check-testcase.test' ...
104 mysqltest: ... Done processing test commands.
105 --- /data/tokubuild/mysqls/mariadb-5.5.35-tokudb-7.1.5-rc.1-debug-e-linux-x86_64/mysql-test/var/2/tmp/check-mysqld_2.result 2014-02-11 08:33:58.696754412 -0500
106 +++ /data/tokubuild/mysqls/mariadb-5.5.35-tokudb-7.1.5-rc.1-debug-e-linux-x86_64/mysql-test/var/2/tmp/check-mysqld_2.reject 2014-02-11 08:34:00.335744046 -0500
107 @@ -713,4 +713,4 @@
108 VARIABLE_NAME VARIABLE_VALUE
109 DEBUG_SYNC ON - current signal: ''
110 Variable_name Value
111 -Slave_open_temp_tables 0
112 +Slave_open_temp_tables 1
113
114 mysqltest: Result content mismatch
115
116 not ok
During an RQG suites run, alter_online.yy causes a seg fault and crash. Here is the command that causes the crash:
./runall.pl --grammar=conf/runtime/alter_online.yy --duration=300 --queries=100000000 --threads=64 --basedir=/mnt/ssd/mysql/mariadb-5.5.35-tokudb-7.1.5-rc.3-debug-e-linux-x86_64 --vardir=/mnt/ssd/mysql/vardir1 --mask-level=0 --mask=0 --seed=1 --mysqld=--general_log
Originally reported as https://github.com/Tokutek/backup-enterprise/issues/30 and re-reported as Tokutek/mysql-5.5#5
in sql_backup.cc the thd_proc_info needs to be given a string that has long lifetime since it simply stores a pointer in the string for future use.
@@ -451,7 +451,7 @@
1 SIMPLE t14 eq_ref PRIMARY PRIMARY 2 test.t1.a8 1 Using where
1 SIMPLE t15 eq_ref PRIMARY PRIMARY 2 test.t1.a9 1 Using where; Using index
1 SIMPLE t16 ref PRIMARY PRIMARY 2 test.t15.o1 1 Using where
-1 SIMPLE t10 ALL PRIMARY NULL NULL NULL 3 Using where; Using join buffer (flat, BNL join)
+1 SIMPLE t10 index PRIMARY PRIMARY 1 NULL 3 Using where; Using join buffer (flat, BNL join)
explain select * from v1;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 ALL a4,a6,a5,a7 NULL NULL NULL 3 Using where
@@ -473,7 +473,7 @@
1 SIMPLE t14 eq_ref PRIMARY PRIMARY 2 test.t1.a8 1 Using where
1 SIMPLE t15 eq_ref PRIMARY PRIMARY 2 test.t1.a9 1 Using where; Using index
1 SIMPLE t16 ref PRIMARY PRIMARY 2 test.t15.o1 1 Using where
-1 SIMPLE t10 ALL PRIMARY NULL NULL NULL 3 Using where; Using join buffer (flat, BNL join)
+1 SIMPLE t10 index PRIMARY PRIMARY 1 NULL 3 Using where; Using join buffer (flat, BNL join)
drop view v1;
drop table t1,t2,t3,t4,t5,t6,t7,t8,t9,t10,t11,t12,t13,t14,t15,t16;
Completed: Failed 5/3128 tests, 99.84% were successful.
Failing test(s): main.join_outer_innodb main.func_time main.mysqld--help main.bad_frm_crash_5029
The log files in var/log may give you some hint of what went wrong.
If you want to report this error, please read first the documentation
at http://dev.mysql.com/doc/mysql/en/mysql-test-suite.html
Errors/warnings were found in logfiles during server shutdown after running the
following sequence(s) of tests:
main.assign_key_cache-5405 main.alter_table funcs_1.is_tables_mysql main.aborted_clients main.query_cache funcs_1.is_tables_embedded funcs_1.is_cml_myisam main.bad_frm_crash_5029 funcs_1.myisam_trig_\
09 funcs_1.is_column_privileges_is_mysql_test funcs_1.is_engines_csv funcs_1.is_schemata_embedded funcs_1.myisam_storedproc_03 funcs_1.is_engines_memory funcs_1.memory_trig_08 funcs_1.myisam_storedproc_0\
8 funcs_1.memory_storedproc_03 funcs_1.is_table_constraints_mysql funcs_1.processlist_priv_ps funcs_1.is_tables_mysql_embedded funcs_1.memory_cursors funcs_1.is_views funcs_1.is_triggers main.almost_full\
funcs_1.memory_trig_0407 jp.jp_create_db_utf8 main.auto_increment funcs_1.is_tables_myisam funcs_1.myisam_storedproc_07 main.ssl-big funcs_1.is_user_privileges funcs_1.is_tables_is main.alias funcs_1.me\
mory_storedproc_08 funcs_1.myisam_trig_0407 funcs_1.myisam_func_view funcs_1.is_columns_myisam funcs_1.is_columns_mysql funcs_1.is_key_column_usage_embedded funcs_1.processlist_val_ps funcs_1.myisam_bitd\
ata funcs_1.is_coll_char_set_appl funcs_1.memory_views funcs_1.is_table_constraints funcs_1.myisam_cursors funcs_1.is_table_constraints_is sys_vars.transaction_prealloc_size_bug27322 funcs_1.memory_store\
dproc_07 funcs_1.is_columns funcs_1.is_collations funcs_1.myisam_trig_03 main.auto_increment_ranges_myisam funcs_1.processlist_val_no_prot funcs_1.is_table_privileges funcs_1.is_routines_embedded funcs_1\
.is_statistics_is jp.jp_create_db_ujis funcs_1.is_events funcs_1.is_tables_is_embedded funcs_1.is_engines_myisam funcs_1.is_statistics_mysql funcs_1.is_column_privileges funcs_1.storedproc main.query_cac\
he_debug funcs_1.is_triggers_embedded funcs_1.is_table_constraints_mysql_embedded main.1st funcs_1.is_routines funcs_1.is_statistics_mysql_embedded jp.jp_create_db_ucs2 funcs_1.myisam_storedproc_06 funcs\
_1.is_schemata funcs_1.is_tables_memory main.adddate_454 funcs_1.is_tables funcs_1.is_basics_mixed funcs_1.processlist_priv_no_prot funcs_1.myisam_storedproc_10 funcs_1.memory_trig_03 funcs_1.is_statisti\
cs jp.jp_create_db_sjis funcs_1.myisam_storedproc_02 funcs_1.charset_collation funcs_1.memory_trig_03e funcs_1.is_cml_memory funcs_1.is_columns_myisam_embedded funcs_1.is_key_column_usage main.ansi funcs\
_1.memory_trig_0102 funcs_1.memory_trig_1011ext funcs_1.memory_func_view funcs_1.is_engines funcs_1.myisam_trig_0102 funcs_1.is_schema_privileges funcs_1.is_columns_memory funcs_1.memory_storedproc_02 fu\
ncs_1.myisam_trig_08 funcs_1.is_schemata_is_mysql_test funcs_1.memory_storedproc_06 funcs_1.myisam_trig_1011ext funcs_1.is_views_embedded funcs_1.is_schema_privileges_is_mysql_test funcs_1.is_engines_mer\
ge funcs_1.memory_bitdata funcs_1.memory_storedproc_10 main.type_newdecimal-big funcs_1.memory_trig_09 funcs_1.is_character_sets funcs_1.is_columns_mysql_embedded funcs_1.myisam_trig_03e main.analyze fun\
cs_1.is_tables_myisam_embedded
142 tests were skipped, 138 by the test itself.
See Tokutek/ft-engine#40
Tokutek/mysql56#75
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.