~ubuntu-branches/ubuntu/vivid/mariadb-5.5/vivid

« back to all changes in this revision

Viewing changes to storage/innobase/include/dict0dict.ic

  • Committer: Package Import Robot
  • Author(s): James Page, Otto Kekäläinen
  • Date: 2014-02-17 16:51:52 UTC
  • mfrom: (2.1.1 sid)
  • Revision ID: package-import@ubuntu.com-20140217165152-k315d3175g865kkx
Tags: 5.5.35-1
[ Otto Kekäläinen ]
* New upstream release, fixing the following security issues:
  - Buffer overflow in client/mysql.cc (Closes: #737597).
    - CVE-2014-0001
  - http://www.oracle.com/technetwork/topics/security/cpujan2014-1972949.html
    - CVE-2013-5891
    - CVE-2013-5908
    - CVE-2014-0386
    - CVE-2014-0393
    - CVE-2014-0401
    - CVE-2014-0402
    - CVE-2014-0412
    - CVE-2014-0420
    - CVE-2014-0437
* Upstream https://mariadb.atlassian.net/browse/MDEV-4902
  fixes compatibility with Bison 3.0 (Closes: #733002)
* Updated Russian debconf translation (Closes: #734426)
* Updated Japanese debconf translation (Closes: #735284)
* Updated French debconf translation (Closes: #736480)
* Renamed SONAME properly (Closes: #732967)

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
1
/*****************************************************************************
2
2
 
3
 
Copyright (c) 1996, 2012, Oracle and/or its affiliates. All Rights Reserved.
 
3
Copyright (c) 1996, 2013, Oracle and/or its affiliates. All Rights Reserved.
4
4
 
5
5
This program is free software; you can redistribute it and/or modify it under
6
6
the terms of the GNU General Public License as published by the Free Software
816
816
}
817
817
 
818
818
/**********************************************************************//**
819
 
load a table into dictionary cache, ignore any error specified during load;
 
819
Gets a table; loads it to the dictionary cache if necessary. A low-level
 
820
function.
820
821
@return table, NULL if not found */
821
822
UNIV_INLINE
822
823
dict_table_t*
823
 
dict_table_get_low_ignore_err(
824
 
/*==========================*/
 
824
dict_table_get_low(
 
825
/*===============*/
825
826
        const char*     table_name,     /*!< in: table name */
826
827
        dict_err_ignore_t
827
828
                        ignore_err)     /*!< in: error to be ignored when
834
835
 
835
836
        table = dict_table_check_if_in_cache_low(table_name);
836
837
 
837
 
        if (table == NULL) {
838
 
                table = dict_load_table(table_name, TRUE, ignore_err);
839
 
        }
840
 
 
841
 
        ut_ad(!table || table->cached);
842
 
 
843
 
        return(table);
844
 
}
845
 
 
846
 
/**********************************************************************//**
847
 
Gets a table; loads it to the dictionary cache if necessary. A low-level
848
 
function.
849
 
@return table, NULL if not found */
850
 
UNIV_INLINE
851
 
dict_table_t*
852
 
dict_table_get_low(
853
 
/*===============*/
854
 
        const char*     table_name)     /*!< in: table name */
855
 
{
856
 
        dict_table_t*   table;
857
 
 
858
 
        ut_ad(table_name);
859
 
        ut_ad(mutex_own(&(dict_sys->mutex)));
860
 
 
861
 
        table = dict_table_check_if_in_cache_low(table_name);
862
 
 
863
 
        if (table && table->corrupted) {
 
838
        if (table && table->corrupted
 
839
            && !(ignore_err & DICT_ERR_IGNORE_CORRUPT)) {
864
840
                fprintf(stderr, "InnoDB: table");
865
841
                ut_print_name(stderr, NULL, TRUE, table->name);
866
842
                if (srv_load_corrupted) {
873
849
        }
874
850
 
875
851
        if (table == NULL) {
876
 
                table = dict_load_table(table_name, TRUE, DICT_ERR_IGNORE_NONE);
 
852
                table = dict_load_table(table_name, TRUE, ignore_err);
877
853
        }
878
854
 
879
855
        ut_ad(!table || table->cached);