~ubuntu-branches/ubuntu/trusty/mariadb-5.5/trusty-updates

« back to all changes in this revision

Viewing changes to storage/innobase/handler/ha_innodb.cc

  • Committer: Package Import Robot
  • Author(s): Otto Kekäläinen
  • Date: 2015-06-13 21:09:48 UTC
  • mfrom: (1.1.9)
  • Revision ID: package-import@ubuntu.com-20150613210948-6b0ina6he3w5s307
Tags: 5.5.44-1ubuntu0.14.04.1
* SECURITY UPDATE: Update to 5.5.44 to fix security issues (LP: #1464895):
  - CVE-2015-3152
* Upstream also includes lots of line ending changes (from CRLF -> LF)
* Removed hotfix patch now included in upstream release (MDEV-8115)

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
1
/*****************************************************************************
2
2
 
3
 
Copyright (c) 2000, 2014, Oracle and/or its affiliates. All Rights Reserved.
 
3
Copyright (c) 2000, 2015, Oracle and/or its affiliates. All Rights Reserved.
4
4
Copyright (c) 2008, 2009 Google Inc.
5
5
Copyright (c) 2009, Percona Inc.
6
6
 
93
93
#include "ibuf0ibuf.h"
94
94
 
95
95
enum_tx_isolation thd_get_trx_isolation(const THD* thd);
96
 
 
97
96
}
98
97
 
99
98
#include "ha_innodb.h"
6299
6298
 
6300
6299
        DBUG_ENTER("general_fetch");
6301
6300
 
 
6301
        /* If transaction is not startted do not continue, instead return a error code. */
 
6302
        if(!(prebuilt->sql_stat_start || (prebuilt->trx && prebuilt->trx->conc_state == 1))) {
 
6303
                DBUG_RETURN(HA_ERR_END_OF_FILE);
 
6304
        }
 
6305
 
6302
6306
        ut_a(prebuilt->trx == thd_to_trx(user_thd));
6303
6307
 
6304
6308
        innodb_srv_conc_enter_innodb(prebuilt->trx);
8026
8030
        estimate = 2 * local_data_file_length /
8027
8031
                                         dict_index_calc_min_rec_len(index);
8028
8032
 
 
8033
        /* Set num_rows less than MERGEBUFF to simulate the case where we do
 
8034
        not have enough space to merge the externally sorted file blocks. */
 
8035
        DBUG_EXECUTE_IF("set_num_rows_lt_MERGEBUFF",
 
8036
                        estimate = 2;
 
8037
                        DBUG_SET("-d,set_num_rows_lt_MERGEBUFF");
 
8038
                       );
 
8039
 
8029
8040
        prebuilt->trx->op_info = (char*)"";
8030
8041
 
8031
8042
        DBUG_RETURN((ha_rows) estimate);
8280
8291
                        prebuilt->trx->op_info = "returning various info to MySQL";
8281
8292
                }
8282
8293
 
8283
 
                my_snprintf(path, sizeof(path), "%s/%s%s",
8284
 
                                mysql_data_home, ib_table->name, reg_ext);
8285
 
 
8286
 
                unpack_filename(path,path);
8287
 
 
8288
 
                /* Note that we do not know the access time of the table,
8289
 
                nor the CHECK TABLE time, nor the UPDATE or INSERT time. */
8290
 
 
8291
 
                if (os_file_get_status(path,&stat_info)) {
8292
 
                        stats.create_time = (ulong) stat_info.ctime;
8293
 
                }
8294
8294
        }
8295
8295
 
8296
8296
        if (flag & HA_STATUS_VARIABLE) {
8535
8535
                }
8536
8536
 
8537
8537
                dict_table_stats_unlock(ib_table, RW_S_LATCH);
 
8538
 
 
8539
                my_snprintf(path, sizeof(path), "%s/%s%s",
 
8540
                            mysql_data_home,
 
8541
                            table->s->normalized_path.str,
 
8542
                            reg_ext);
 
8543
 
 
8544
                unpack_filename(path,path);
 
8545
 
 
8546
                /* Note that we do not know the access time of the table,
 
8547
                nor the CHECK TABLE time, nor the UPDATE or INSERT time. */
 
8548
 
 
8549
                if (os_file_get_status(path,&stat_info)) {
 
8550
                        stats.create_time = (ulong) stat_info.ctime;
 
8551
                }
8538
8552
        }
8539
8553
 
8540
8554
        if (srv_force_recovery >= SRV_FORCE_NO_IBUF_MERGE) {