1. 09 Mar, 2010 1 commit
    • unknown's avatar
      A number of after-merge fixes following merge of MySQL 5.1.44 into MariaDB. · 848df231
      unknown authored
      Bug#46949: memory leak with failed alter table to create partitions based on extract()
      
      Bug#51830: Incorrect partition pruning on range partition (regression)
      
      Fixed valgrind failure in select_describe(), read of uninitialized 
        Item_subselect::eliminated.
      
      PBXT test file updates to reflect changes done in MySQL.
      
      mysql-test/suite/pbxt/r/partition_error.result:
        Result file update following MySQL 5.1.44 changes.
      mysql-test/suite/pbxt/r/partition_pruning.result:
        Result file update following MySQL 5.1.44 changes.
      mysql-test/suite/pbxt/t/partition_error.test:
        Test file update following MySQL 5.1.44 changes.
      sql/item_subselect.cc:
          Fixed valgrind failure in select_describe(), read of uninitialized 
          Item_subselect::eliminated: 
          - it turns out we can call select_describe() without having fixed 
            subquery items for child subselects. These are not the kind of subqueries
            that we could eliminate, so the fix is to ensure that 
            item_subselect->eliminated==FALSE even before fix_fields is called.
            Also added code to reset item_subselect->eliminated back to FALSE in
            Item::reset() call.
      sql/item_subselect.h:
          Fixed valgrind failure in select_describe(), read of uninitialized 
          Item_subselect::eliminated: 
          - it turns out we can call select_describe() without having fixed 
            subquery items for child subselects. These are not the kind of subqueries
            that we could eliminate, so the fix is to ensure that 
            item_subselect->eliminated==FALSE even before fix_fields is called.
            Also added code to reset item_subselect->eliminated back to FALSE in
            Item::reset() call.
      sql/sql_partition.cc:
        Fix Bug#51830: Revert part of the patch for Bug#49742, which caused the regression.
      sql/table.cc:
        Fix Bug#46949: memory leak in failed ALTER TABLE with partitioning.
      848df231
  2. 04 Mar, 2010 1 commit
  3. 23 Feb, 2010 2 commits
  4. 19 Feb, 2010 1 commit
  5. 18 Feb, 2010 1 commit
    • Sergey Petrunya's avatar
      LPBUG#523593: Running RQG optimizer_no_subquery crashes MariaDB · e2322dc8
      Sergey Petrunya authored
      - When analying multiple equalities, take into account that they 
        may not have a single table field that belongs to one of the tables
        that we're trying to eliminate (and they are not useful for table
        elimination in that case)
      
      mysql-test/r/table_elim.result:
        LPBUG#523593: Running RQG optimizer_no_subquery crashes MariaDB
        - Testcase
      mysql-test/t/table_elim.test:
        LPBUG#523593: Running RQG optimizer_no_subquery crashes MariaDB
        - Testcase
      e2322dc8
  6. 17 Feb, 2010 2 commits
  7. 12 Feb, 2010 1 commit
  8. 11 Feb, 2010 1 commit
  9. 10 Feb, 2010 2 commits
    • Michael Widenius's avatar
      Added option --temporary-tables to test speed of temporary tables · d01b9d0e
      Michael Widenius authored
      mysql-test/suite/parts/t/partition_repair_myisam-master.opt:
        Added missing file from last push
      sql-bench/bench-init.pl.sh:
        Added options:
        --temporary-tables to test speed of temporary tables
      sql-bench/server-cfg.sh:
        Added limit for number of temporary tables one can create
      sql-bench/test-connect.sh:
        Skip test that doesn't work with temporary tables.
      sql-bench/test-create.sh:
        Added limit for number of temporary tables one can create
      d01b9d0e
    • Michael Widenius's avatar
      When one does a drop table, the indexes are not flushed to disk before drop... · c7b97d14
      Michael Widenius authored
      When one does a drop table, the indexes are not flushed to disk before drop anymore (with MyISAM/Maria)
      myisam-recover options changed from OFF to 'DEFAULT' to get less change of data loss when using MyISAM.
      (The disadvantage is that changed MyISAM tables will be checked at access time; Use --myisam-recover=OFF for old behavior)
      Don't call extra(HA_EXTRA_FORCE_REOPEN) in ALTER TABLE if table is locked as this will mark table as crashed!
      Added assert to detect if we accidently would use MyISAM versioning in MySQL
      
      include/my_base.h:
        Mark NOT_USED as USED, as we now use this as a flag to not call extra()
      mysql-test/mysql-test-run.pl:
        Don't write all options when there is something wrong with the arguments
      mysql-test/r/sp-destruct.result:
        Add missing flush of mysql.proc (as the test copied live tables)
      mysql-test/r/variables.result:
        myisam-recover options changed to 'default'
      mysql-test/r/view.result:
        Don't show create time in result
      mysql-test/suite/maria/t/maria-recovery2-master.opt:
        Don't run test with myisam-recover (as this produces extra warnings during simulated death)
      mysql-test/t/sp-destruct.test:
        Add missing flush of mysql.proc (as the test copied live tables)
      mysql-test/t/view.test:
        Don't show create time in result
      sql/lock.cc:
        Added marker if table was deleted to argument list
      sql/mysql_priv.h:
        Added marker if table was deleted to argument list
      sql/mysqld.cc:
        myisam-recover options changed from OFF to 'DEFAULT' to get less change of data loss when using MyISAM
        Allow one to specify OFF as argument to myisam-recover (was default before but one couldn't specify it)
      sql/sql_base.cc:
        Mark if table is going to be deleted
      sql/sql_delete.cc:
        Mark if table is going to be deleted
      sql/sql_table.cc:
        Mark if table is going to be deleted
        Don't call extra(HA_EXTRA_FORCE_REOPEN) in ALTER TABLE if table is locked as this will mark table as crashed!
      sql/table.cc:
        Signal to handler if table is getting deleted as part of getting droped from table cache.
      sql/table.h:
        Added marker if table is going to be deleted.
      storage/maria/ha_maria.cc:
        Don't search for transaction handler if file is not transactional or outside of transaction
        (Fixed possible core dump)
      storage/maria/ma_blockrec.c:
        Don't write changed information if table is going to be deleted.
      storage/maria/ma_close.c:
        Don't write changed information if table is going to be deleted.
      storage/maria/ma_extra.c:
        Mark tables that are deleted as crased, to ensure good behavior on restart if we suddenly crash.
      storage/maria/ma_locking.c:
        Cleanup
      storage/maria/ma_recovery.c:
        We need trnman to be inited during redo phase (to be able to open tables checked with maria_chk)
      storage/maria/maria_def.h:
        Added marker if table is going to be deleted.
      storage/myisam/mi_close.c:
        Don't write changed information if table is going to be deleted.
      storage/myisam/mi_extra.c:
        Mark tables that are deleted as crased, to ensure good behavior on restart if we suddenly crash.
      storage/myisam/mi_open.c:
        Added assert to detect if we accidently would use MyISAM versioning in MySQL
      storage/myisam/myisamdef.h:
        Added marker if table is going to be deleted.
      c7b97d14
  10. 09 Feb, 2010 1 commit
  11. 04 Feb, 2010 2 commits
  12. 03 Feb, 2010 5 commits
  13. 02 Feb, 2010 2 commits
    • Kent Boortz's avatar
      Changes to be able to create source TAR packages with longer · 5458c143
      Kent Boortz authored
      path names than 99 characters, using the USTAR format of the
      resulting source TAR.
      
      To be able to specify the use of USTAR when creating the source
      TAR, we needed both to update the GNU autotools version requirements
      slightly, and update the initiation of the tools to use more
      modern constructs.
      5458c143
    • Luis Soares's avatar
      BUG#47639: The rpl_binlog_corruption test fails on Windows · 19062099
      Luis Soares authored
      The test case rpl_binlog_corruption fails on windows because when
      adding a line to the binary log index file it gets terminated
      with a CR+LF (which btw, is the normal case in windows, but not on
      Unixes - LF). This causes mismatch between the relay log names,
      causing mysqld to report that it cannot find the log file.
      
      We fix this by creating the instrumented index file through
      mysql, ie, using SELECT ... INTO DUMPFILE ..., as opposed on
      relying on ultimatly OS commands like: -- echo "..." >
      index. These changes go into the file and make the procedure
      platform independent:
      
        include/setup_fake_relay_log.inc
      
      Side note: when using SELECT ... INTO DUMPFILE ..., one needs to
      check if mysqld is running with secure_file_priv. If it is, we do
      it in two steps: 1. create the file on the allowed location;
      2. move it to the datadir. If it is not, then we just create the
      file directly on the datadir (so previous step 2. is not needed).
      19062099
  14. 01 Feb, 2010 3 commits
  15. 31 Jan, 2010 2 commits
  16. 30 Jan, 2010 3 commits
    • unknown's avatar
      Bug #48321 CURRENT_USER() incorrectly replicated for DROP/RENAME USER; · 35eb14cd
      unknown authored
                  REVOKE/GRANT; ALTER EVENT.
      
      The following statements support the CURRENT_USER() where a user is needed.
        DROP USER 
        RENAME USER CURRENT_USER() ...
        GRANT ... TO CURRENT_USER()
        REVOKE ... FROM CURRENT_USER()
        ALTER DEFINER = CURRENT_USER() EVENT
      but, When these statements are binlogged, CURRENT_USER() just is binlogged
      as 'CURRENT_USER()', it is not expanded to the real user name. When slave 
      executes the log event, 'CURRENT_USER()' is expand to the user of slave 
      SQL thread, but SQL thread's user name always NULL. This breaks the replication.
      
      After this patch, All above statements are rewritten when they are binlogged.
      The CURRENT_USER() is expanded to the real user's name and host.
      35eb14cd
    • Sergei Golubchik's avatar
      now we force at least libevent-1.4 · 413c348f
      Sergei Golubchik authored
      413c348f
    • unknown's avatar
      16fbc70e
  17. 29 Jan, 2010 8 commits
    • Sergei Golubchik's avatar
      hide nm warnings in configure · 90dc23e0
      Sergei Golubchik authored
      90dc23e0
    • Sergei Golubchik's avatar
      Support building with system libevent · ed729b10
      Sergei Golubchik authored
      ed729b10
    • Michael Widenius's avatar
      Patch set contributed by Alex Budovski (MCA) · 33fec956
      Michael Widenius authored
      Fix for Bug#31173: mysqlslap.exe crashes if called without any parameters
      
      .bzrignore:
        Fixed .bzrignore rules. Many were simply not ignoring what they were meant to.
      client/mysqlslap.c:
        Fixed bug for Bug#31173: mysqlslap.exe crashes if called without any parameters
        The original patch could cause memory leaks and odd problems depending on how connection was made.
        This code ensures that all mysql_options() are set for each mysql_real_connect().
        (This patch by Monty)
      mysys/my_thr_init.c:
        Fixed multiply-initialized critical section on Windows, due to code incorrectly
        checking the wrong field in an attempt to prevent multiple-initialization.
      sql-common/client.c:
        Don't use shared memory if it's not set (for example after failed mysql_real_connect).
        Ensure that mysql_close() resets all resources so that it's safe to call it twice.
        (Patch by monty, related to Bug#31173: mysqlslap.exe crashes if called without any parameters)
      sql/CMakeLists.txt:
         Added page fault counters for SHOW PROFILE on Windows.
      sql/mysqld.cc:
        Fixed attempt to set a NULL event. The code now only sets the event if appropriate (i.e. shared memory is being used)
      sql/sql_profile.cc:
        Added page fault counters for SHOW PROFILE on Windows.
      sql/sql_profile.h:
        Added page fault counters for SHOW PROFILE on Windows.
      sql/udf_example.def:
        Some cleanup functions were not exported from udf_example.dll, causing them to
        never be executed, and as a result multiple-initialization of kernel objects
        occurred and resources were not being freed correctly.
      storage/maria/ma_close.c:
        Condition variable share->key_del_cond was never being destroyed, while its
        containing heap block was being freed in maria_close(), leaking kernel
        resources.
      33fec956
    • Georgi Kodinov's avatar
      merge · a28fd124
      Georgi Kodinov authored
      a28fd124
    • Georgi Kodinov's avatar
      Bug #50642 : ssl certs in test suite are expiring soon. · a9e65862
      Georgi Kodinov authored
      Updated the certs to expire on 2015. 
      Made sure they work with both yassl and openssl.
      a9e65862
    • Michael Widenius's avatar
      Auto merge · 0df091f5
      Michael Widenius authored
      0df091f5
    • Michael Widenius's avatar
      Changed version number from RC to stable · c278d84b
      Michael Widenius authored
      Fixed bug in Yassle to get correct error messages in case of errors
      Provide better error messages in case of ssl connect failure
      Updated out-of-date ssl certificates to fix failing mysql-test-system (certificates now active for 10 years)
      Fixed bug in query_cache that could cause asserts and hangs in DEBUG builds.
      Fixed bug where one connection did not see changes done by another connection.
      
      configure.in:
        Changed version number from RC to stable
      extra/yassl/src/yassl_error.cpp:
        Fixed bug in Yassle to get correct error messages in case of errors
        - 'error' is an enum that hold more error numbers than the enum was defined for
      include/violite.h:
        Added error output string for sslaccept() and sslconnect() to get reason for connect failure
      mysql-test/mysql-test-run.pl:
        Write failed test cases if mysql-test-run fails because of too many errors
      mysql-test/r/grant.result:
        Update results to reflect new certificates
      mysql-test/r/openssl_1.result:
        Update results to reflect new certificates
      mysql-test/std_data/cacert.pem:
        Update ssl certificate
      mysql-test/std_data/client-cert.pem:
        Update ssl certificate
      mysql-test/std_data/client-key.pem:
        Update ssl certificate
      mysql-test/std_data/server-cert.pem:
        Update ssl certificate
      mysql-test/std_data/server-key.pem:
        Update ssl certificate
      mysql-test/t/grant.test:
        Update test to reflect new certificates
      mysql-test/t/openssl_1.test:
        Update test to reflect new certificates
      mysql-test/t/query_cache_debug.test:
        Remove 'big_test' as test is now fast
      sql-common/client.c:
        Give a better error message if ssl connect fails
      sql/net_serv.cc:
        Fixed compiler warnings
      sql/slave.cc:
        Give a better error message in logs if ssl connect fails
      sql/sql_cache.cc:
        debug_wait_for_kill() now removes the set watch variable after kill signal
        This is needed as invalidate_table() may be called twice for one query.
        Ensure that net->query_cache_query is reset after query. This fixes assert in
        query_cache_end_of_result() if query_cache_query holds results from previous query.
        Removed DBUG_ASSERT(0), as this code can be run by query_cache_debug.test
      sql/sql_connect.cc:
        Give a better error message if ssl connect fails
      sql/sql_parse.cc:
        Fixed bug where one connection did not see changes done by another connection.
        For statements that changes tables, close_thread_tables() MUST be called before
        sending OK as a table handler may not make the changes available for other connections
        before unlock_tables().
      vio/viossl.c:
        Give a better error message if ssl connect fails
      c278d84b
    • Ramil Kalimullin's avatar
      Fix for bug#49897: crash in ptr_compare when char(0) NOT NULL · 57f9915f
      Ramil Kalimullin authored
      column is used for ORDER BY
      
      Problem: filesort isn't meant for null length sort data
      (e.g. char(0)), that leads to a server crash.
      
      Fix: disregard sort order if sort data record length is 0 (nothing
      to sort).
      
      
      mysql-test/r/select.result:
        Fix for bug#49897: crash in ptr_compare when char(0) NOT NULL 
        column is used for ORDER BY
          - test result.
      mysql-test/t/select.test:
        Fix for bug#49897: crash in ptr_compare when char(0) NOT NULL 
        column is used for ORDER BY
          - test case.
      sql/filesort.cc:
        Fix for bug#49897: crash in ptr_compare when char(0) NOT NULL 
        column is used for ORDER BY
          - assert added as filesort cannot handle null length sort data.
      sql/sql_select.cc:
        Fix for bug#49897: crash in ptr_compare when char(0) NOT NULL 
        column is used for ORDER BY
          - don't sort null length data e.g. in case of ORDER BY CHAR(0).
      57f9915f
  18. 28 Jan, 2010 2 commits
    • unknown's avatar
      a4ecf50d
    • Michael Widenius's avatar
      Fixed compiler warnings & failing test cases · b80169ab
      Michael Widenius authored
      When compiling with debug, don't clear buffer in 'net_clear()'
      - This allows us to easier find bugs in the protocol and also get repeatable test failures in test cases where someone forgot to do --reap
      
      client/mysqltest.cc:
        Fixed compiler warning
      mysql-test/t/partition_innodb_semi_consistent.test:
        Added missing --reap (fixes random failure)
      sql/net_serv.cc:
        When compiling with debug, don't clear buffer in 'net_clear()'
        - This allows us to easier find bugs in the protocol and also get repeatable test failures in test cases where someone forgot to do --reap
      storage/myisam/ft_boolean_search.c:
        Fixed compiler warnings
      storage/myisam/ft_parser.c:
        Fixed compiler warnings
      storage/myisam/ft_stopwords.c:
        Fixed compiler warnings
      support-files/compiler_warnings.supp:
        Added a lot of new suppression of not relevant warnings and warnings in systems we are not in charge of
      unittest/mysys/waiting_threads-t.c:
        Fixed compiler warnings
      b80169ab