1. 05 May, 2005 1 commit
    • unknown's avatar
      Approximative fixes for BUG#2610,2611,9100 i.e. WL#2146... · af12ff65
      unknown authored
        Approximative fixes for BUG#2610,2611,9100 i.e. WL#2146 binlogging/replication of routines (stored procs and functions).
        Approximative, because it's using our binlogging way (what we call "query"-level) and this is not as good as record-level binlog (5.1) would be. It imposes several
        limitations to routines, and has caveats (which I'll document, and for which the server will try to issue errors but that is not always possible).
        Reason I don't propagate caller info to the binlog as planned is that on master and slave
        users may be different; even with that some caveats would remain.
      
      
      mysql-test/mysql-test-run.sh:
        In the testsuite we know what we do, we are not creating nasty routines, and breaking binlog is ok except in rpl_sp.
      mysql-test/r/blackhole.result:
        Updating results now that 4.1 has been merged
      mysql-test/valgrind.supp:
            Some suppressions for Valgrind (useful on my machine Suse 9.1);
            this is just adding to the already existing suppressions of pthread and dl.
      sql/item_func.cc:
            Don't binlog the substatements when executing a function. If the function
            is declared to modify data and does not complete, warning "broken binlog".
            Note that SELECT myfunc() will not be binlogged even if myfunc() updates data (will be documented);
            but INSERT INTO t VALUES(myfunc()) will be binlogged (what decides is if the caller
            gets binlogged; the function changes nothing to binlogging).
      sql/log_event.cc:
            Just making functions which can be re-used when we binlog more strings
            in status_vars in Query_log_event (e.g. one day "user", "host").
      sql/log_event.h:
        comment
      sql/mysql_priv.h:
            --log-bin-trust-routine-creators
      sql/mysqld.cc:
            --log-bin-trust-routine-creators
      sql/set_var.cc:
            --log-bin-trust-routine-creators
      sql/share/errmsg.txt:
        error messages to warn about problems with routines and binlog
      sql/slave.cc:
            If in a routine, replication table inclusion/exclusion rules always answer "replicate!" (see comment in code).
      sql/sp.cc:
            If binlog is on: errors if one wants to create a non-deterministic update routine
            (repeatability problem - note that the test is not perfect for functions) or does not have SUPER (because routines can easily
            be made to destroy slave's data with just CREATE ROUTINE and EXECUTE priv on master).
            --log-bin-trust-routine-creators removes these errors.
            Binlogging of CREATE PROCEDURE|FUNCTION.
      sql/sql_acl.cc:
            No thd==0 in tables_ok().
      sql/sql_parse.cc:
            Binlogging of CALL (and not of the substatements of the SP).
            If SP returns error, we don't binlog it (see comment); we push warning in this case.
            Binlogging of ALTER|DROP PROCEDURE|FUNCTION with safety messages.
      af12ff65
  2. 04 May, 2005 11 commits
  3. 03 May, 2005 7 commits
    • unknown's avatar
      Merge book.sanja.is.com.ua:/Users/bell/mysql/bk/mysql-5.0 · 7b4374f6
      unknown authored
      into book.sanja.is.com.ua:/Users/bell/mysql/bk/work-test-5.0
      
      
      BitKeeper/etc/logging_ok:
        Logging to logging@openlogging.org accepted
      7b4374f6
    • unknown's avatar
      Manual merge of Bug#9096 · 3aa89efc
      unknown authored
      3aa89efc
    • unknown's avatar
      Merge mysql.com:/opt/local/work/mysql-4.1-root · b883aeba
      unknown authored
      into mysql.com:/opt/local/work/mysql-4.1-9096-fresh
      
      
      sql/item.h:
        Auto merged
      sql/item_func.cc:
        Auto merged
      b883aeba
    • unknown's avatar
      A fix and test case for Bug#9096 "select doesn't return all matched · 9fcda7fc
      unknown authored
      records if prepared statements is used".
      This fix changes equality evaluation method of basic constants from
      by-name to by-value, thus effectively enabling use of parameter markers
      in some optimizations (constants propagation, evaluation of possible
      keys for query).
      
      
      mysql-test/r/ps.result:
        Test results for the test case for Bug#9096
      mysql-test/t/ps.test:
        A short test case for Bug#9096 "select doesn't return all matched records if
         prepared statements is used". The is enough to reproduce the
        glitch in update_ref_and_keys causing the bug to occur.
      sql/item.cc:
        Implement by-value equality evaluation of basic constants.
        This is needed to work with Item_param values. Until now
        Item_param was compared with other items by its name, which is always "?".
        The bug at hand showed up when an integer
        constant was created from one parameter marker (with value 200887 and
         name "?") and then compared by-name with another parameter marker
        (with value 860 and name "?"). True returned by this comparison resulted
        in a wrong table access method used to evaluate the query.
        Implement Item_param methods needed to emulate "basic constant" mode at 
        full.
      sql/item.h:
        Change declaration of basic_const_item(): now it also widens its 
        argument from const Item * to Item * if the argument is a basic constant.
        Declare eq() for all basic constatns, as long as now they 
        are compared by value, not by name. Each constant needs its own
        comparison method.
        Declarations of Item_param methods needed to fully emulate 
        a basic constant when parameter value is set.
      sql/item_func.cc:
        Fix wrong casts.
      9fcda7fc
    • unknown's avatar
      Merge spetrunia@bk-internal.mysql.com:/home/bk/mysql-5.0 · 9724795f
      unknown authored
      into mysql.com:/home/psergey/mysql-5.0-test-valgrind
      
      
      9724795f
    • unknown's avatar
      Merge spetrunia@bk-internal.mysql.com:/home/bk/mysql-5.0 · 21d3d43c
      unknown authored
      into mysql.com:/home/psergey/mysql-5.0-test-valgrind
      
      
      sql/sql_select.cc:
        Auto merged
      21d3d43c
    • unknown's avatar
      ha_innodb.cc: · 40d0c3e6
      unknown authored
        Return a value from innobase_repl_report_sent_binlog()
      
      
      sql/ha_innodb.cc:
        Return a value from innobase_repl_report_sent_binlog()
      40d0c3e6
  4. 02 May, 2005 11 commits
  5. 01 May, 2005 3 commits
  6. 30 Apr, 2005 7 commits
    • unknown's avatar
      yassl changeset 2: · d3d56609
      unknown authored
        remove FIX_GCC_LINKING_PROBLEM and -DDEFINE_CXA_PURE_VIRTUAL
        replace echo in configure.in with AC_MSG_WARN/AC_MSG_ERROR
        don't set -DUSE_MYSYS_NEW for gcc 2.95
        set $USE_MYSYS_NEW even if CXX is g++
        yassl bugfixes
        instantiate all yassl templates explicitly
      
      
      client/Makefile.am:
        mysqlbinlog as a c++ program may need my_new.cc (if CXX=gcc)
        no FIX_GCC_LINKING_PROBLEM anymore - it's in my_new.cc
      client/mysqladmin.cc:
        no FIX_GCC_LINKING_PROBLEM anymore - it's in my_new.cc
      client/mysqlbinlog.cc:
        no FIX_GCC_LINKING_PROBLEM anymore - it's in my_new.cc
      configure.in:
        echo should be AC_MSG_WARN or AC_MSG_ERROR
        don't set -DUSE_MYSYS_NEW for gcc 2.95 (to restore old behaviour)
        set $USE_MYSYS_NEW even if CXX is g++ (for yassl, as it can be linked with C programs)
        remove -DDEFINE_CXA_PURE_VIRTUAL - -DUSE_MYSYS_NEW is enough
      extra/yassl/mySTL/list.hpp:
        bugfixes
      extra/yassl/src/Makefile.am:
        no need to mess with CXXFLAGS anymore. Instantiate all templates explicitly
      extra/yassl/src/crypto_wrapper.cpp:
        instantiate templates explicitly
      extra/yassl/src/yassl_imp.cpp:
        instantiate templates explicitly
      extra/yassl/src/yassl_int.cpp:
        instantiate templates explicitly
      extra/yassl/taocrypt/include/runtime.hpp:
        use -DUSE_MYSYS_NEW not -DDEFINE_CXA_PURE_VIRTUAL
        assert in __cxa_pure_virtual
        remove dummy (and thus dangerous) __cxa_guard_acquire/__cxa_guard_release
      extra/yassl/taocrypt/src/Makefile.am:
        no need to mess with CXXFLAGS anymore. Instantiate all templates explicitly
      extra/yassl/taocrypt/src/integer.cpp:
        instantiate templates explicitly
      extra/yassl/taocrypt/src/rsa.cpp:
        instantiate templates explicitly
      include/my_global.h:
        no FIX_GCC_LINKING_PROBLEM anymore - it's in my_new.cc
      mysys/my_new.cc:
        no FIX_GCC_LINKING_PROBLEM anymore - it's in my_new.cc
      server-tools/instance-manager/command.cc:
        no FIX_GCC_LINKING_PROBLEM anymore - it's in my_new.cc
      sql/ha_blackhole.cc:
        typo fixed
      sql/ha_innodb.cc:
        warning fixed
      sql/item_func.cc:
        use LL()
      sql/mysqld.cc:
        no FIX_GCC_LINKING_PROBLEM anymore - it's in my_new.cc
      d3d56609
    • unknown's avatar
      Merge sanja.is.com.ua:/home/bell/mysql/bk/mysql-5.0 · 371b26e1
      unknown authored
      into sanja.is.com.ua:/home/bell/mysql/bk/work-test-5.0
      
      
      sql/item.h:
        Auto merged
      371b26e1
    • unknown's avatar
      postreview changes · d45f95f0
      unknown authored
      
      sql/item.cc:
        changed parameters order
      sql/item.h:
        changed parameters order
      sql/sql_base.cc:
        fixed comment
        changed parameters order
      d45f95f0
    • unknown's avatar
      After merge fixes · d1d474c8
      unknown authored
      
      Makefile.am:
        Added target test-force
      mysql-test/r/cast.result:
        Updated results after merge
      d1d474c8
    • unknown's avatar
      Merge sanja.is.com.ua:/home/bell/mysql/bk/mysql-5.0 · b3b97e05
      unknown authored
      into sanja.is.com.ua:/home/bell/mysql/bk/work-test-5.0
      
      
      b3b97e05
    • unknown's avatar
      Merge with 4.1 · a6acc446
      unknown authored
      
      BitKeeper/etc/logging_ok:
        auto-union
      configure.in:
        Auto merged
      include/config-win.h:
        Auto merged
      include/my_global.h:
        Auto merged
      mysql-test/r/drop.result:
        Auto merged
      mysys/default.c:
        Auto merged
      mysys/mf_keycache.c:
        Auto merged
      sql/field.h:
        Auto merged
      sql/item.h:
        Auto merged
      sql/item_func.cc:
        Auto merged
      sql/item_func.h:
        Auto merged
      sql/mysqld.cc:
        Auto merged
      BitKeeper/deleted/.del-errmsg.txt~f96b7055cac394e:
        Auto merged
      mysql-test/r/cast.result:
        Merge
      mysql-test/t/cast.test:
        Merge
      sql/sql_insert.cc:
        Merge
      sql/sql_select.cc:
        Merge
      a6acc446
    • unknown's avatar
      Merge bk-internal.mysql.com:/home/bk/mysql-5.0 · e64d221e
      unknown authored
      into mysql.com:/home/my/mysql-5.0
      
      
      tests/mysql_client_test.c:
        Auto merged
      e64d221e