00001 /***************************************************************************** 00002 00003 Copyright (C) 1994, 2009, Innobase Oy. All Rights Reserved. 00004 00005 This program is free software; you can redistribute it and/or modify it under 00006 the terms of the GNU General Public License as published by the Free Software 00007 Foundation; version 2 of the License. 00008 00009 This program is distributed in the hope that it will be useful, but WITHOUT 00010 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS 00011 FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. 00012 00013 You should have received a copy of the GNU General Public License along with 00014 this program; if not, write to the Free Software Foundation, Inc., 51 Franklin 00015 St, Fifth Floor, Boston, MA 02110-1301 USA 00016 00017 *****************************************************************************/ 00018 00019 /********************************************************************/ 00026 #pragma once 00027 #ifndef rem0types_h 00028 #define rem0types_h 00029 00030 /* We define the physical record simply as an array of bytes */ 00031 typedef byte rec_t; 00032 00033 /* Maximum values for various fields (for non-blob tuples) */ 00034 #define REC_MAX_N_FIELDS (1024 - 1) 00035 #define REC_MAX_HEAP_NO (2 * 8192 - 1) 00036 #define REC_MAX_N_OWNED (16 - 1) 00037 00038 /* REC_MAX_INDEX_COL_LEN is measured in bytes and is the maximum 00039 indexed column length (or indexed prefix length). It is set to 3*256, 00040 so that one can create a column prefix index on 256 characters of a 00041 TEXT or VARCHAR column also in the UTF-8 charset. In that charset, 00042 a character may take at most 3 bytes. 00043 This constant MUST NOT BE CHANGED, or the compatibility of InnoDB data 00044 files would be at risk! */ 00045 #define REC_MAX_INDEX_COL_LEN 1024 00046 00047 #endif