1. 01 May, 2008 3 commits
    • unknown's avatar
      Merge magare.gmz:/home/kgeorge/mysql/work/B35298-5.0-bugteam · 0e287a9c
      unknown authored
      into  magare.gmz:/home/kgeorge/mysql/work/B35298-5.1-bugteam
      
      
      mysql-test/r/func_gconcat.result:
        Auto merged
      mysql-test/t/func_gconcat.test:
        Auto merged
      sql/item_sum.cc:
        Auto merged
      configure.in:
        merge 5.0-bugteam to 5.1-bugteam
      0e287a9c
    • unknown's avatar
      Fix for bug #35298: GROUP_CONCAT with DISTINCT can crash the server · 1a68ec28
      unknown authored
      The bug is a regression introduced by the patch for bug32798.
      
      The code in Item_func_group_concat::clear() relied on the 'distinct'
      variable to check if 'unique_filter' was initialized. That, however,
      is not always valid because Item_func_group_concat::setup() can do
      shortcuts in some cases w/o initializing 'unique_filter'.
      
      Fixed by checking the value of 'unique_filter' instead of 'distinct'
      before dereferencing.
      
      
      mysql-test/r/func_gconcat.result:
        Added test cases for bugs #35298 and #36024.
      mysql-test/t/func_gconcat.test:
        Added test cases for bugs #35298 and #36024.
      sql/item_sum.cc:
        Check if unique_filter != NULL before dereferencing it. Non-zero value
        of distinct does not always mean that unique_filter is initialized
        because Item_func_group_concat::setup() can do shortcuts is some cases
      1a68ec28
    • unknown's avatar
      Merge bk-internal:/home/bk/mysql-5.0 · cf2b2cc5
      unknown authored
      into  magare.gmz:/home/kgeorge/mysql/work/merge-5.0-bugteam
      
      
      cf2b2cc5
  2. 30 Apr, 2008 4 commits
    • unknown's avatar
      Merge mysql.com:/Users/davi/mysql/bugs/35788-5.1 · 368542d4
      unknown authored
      into  mysql.com:/Users/davi/mysql/mysql-5.1-bugteam
      
      
      368542d4
    • unknown's avatar
      Bug#35788 A few tests fail due to concurrent inserts · 57ae28ab
      unknown authored
      The problem is that since MyISAM's concurrent_insert is on by
      default some concurrent SELECT statements might not see changes
      made by INSERT statements in other connections, even if the
      INSERT statement has returned.
      
      The solution is to disable concurrent_insert so that INSERT
      statements returns after the data is actually visible to other
      statements.
      
      
      mysql-test/r/client_xml.result:
        Update test case result.
      mysql-test/r/federated.result:
        Update test case result.
      mysql-test/r/federated_bug_25714.result:
        Update test case result.
      mysql-test/t/client_xml.test:
        Disable concurrent insert and restore old value at the
        end of the test so it doesn't affect other tests.
      mysql-test/t/federated.test:
        Disable concurrent insert and restore old value at the
        end of the test so it doesn't affect other tests.
      mysql-test/t/federated_bug_25714.test:
        Disable concurrent insert and restore old value at the
        end of the test so it doesn't affect other tests.
      57ae28ab
    • unknown's avatar
      Merge bk-internal.mysql.com:/home/bk/mysql-5.1-bugteam · 06ddedd7
      unknown authored
      into  mysql.com:/Users/davi/mysql/mysql-5.1-bugteam
      
      
      06ddedd7
    • unknown's avatar
      Merge ramayana.hindu.god:/home/tsmith/m/bk/bugteam/51 · 86e6ea34
      unknown authored
      into  ramayana.hindu.god:/home/tsmith/m/bk/bugteam/mrg/51
      
      
      86e6ea34
  3. 29 Apr, 2008 2 commits
    • unknown's avatar
      Merge mysqldev@production:my/build-200803311521-5.1.24-rc/mysql-5.1-release · 26888186
      unknown authored
      into  ramayana.hindu.god:/home/tsmith/m/bk/bugteam/mrg/51
      
      
      mysql-test/suite/rpl/r/rpl_packet.result:
        Auto merged
      mysql-test/suite/rpl/t/rpl_packet.test:
        Auto merged
      mysql-test/suite/rpl/t/disabled.def:
        SCCS merged
      26888186
    • unknown's avatar
      Backport kostja's fix for Bug#32724 "innodb_mysql.test fails randomly". · f4bd5105
      unknown authored
      Enable back the disabled test case.
      
      
      mysql-test/include/mix1.inc:
        Fix a race condition in the test, causing a sporadic failure.
      mysql-test/r/innodb_mysql.result:
        Update test case result.
      mysql-test/t/disabled.def:
        Enable the test case innodb_mysql.
      sql/sql_parse.cc:
        Fix the random failure of innodb_mysql test. The failure is not
        random any more after a patch for Bug 12713 added asserts around
        handler commit.
      f4bd5105
  4. 28 Apr, 2008 10 commits
  5. 26 Apr, 2008 1 commit
    • unknown's avatar
      Bug#36032 - Test funcs_1.processlist_priv_ps fails on Windows · 92098d5d
      unknown authored
      Bug#36033 - Test funcs_1.processlist_val_ps fails on Windows
      Bug#36034 - Test parts.part_supported_sql_func_<eng> fails on Windows
      Bug#36036 - Test parts.partition_alter1_<eng> fails on Windows
      Bug#36037 - Test parts.partition_alter2_<eng> fails on Windows
      Bug#36038 - Test parts.partition_basic_<engine> failing on Windows
      Bug#36039 - Test parts.partition_engine_<eng> fails on Windows
      Bug#36040 - Test parts.partition_syntax_<eng> fails on Windows
      
      Changeset to fix multiple 5.1.24-rc build bugs on Windows platforms.
      
      Many of these bugs had the same root causes.
      
      
      mysql-test/mysql-test-run.pl:
        Bug#36034 - Test parts.partition_supported_sql_func_<eng> fails on Windows
        
        Kent suggested these changes to ensure all contents of mysql-test/std_data are copied to std_data_ln on Windows (no symlinks)
      mysql-test/suite/funcs_1/datadict/processlist_priv.inc:
        Bug#36032 - Test funcs_1.processlist_priv_ps fails on Windows
        
        Altered .inc file to include HOST column in the --replace_column clauses.
        
        Windows tests were failing due to use of localhost as localhost:<port> rather than just localhost.
      mysql-test/suite/funcs_1/datadict/processlist_val.inc:
        Bug#36033 - Test funcs_1.processlist_val_ps fails on Windows
        
        Altered .inc file to include HOST column in the --replace_column clauses.
        
        Windows tests were failing due to use of localhost as localhost:<port> rather than just localhost.
      mysql-test/suite/funcs_1/r/processlist_priv_no_prot.result:
        Bug#36032 - Test funcs_1.processlist_priv_ps fails on Windows
        
        Altered .inc file to include HOST column in the --replace_column clauses.
        
        Windows tests were failing due to use of localhost as localhost:<port> rather than just localhost.
        
        -reran .result file to account for change in --replace_column calls
      mysql-test/suite/funcs_1/r/processlist_priv_ps.result:
        Bug#36032 - Test funcs_1.processlist_priv_ps fails on Windows
        
        Altered .inc file to include HOST column in the --replace_column clauses.
        
        Windows tests were failing due to use of localhost as localhost:<port> rather than just localhost.
        
        -reran .result file to account for change in --replace_column calls
      mysql-test/suite/funcs_1/r/processlist_val_no_prot.result:
        Bug#36033 - Test funcs_1.processlist_val_ps fails on Windows
        
        Altered .inc file to include HOST column in the --replace_column clauses.
        
        Windows tests were failing due to use of localhost as localhost:<port> rather than just localhost.
        
        Reran .result file to account for changes to --replace_column clauses
      mysql-test/suite/funcs_1/r/processlist_val_ps.result:
        Bug#36033 - Test funcs_1.processlist_val_ps fails on Windows
        
        Altered .inc file to include HOST column in the --replace_column clauses.
        
        Windows tests were failing due to use of localhost as localhost:<port> rather than just localhost.
        
        Reran .result file to account for changes to --replace_column clauses
      mysql-test/suite/parts/inc/partition_layout_check1.inc:
        Bug#36036 - Test parts.partition_alter1_<eng> fails on Windows
        Bug#36037 - Test parts.partition_alter2_<eng> fails on Windows
        Bug#36038 - Test parts.partition_basic_<engine> failing on Windows
        Bug#36039 - Test parts.partition_engine_<eng> fails on Windows
        Bug#36040 - Test parts.partition_syntax_<eng> fails on Windows
        
        Added replace_result clause to account for Windows' use of '\r' vs. '\n'
        
        This difference was causing failures on Windows.
        
        Also, mleich added some changes to remove some -ls clauses that weren't necessary
      mysql-test/suite/parts/inc/partition_layout_check2.inc:
        Bug#36036 - Test parts.partition_alter1_<eng> fails on Windows
        Bug#36037 - Test parts.partition_alter2_<eng> fails on Windows
        Bug#36038 - Test parts.partition_basic_<engine> failing on Windows
        Bug#36039 - Test parts.partition_engine_<eng> fails on Windows
        Bug#36040 - Test parts.partition_syntax_<eng> fails on Windows
        
        Added replace_result clause to account for Windows' use of '\r' vs. '\n'
        
        This difference was causing failures on Windows.
        
        Also, mleich added some changes to remove some -ls clauses that weren't necessary
      mysql-test/suite/parts/r/partition_basic_symlink_myisam.result:
        changes by mleich to remove unneeded use of -ls clause in .result file 
        
        These clauses were removed from partition_layout_check1.inc and partition_layout_check2.inc
      92098d5d
  6. 25 Apr, 2008 1 commit
    • unknown's avatar
      Fixed bug#36006: Optimizer does table scan for SELECT COUNT(*) · 5b8cdbf4
      unknown authored
                       for ENGINE=MRG_MYISAM (should be optimized out).
      
      Before WL#3281 MERGE engine had the HA_NOT_EXACT_COUNT flag
      unset, and it worked with COUNT optimization as desired.
      After the removal of the HA_NOT_EXACT_COUNT flag neither
      HA_STATS_RECORDS_IS_EXACT (opposite to former HA_NOT_EXACT_COUNT
      flag) nor modern HA_HAS_RECORDS flag were not added to MERGE
      table flag mask.
      
      1. The HA_HAS_RECORDS table flag has been set.
      2. The ha_myisammrg::records method has been overridden to
         calculate total number of records in underlying tables.
      
      
      
      storage/myisammrg/myrg_records.c:
        Fixed bug#36006: Optimizer does table scan for select count(*).
        The myrg_records function has been added to calculate total number
        of records in underlying tables.
      include/myisammrg.h:
        Fixed bug#36006: Optimizer does table scan for select count(*).
        The myrg_records function declaration has been added.
      mysql-test/r/merge.result:
        Added test case for bug#36006.
      mysql-test/t/merge.test:
        Added test case for bug#36006.
      storage/myisammrg/CMakeLists.txt:
        Fixed bug#36006: Optimizer does table scan for select count(*).
        New myrg_records.c file has been added.
      storage/myisammrg/Makefile.am:
        Fixed bug#36006: Optimizer does table scan for select count(*).
        New myrg_records.c file has been added.
      storage/myisammrg/ha_myisammrg.cc:
        Fixed bug#36006: Optimizer does table scan for select count(*).
        The ha_myisammrg::records method has been overridden.
      storage/myisammrg/ha_myisammrg.h:
        Fixed bug#36006: Optimizer does table scan for select count(*).
        1. The HA_HAS_RECORDS table flag has been set.
        2. The ha_myisammrg::records method has been overridden.
      5b8cdbf4
  7. 24 Apr, 2008 3 commits
    • unknown's avatar
      Merge olga.mysql.com:/home/igor/mysql-5.1-bugteam · 2a1ba656
      unknown authored
      into  olga.mysql.com:/home/igor/dev-opt/mysql-5.1-bug35844
      
      
      sql/sql_select.cc:
        Auto merged
      2a1ba656
    • unknown's avatar
      Bug#36023: Incorrect handling of zero length caused an assertion to fail. · 89b866e7
      unknown authored
      When a zero length is provided to the my_decimal_length_to_precision
      function along with unsigned_flag set to false it returns a negative value.
      For queries that employs temporary tables may cause failed assertion or
      excessive memory consumption while temporary table creation.
      
      Now the my_decimal_length_to_precision and the my_decimal_precision_to_length
      functions take unsigned_flag into account only if the length/precision
      argument is non-zero.
      
      
      mysql-test/t/type_decimal.test:
        Added a test case for the bug#36023: Incorrect handling of zero length caused
         an assertion to fail.
      mysql-test/r/type_decimal.result:
        Added a test case for the bug#36023: Incorrect handling of zero length caused
         an assertion to fail.
      sql/my_decimal.h:
        Bug#36023: Incorrect handling of zero length caused an assertion to fail.
        Now the my_decimal_length_to_precision and the my_decimal_precision_to_length
        functions take unsigned_flag into account only if the length/precision
        argument is non-zero.
      89b866e7
    • unknown's avatar
      Enabled rpl: rpl_view, rpl_ndb_multi, rpl_log_pos · 9cb63bfb
      unknown authored
      and main: user_limits, concurrent_innodb, lowercase_table3, ctype_create 
      tests.
      
      
      mysql-test/suite/ndb/t/disabled.def:
        Removed test commented.
      mysql-test/suite/rpl/t/disabled.def:
        Enabled rpl_view, rpl_ndb_multi, rpl_log_pos tests.
      mysql-test/t/disabled.def:
        Enabled user_limits, concurrent_innodb, lowercase_table3, ctype_create tests.
      9cb63bfb
  8. 23 Apr, 2008 5 commits
    • unknown's avatar
      Raise version number after cloning 5.0.60 · b9efbe48
      unknown authored
      b9efbe48
    • unknown's avatar
      Merge host.loc:/home/uchum/work/5.0-bugteam · 304c4381
      unknown authored
      into  host.loc:/home/uchum/work/5.1-bugteam
      
      
      mysql-test/r/subselect.result:
        Merge with 5.0-bugteam (bug#36139).
      mysql-test/t/subselect.test:
        Merge with 5.0-bugteam (bug#36139).
      304c4381
    • unknown's avatar
      subselect.test, subselect.result: · 415112a9
      unknown authored
        Post-commit minor cleanup of testcase (bug#36139).
      
      
      mysql-test/r/subselect.result:
        Post-commit minor cleanup of testcase (bug#36139).
      mysql-test/t/subselect.test:
        Post-commit minor cleanup of testcase (bug#36139).
      415112a9
    • unknown's avatar
      Merge host.loc:/home/uchum/work/5.0-bugteam · e3ed2f88
      unknown authored
      into  host.loc:/home/uchum/work/5.1-bugteam
      
      
      mysql-test/r/ctype_gbk.result:
        Auto merged
      mysql-test/r/subselect3.result:
        Auto merged
      mysql-test/t/subselect3.test:
        Auto merged
      sql/sql_select.cc:
        Auto merged
      strings/ctype-big5.c:
        Merge with 5.0-bugteam (bug#35993).
      strings/ctype-gbk.c:
        Merge with 5.0-bugteam (bug#35993).
      e3ed2f88
    • unknown's avatar
      Fixed bug#35844. · 61f6c602
      unknown authored
      The function test_if_skip_sort_order ignored any covering index used for ref
      access of a table in a query with ORDER BY if this index was incompatible 
      with the ORDER BY list and there was another covering index compatible with
      this list. 
      As a result sub-optimal execution plans were chosen for some queries with
      ORDER BY clause. 
      
      
      mysql-test/r/distinct.result:
        Adjusted results after the fix for bug#35844.
      mysql-test/r/order_by.result:
        Added a test case for bug#35844.
      mysql-test/t/order_by.test:
        Added a test case for bug#35844.
      61f6c602
  9. 22 Apr, 2008 3 commits
    • unknown's avatar
      Merge host.loc:/home/uchum/work/5.0-bugteam-35993 · c2d1ac6e
      unknown authored
      into  host.loc:/home/uchum/work/5.0-bugteam
      
      
      c2d1ac6e
    • unknown's avatar
      Fixed bug#36005: server crashes inside NOT IN clause subquery with · 73f7de59
      unknown authored
                       impossible WHERE/HAVING clause
                       (subselect_single_select_engine::exec).
      
      Allocation and initialization of joined table list t1, t2... of
      subqueries like:
      
          NOT IN (SELECT ... FROM t1,t2,... WHERE 0)
      
      is optimized out, however server tries to traverse this list.
      
      
      mysql-test/r/subselect3.result:
        Added test case for bug#36005.
      mysql-test/t/subselect3.test:
        Added test case for bug#36005.
      sql/sql_select.cc:
        Fixed bug#36005.
        
        1. JOIN::prepare initializes JOIN::table counter (actually a size
           of the JOIN::join_tab array) and sets it to a number of joined tables.
        
        2. The make_join_statistics function (when called from JOIN::optimize)
           allocates and fills the JOIN::join_tab array.
           However, when optimizing subselect has impossible (definite false)
           WHERE or HAVING clause, optimizer skips call to make_join_statistics
           and leaves JOIN::join_tab == NULL.
        
        3. subselect_single_select_engine::exec does traversal of the JOIN::join_tab
           array and the server dies because array is not allocated but array
           counter is greater than 0.
        
        The JOIN::optimize method has been modified to reset the JOIN::table
        counter to 0 in cause of impossible WHERE/HAVING clause.
      73f7de59
    • unknown's avatar
      Fixed bug #35993: memory corruption and crash with multibyte conversion. · d8ebf276
      unknown authored
      Grouping or ordering of long values in not indexed BLOB/TEXT columns
      with GBK or BIG5 charsets crashes the server.
      
      MySQL server uses sorting (the filesort procedure) in the temporary
      table to evaluate the GROUP BY clause in case of lack of suitable index.
      That procedure takes into account only first @max_sort_length bytes
      (system variable, usually 1024) of TEXT/BLOB sorting key string.
      The my_strnxfrm_gbk and my_strnxfrm_big5 fill temporary keys
      with data of whole blob length instead of @max_sort_length bytes
      length. That buffer overrun has been fixed.
      
      
      mysql-test/r/ctype_gbk.result:
        Added test case for bug #35993.
      mysql-test/t/ctype_gbk.test:
        Added test case for bug #35993.
      strings/ctype-big5.c:
        Fixed bug #35993: memory corruption and crash with multibyte conversion.
        
        Buffer overrun has been fixed in the my_strnxfrm_big5 function.
      strings/ctype-gbk.c:
        Fixed bug #35993: memory corruption and crash with multibyte conversion.
        
        Buffer overrun has been fixed in the my_strnxfrm_gbk function.
      d8ebf276
  10. 21 Apr, 2008 2 commits
    • unknown's avatar
      Merge mysql.com:/home/psergey/mysql-5.0-bugteam · 6b4179ec
      unknown authored
      into  mysql.com:/home/psergey/mysql-5.1-bugteam
        BUG#36139: manual merge
      
      
      sql/item.cc:
        Auto merged
      mysql-test/r/subselect.result:
        BUG#36139: Manual merge
      mysql-test/t/subselect.test:
        BUG#36139: Manual merge
      6b4179ec
    • unknown's avatar
      BUG#36139 "float, zerofill, crash with subquery" · 1c1f0a62
      unknown authored
      - Make convert_zerofill_number_to_string() take into account that the 
        constant it is converting may evaluate to NULL.
      
      
      mysql-test/r/subselect.result:
        BUG#36139 "float, zerofill, crash with subquery"
        - Testcase
      mysql-test/t/subselect.test:
        BUG#36139 "float, zerofill, crash with subquery"
        - Testcase
      1c1f0a62
  11. 08 Apr, 2008 4 commits
    • unknown's avatar
      Merge mysqldev@production.mysql.com:my/mysql-5.1-release · 24d9bbad
      unknown authored
      into  mysql1000.(none):/home/andrei/MySQL/BARE/mysql-5.1-release
      
      
      24d9bbad
    • unknown's avatar
      Makefile.am: · 1d5f5887
      unknown authored
        Add ChangeLog if it exists
        - Removed separate 'normal+rowrepl' test run, not needed any longer
        - Removed separate 'rpl' test run, included in main test run already
        - Renamed some test "comments", to use similar naming style
        - Limited one of the Cluster test runs to 'ndb' and 'rpl_ndb' suites
        - Reordered test runs, to be aligned with Windows test runs
      mysql.spec.sh:
        - No longer including the "Example" storage engine
        - Added to configure "--without-ENGINE" if not to compile engine as plugin
      
      
      Docs/Makefile.am:
        Add ChangeLog if it exists
      Makefile.am:
        - Removed separate 'normal+rowrepl' test run, not needed any longer
        - Removed separate 'rpl' test run, included in main test run already
        - Renamed some test "comments", to use similar naming style
        - Limited one of the Cluster test runs to 'ndb' and 'rpl_ndb' suites
        - Reordered test runs, to be aligned with Windows test runs
      support-files/mysql.spec.sh:
        - No longer including the "Example" storage engine
        - Added to configure "--without-ENGINE" if not to compile engine as plugin
      1d5f5887
    • unknown's avatar
      Bug #35762 Failing CREATE-SELECT steels Table map of the following query · 73febb3b
      unknown authored
      Among two claimed artifacts the critical one is in that the Table map of 
      a query following the failing with a duplicate key error CREATE-SELECT is skipped from
      instantionating (and thus binlogging). That leads to sending a "chopped" group of the data
      row-events without the table map head to the slave. 
      The slave can not apply the only data row events.
      It's not easy to force the slave to react with an error in such a case (the second complaint
      on the bug report), because the lack of a table Rows_log_event::do_apply_event the data row event
      handler is a common situation which  normally designates the event has to be filtered out
      basing on the repliation do/ingore rules decision.
      
      Fixed: table map creating and binlogging is restored via deploying the standard cleanup call in
      select_create::abort().
      No error is reported if by chance the table map was not been binlogged.
      Leaving this out to resolve with considering how to combine the do/ingore rules with the situation
      when erronoulsy the Table_map is not written to binlog.
      
      
      mysql-test/suite/rpl/r/rpl_row_create_table.result:
        results changed
      mysql-test/suite/rpl/t/rpl_row_create_table.test:
        regression test for the bug
      sql/sql_insert.cc:
        adding resetting of thd binlogging state that was missed for the particular case of failing CREATE..SELECT
      73febb3b
    • unknown's avatar
      Fix for bug #35732: read-only blocks SELECT statements in InnoDB · 9fd89afc
      unknown authored
      Problem: SELECTs prohibited for a transactional SE in autocommit mode
      if read_only is set.
      
      Fix: allow them.
      
      
      mysql-test/r/read_only_innodb.result:
        Fix for bug #35732: read-only blocks SELECT statements in InnoDB
          - test result.
      mysql-test/t/read_only_innodb.test:
        Fix for bug #35732: read-only blocks SELECT statements in InnoDB
          - test case.
      sql/handler.cc:
        Fix for bug #35732: read-only blocks SELECT statements in InnoDB
          - in autocommit mode thd->transaction.all list is empty thus 
            is_real_trans set to TRUE for any SELECTs, so using it in the
            "read_only" check is insufficient.
            ha_check_and_coalesce_trx_read_only() changed to return number
            of engines with read-write changes. This value is used in the
            "read-only" check and checks for GLOBAL READ LOCK.
      sql/lock.cc:
        Fix for bug #35732: read-only blocks SELECT statements in InnoDB
          - added assert(protect_against_global_read_lock) before decreasing,
            in order to catch (uint) 0 - 1 situation due to wrong 
            wait_if_global_read_lock()/start_waiting_global_read_lock() call
            sequence.
      9fd89afc
  12. 04 Apr, 2008 1 commit
    • unknown's avatar
      Bug#35824: mysql_upgrade does not fix scheduler tables when upgrading from 5.1.23 to 5.1.24 · ccd31e9d
      unknown authored
      The problem is that when upgrading the event table, the sql_mode
      column was always being added instead of being updated to list new
      sql_mode values, causing upgrades of the event which already have
      a sql_mode column to not be updated to the new sql_mode values.
      
      The solution is to always add first a stub sql_mode column and
      subsequently update the column to the new sql_mode values.
      
      
      scripts/mysql_system_tables_fix.sql:
        Always add and update the sql_mode column of the event table.
      ccd31e9d
  13. 02 Apr, 2008 1 commit
    • unknown's avatar
      mysql.spec.sh: · e12312d8
      unknown authored
        If excluding Federated, make sure dynamic plugin is not built
      Makefile.am:
        Only run cluster test when compiled with cluster
      lib_sql.cc:
        Work around for Visual Studio 2003, that lacks vsnprintf() but has _vsnprintf()
      
      
      Makefile.am:
        Only run cluster test when compiled with cluster
      libmysqld/lib_sql.cc:
        Work around for Visual Studio 2003, that lacks vsnprintf() but has _vsnprintf()
      support-files/mysql.spec.sh:
        If excluding Federated, make sure dynamic plugin is not built
      e12312d8