Permalink
Commits on Jun 13, 2015
  1. @inaam-rana

    Twitter MySQL-5.5.44.t20

    inaam-rana committed Jun 13, 2015
Commits on Jun 12, 2015
  1. @inaam-rana

    Fix failing tests after merge

    inaam-rana committed Jun 12, 2015
  2. @inaam-rana

    Merge MySQl-5.5.44 into t20-dev

    Conflicts:
    	VERSION
    inaam-rana committed Jun 12, 2015
  3. @inaam-rana
  4. @inaam-rana

    Bug #18592390 QUERY TO I_S.TABLES AND I_S.COLUMNS LEADS TO HUGE MEMOR…

    …Y USAGE
    
    As part of the fix find_files() prototype has been modified and
    mysql-cluster uses find_files() function. Hence modified find_files() call
    in ha_ndbcluster_binlog.cc file to make mysql-cluster build successful.
    V S Murthy Sidagam committed with inaam-rana Apr 29, 2015
  5. @inaam-rana

    Merge branch 'mysql-5.1' into mysql-5.5

    Arun Kuruvila committed with inaam-rana Apr 28, 2015
  6. @inaam-rana

    Bug #20181776 :- ACCESS CONTROL DOESN'T MATCH MOST SPECIFIC

                     HOST WHEN IT CONTAINS WILDCARD
    
    Description :- Incorrect access privileges are provided to a
    user due to wrong sorting of users when wildcard characters
    is present in the hostname.
    
    Analysis :- Function "get_sorts()" is used to sort the
    strings of user name, hostname, database name. It is used
    to arrange the users in the access privilege matching order.
    When a user connects, it checks in the sorted user access
    privilege list and finds a corresponding matching entry for
    the user. Algorithm used in "get_sort()" sorts the strings
    inappropriately. As a result, when a user connects to the
    server, it is mapped to incorrect user access privileges.
    Algorithm used in "get_sort()" counts the number of
    characters before the first occurence of any one of the
    wildcard characters (single-wildcard character '_' or
    multi-wildcard character '%') and sorts in that order.
    As a result of inconnect sorting it treats hostname "%" and
    "%.mysql.com" as equally-specific values and therefore
    the order is indeterminate.
    
    Fix:- The "get_sort()" algorithm has been modified to treat
    "%" seperately. Now "get_sort()" returns a number which, if
    sorted in descending order, puts strings in the following
    order:-
    * strings with no wildcards
    * strings containg wildcards and non-wildcard characters
    * single muilt-wildcard character('%')
    * empty string.
    Arun Kuruvila committed with inaam-rana Apr 28, 2015
  7. @inaam-rana

    Bug #18592390 QUERY TO I_S.TABLES AND I_S.COLUMNS LEADS TO HUGE MEMOR…

    …Y USAGE
    
    Description: On an example MySQL instance with 28k empty
    InnoDB tables, a specific query to information_schema.tables
    and information_schema.columns leads to memory consumption
    over 38GB RSS.
    
    Analysis: In get_all_tables() call, we fill the I_S tables
    from frm files and storage engine. As part of that process
    we call make_table_name_list() and allocate memory for all
    the 28k frm file names in the THD mem_root through
    make_lex_string_root(). Since it has been called around
    28k * 28k times there is a huge memory getting hogged in
    THD mem_root. This causes the RSS to grow to 38GB.
    
    Fix: As part of fix we are creating a temporary mem_root
    in get_all_tables and passing it to fill_fiels(). There we
    replace the THD mem_root with the temporary mem_root and
    allocates the file names in temporary mem_root and frees
    it once we fill the I_S tables in get_all_tables and
    re-assign the original mem_root back to THD mem_root.
    
    Note: Checked the massif out put with the fix now the memory growth is just around 580MB at peak.
    V S Murthy Sidagam committed with inaam-rana Apr 27, 2015
  8. @inaam-rana

    Merge branch 'mysql-5.1' into mysql-5.5

    V S Murthy Sidagam committed with inaam-rana Apr 27, 2015
  9. @inaam-rana

    Bug #20683237 BACKPORT 19817663 TO 5.1 and 5.5

    Restrict when user table hashes can be viewed. Require SUPER privileges.
    
    Conflicts:
    	sql/sql_acl.cc
    V S Murthy Sidagam committed with inaam-rana Apr 27, 2015
  10. @inaam-rana

    Merge branch 'mysql-5.1' into mysql-5.5

    Arun Kuruvila committed with inaam-rana Apr 24, 2015
  11. @inaam-rana

    Bug#20318154 : NEGATIVE ARRAY INDEX WRITE V2

    Description:- There is a possibility of negative array index
    write associated with the function "terminal_writec()". This
    is due to the assumption that there is a possibility of
    getting -1 return value from the function call
    "ct_visual_char()".
    
    Analysis:- The function "terminal_writec()" is called only
    from "em_delete_or_list()" and "vi_list_or_eof()" and both
    these functions deal with the "^D" (ctrl+D) signal. So the
    "size_t len" and "Char c" passed to "ct_visual_char()" (when
    called from "terminal_writec()") is always 8 (macro
    VISUAL_WIDTH_MAX is passed whose value is 8) and 4 (ASCII
    value for "^D"/"ctrl+D") respectively.
    Since the value of "c" is 4, "ct_chr_class()" returns -1
    (macro CHTYPE_ASCIICTL is associated with -1 value). And
    since value of "len" is 8, "ct_visual_char()" will always
    return 2 when it is called from "terminal_writec()".
    So there is no possible case so that we encounter a negative
    array index write in "terminal_writec()". But since there is
    a rare posibility of using "terminal_writec()" in future
    enhancements, it is good handle the error case as well.
    
    Fix:- A condition is added in "terminal_writec()" to check
    whether "ct_visual_char()" is returning -1 or not. If the
    return value is -1, then value 0 is returned to its calling
    function "em_delete_or_list()" or "vi_list_or_eof()", which
    in turn will return CC_ERROR.
    
    NOTE:- No testcase is added since currently there is no
    possible scenario to encounter this error case.
    Arun Kuruvila committed with inaam-rana Apr 24, 2015
  12. @inaam-rana

    Bug #16861371 SSL_OP_NO_COMPRESSION NOT DEFINED

    post push change: fixing valgrind failures
    V S Murthy Sidagam committed with inaam-rana Apr 21, 2015
  13. @inaam-rana

    Bug #16861371 SSL_OP_NO_COMPRESSION NOT DEFINED

    post push change: missed the change in mysql-5.5
    (Fixing compiler warning/error)
    V S Murthy Sidagam committed with inaam-rana Apr 20, 2015
  14. @inaam-rana

    Bug #16861371 SSL_OP_NO_COMPRESSION NOT DEFINED

    Description:
    Can't build mysql-5.5 latest source with openssl 0.9.8e.
    
    Analysis:
    Older OpenSSL versions(prior to openssl 1.0) doesn't have 'SSL_OP_NO_COMPRESSION' defined.
    Hence the build is failing with SSL_OP_NO_COMPRESSION undeclared.
    
    Fix:
    Added a conditonal compilation for 'SSL_OP_NO_COMPRESSION'.
    i.e if 'SSL_OP_NO_COMPRESSION' is defined then have the SSL_set_options call for OpenSSL 1.0 versions.
    Have sk_SSL_COMP_zero() call for OpenSSL 0.9.8 version
    
    Conflicts:
    	vio/viossl.c
    V S Murthy Sidagam committed with inaam-rana Apr 20, 2015
  15. @inaam-rana

    Bug#20814396 PB2 IS SECRET ABOUT WHAT UNIT TESTS IT RUN

    One can not see in PB2 test logs which unit tests have been run
    and passed.
    
    This patchs adds an option --unit-tests-report to mtr which
    include the ctest report in mtr output.  It will also turn on unit
    testing if not explicitly turned off with --no-unit-tests or
    equivalent.
    
    In manual runs one can always look in the ctest.log file in mtr
    vardir.
    
    --unit-tests are replaced with --unit-tests-report in files under
    mysql-test/collections/ to activate report in PB2.
    Mauritz Sundell committed with inaam-rana Apr 17, 2015
  16. @inaam-rana

    Bug#20872436 MAKE DIST BY MISTAKE COPIES FILES WITH VARIABLE EXPANSION

    Fix typo: s/COPY_ONLY/COPYONLY/g
    
    (cherry picked from commit 034046b4dfe3e6f83e0cf73310884334e0507f06)
    
    Conflicts:
    	cmake/make_dist.cmake.in
    Tor Didriksen committed with inaam-rana Apr 15, 2015
  17. @bjornmu @inaam-rana

    Empty version change upmerge

    bjornmu committed with inaam-rana Apr 13, 2015
  18. @bjornmu @inaam-rana

    Raised version after tagging 5.1.74 (some commits skipped)

    Conflicts:
    	configure.in
    bjornmu committed with inaam-rana Apr 13, 2015
  19. @inaam-rana

    Merge branch 'mysql-5.1' into mysql-5.5

    Sreeharsha Ramanavarapu committed with inaam-rana Apr 10, 2015
  20. @inaam-rana

    Bug# 19573096: LOADING CORRUPTED GEOMETRY DATA INTO A

                   MYISAM TABLE CAUSES THE SERVER TO CRASH
    
    Backport to mysql-5.1
    
    Conflicts:
    	storage/myisam/rt_split.c
    Sreeharsha Ramanavarapu committed with inaam-rana Apr 10, 2015
  21. @inaam-rana

    Bug#20816223 test fix.

    Embedded server does not support restarting and needs to skip the test.
    Marko Mäkelä committed with inaam-rana Apr 9, 2015
  22. @inaam-rana

    Bug#20816223 InnoDB crash on shutdown

    if XA PREPARE transactions hold explicit locks.
    
    innobase_shutdown_for_mysql(): Call trx_sys_close() before lock_sys_close()
    (and dict_close()) so that trx_free_prepared() will see all locks intact.
    
    RB: 8561
    Reviewed-by: Vasil Dimov <vasil.dimov@oracle.com>
    Marko Mäkelä committed with inaam-rana Apr 9, 2015
  23. @inaam-rana

    Bug#20788853 MUTEX ISSUE IN SQL/SQL_SHOW.CC RESULTING IN SIG6. SOURCE…

    … LIKELY
    
    FILL_VARIABLES
    
    Prevent mutexes used in SHOW VARIABLES from being locked twice.
    Marc Alff committed with inaam-rana Apr 8, 2015
  24. @bkandasa @inaam-rana
  25. @inaam-rana

    Bug #17299181 CREATE_TIME AND UPDATE_TIME ARE WRONG FOR PARTITIONED T…

    …ABLES
    
    Posty push fix for test case
    aditya committed with inaam-rana Apr 7, 2015
  26. @inaam-rana

    Merge branch 'mysql-5.1' into mysql-5.5

    Nisha committed with inaam-rana Apr 6, 2015
  27. @inaam-rana

    BUG#20754369: BACKPORT BUG#20007583 TO 5.1

    Backporting the patch to 5.1 and 5.5
    Nisha committed with inaam-rana Apr 6, 2015
  28. @inaam-rana

    Bug #17299181 CREATE_TIME AND UPDATE_TIME ARE WRONG FOR PARTITIONED T…

    …ABLES
    
    PROBLEM
    
    Create time is calculated as last status change time of .frm file.
    The first problem was that innodb was passing file name as
    "table_name#po#p0.frm" to the stat() call which calculates the create time.
    Since there is no frm file with this name create_time will be stored as NULL.
    The second problem is ha_partition::info() updates stats for create time
    when HA_STATUS_CONST flag was set ,where as innodb calculates this statistic
    when HA_STATUS_TIME is set,which causes create_time to be set as NULL.
    
    Fix
    Pass proper .frm name to stat() call and calculate create time when
    HA_STATUS_CONST flag is set.
    
    Conflicts:
    	mysql-test/r/partition_innodb.result
    	mysql-test/t/partition_innodb.test
    aditya committed with inaam-rana Apr 6, 2015
  29. @inaam-rana

    Null Merge branch 'mysql-5.1' into mysql-5.5

    V S Murthy Sidagam committed with inaam-rana Mar 30, 2015
  30. @inaam-rana

    Bug #20767962 5.1 SSL TESTS FAILING , GENERATE NEW CERTIFICATES

    Description: SSL tests are failing in mysql-5.1 pb2
    
    Analysis: The SSL certificates are ended by jan 2015.
    Hence the SSL tests are failing.
    
    Fix: We have generated new certificates with SHA1 algorithm.
    
    Conflicts:
    	mysql-test/std_data/cacert.pem
    	mysql-test/std_data/client-cert.pem
    	mysql-test/std_data/client-key.pem
    	mysql-test/std_data/server-cert.pem
    	mysql-test/std_data/server-key.pem
    	mysql-test/std_data/server8k-cert.pem
    	mysql-test/std_data/server8k-key.pem
    V S Murthy Sidagam committed with inaam-rana Mar 30, 2015
  31. @inaam-rana

    Merge branch 'mysql-5.1' into mysql-5.5

    Sreeharsha Ramanavarapu committed with inaam-rana Mar 26, 2015
  32. @inaam-rana

    Bug #20730155: BACKPORT BUG#19699237 TO 5.1

    Backport from mysql-5.5 to mysql-5.1
    
    Bug# 19699237: UNINITIALIZED VARIABLE IN
                   ITEM_FIELD::STR_RESULT LEADS TO INCORRECT
                   BEHAVIOR
    
    ISSUE:
    ------
    When the following conditions are satisfied in a query, a
    server crash occurs:
    a) Two rows are compared using a NULL-safe equal-to operator.
    b) Each of these rows belong to different charsets.
    
    SOLUTION:
    ---------
    When one charset is converted to another for comparision,
    the constructor of "Item_func_conv_charset" is called.
    This will attempt to use the Item_cache if the string is a
    constant. This check succeeds because the "used_table_map"
    of the Item_cache class is never set to the correct value.
    Since it is mistakenly assumed to be a constant, it tries
    to fetch the relevant null value related fields which are
    yet to be initialized. This results in valgrind issues
    and wrong results.
    
    The fix is to update the "used_table_map" of "Item_cache".
    This will allow "Item_func_conv_charset" to realise that
    this is not a constant.
    
    Conflicts:
    	sql/item.h
    Sreeharsha Ramanavarapu committed with inaam-rana Mar 26, 2015
  33. @inaam-rana

    Null Merge branch 'mysql-5.1' into mysql-5.5

    Vamsikrishna Bhagi committed with inaam-rana Mar 25, 2015
  34. @inaam-rana

    Bug# 20730103 BACKPORT 19688008 TO 5.1

    Problem: UDF doesn't handle the arguments properly when they
             are of string type due to a misplaced break.
             The length of arguments is also not set properly
             when the argument is NULL.
    
    Solution: Fixed the code by putting the break at right place
              and setting the argument length to zero when the
              argument is NULL.
    
    Conflicts:
    	sql/item_func.cc
    Vamsikrishna Bhagi committed with inaam-rana Mar 25, 2015