1 /***************************************************************************** 2 3 Copyright (c) 1997, 2012, Oracle and/or its affiliates. All Rights Reserved. 4 Copyright (c) 2010-2012, Percona Inc. All Rights Reserved. 5 6 This program is free software; you can redistribute it and/or modify it under 7 the terms of the GNU General Public License as published by the Free Software 8 Foundation; version 2 of the License. 9 10 This program is distributed in the hope that it will be useful, but WITHOUT 11 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS 12 FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. 13 14 You should have received a copy of the GNU General Public License along with 15 this program; if not, write to the Free Software Foundation, Inc., 16 51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA 17 18 *****************************************************************************/ 19 20 #ifndef read0i_s_h 21 #define read0i_s_h 22 23 #include <trx0types.h> 24 25 struct i_s_xtradb_read_view_struct { 26 undo_no_t undo_no;/*!< 0 or if type is 27 VIEW_HIGH_GRANULARITY 28 transaction undo_no when this high-granularity 29 consistent read view was created */ 30 trx_id_t low_limit_no; 31 /*!< The view does not need to see the undo 32 logs for transactions whose transaction number 33 is strictly smaller (<) than this value: they 34 can be removed in purge if not needed by other 35 views */ 36 trx_id_t low_limit_id; 37 /*!< The read should not see any transaction 38 with trx id >= this value. In other words, 39 this is the "high water mark". */ 40 trx_id_t up_limit_id; 41 /*!< The read should see all trx ids which 42 are strictly smaller (<) than this value. 43 In other words, 44 this is the "low water mark". */ 45 }; 46 47 typedef struct i_s_xtradb_read_view_struct i_s_xtradb_read_view_t; 48 49 UNIV_INTERN 50 i_s_xtradb_read_view_t* 51 read_fill_i_s_xtradb_read_view(i_s_xtradb_read_view_t *rv); 52 53 54 #endif /* read0i_s_h */ 55