mirror of
https://github.com/MariaDB/server.git
synced 2025-01-19 13:32:33 +01:00
4e1116b2c6
Also, remove empty .ic files that were not removed by my MySQL commit. Problem: InnoDB used to support a compilation mode that allowed to choose whether the function definitions in .ic files are to be inlined or not. This stopped making sense when InnoDB moved to C++ in MySQL 5.6 (and ha_innodb.cc started to #include .ic files), and more so in MySQL 5.7 when inline methods and functions were introduced in .h files. Solution: Remove all references to UNIV_NONINL and UNIV_MUST_NOT_INLINE from all files, assuming that the symbols are never defined. Remove the files fut0fut.cc and ut0byte.cc which only mattered when UNIV_NONINL was defined.
85 lines
3 KiB
C
85 lines
3 KiB
C
/*****************************************************************************
|
|
|
|
Copyright (c) 2012, 2016, Oracle and/or its affiliates. All Rights Reserved.
|
|
Copyright (c) 2017, MariaDB Corporation.
|
|
|
|
This program is free software; you can redistribute it and/or modify it under
|
|
the terms of the GNU General Public License as published by the Free Software
|
|
Foundation; version 2 of the License.
|
|
|
|
This program is distributed in the hope that it will be useful, but WITHOUT
|
|
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
|
|
FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
|
|
|
|
You should have received a copy of the GNU General Public License along with
|
|
this program; if not, write to the Free Software Foundation, Inc.,
|
|
51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
|
|
|
|
*****************************************************************************/
|
|
|
|
/**************************************************//**
|
|
@file include/row0import.h
|
|
Header file for import tablespace functions.
|
|
|
|
Created 2012-02-08 by Sunny Bains
|
|
*******************************************************/
|
|
|
|
#ifndef row0import_h
|
|
#define row0import_h
|
|
|
|
#include "univ.i"
|
|
#include "dict0types.h"
|
|
|
|
// Forward declarations
|
|
struct trx_t;
|
|
struct dict_table_t;
|
|
struct row_prebuilt_t;
|
|
|
|
/*****************************************************************//**
|
|
Imports a tablespace. The space id in the .ibd file must match the space id
|
|
of the table in the data dictionary.
|
|
@return error code or DB_SUCCESS */
|
|
dberr_t
|
|
row_import_for_mysql(
|
|
/*=================*/
|
|
dict_table_t* table, /*!< in/out: table */
|
|
row_prebuilt_t* prebuilt) /*!< in: prebuilt struct
|
|
in MySQL */
|
|
MY_ATTRIBUTE((nonnull, warn_unused_result));
|
|
|
|
/*****************************************************************//**
|
|
Update the DICT_TF2_DISCARDED flag in SYS_TABLES.
|
|
@return DB_SUCCESS or error code. */
|
|
dberr_t
|
|
row_import_update_discarded_flag(
|
|
/*=============================*/
|
|
trx_t* trx, /*!< in/out: transaction that
|
|
covers the update */
|
|
table_id_t table_id, /*!< in: Table for which we want
|
|
to set the root table->flags2 */
|
|
bool discarded, /*!< in: set MIX_LEN column bit
|
|
to discarded, if true */
|
|
bool dict_locked) /*!< in: Set to true if the
|
|
caller already owns the
|
|
dict_sys_t:: mutex. */
|
|
MY_ATTRIBUTE((nonnull, warn_unused_result));
|
|
|
|
/*****************************************************************//**
|
|
Update the (space, root page) of a table's indexes from the values
|
|
in the data dictionary.
|
|
@return DB_SUCCESS or error code */
|
|
dberr_t
|
|
row_import_update_index_root(
|
|
/*=========================*/
|
|
trx_t* trx, /*!< in/out: transaction that
|
|
covers the update */
|
|
const dict_table_t* table, /*!< in: Table for which we want
|
|
to set the root page_no */
|
|
bool reset, /*!< in: if true then set to
|
|
FIL_NUL */
|
|
bool dict_locked) /*!< in: Set to true if the
|
|
caller already owns the
|
|
dict_sys_t:: mutex. */
|
|
MY_ATTRIBUTE((nonnull, warn_unused_result));
|
|
|
|
#endif /* row0import_h */
|