MySQL 5.6.14 Source Code Document
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
BackupLockTab.hpp
1 /* Copyright (C) 2008 MySQL AB, 2009 Sun Microsystems, Inc.
2  All rights reserved. Use is subject to license terms.
3 
4  This program is free software; you can redistribute it and/or modify
5  it under the terms of the GNU General Public License as published by
6  the Free Software Foundation; version 2 of the License.
7 
8  This program is distributed in the hope that it will be useful,
9  but WITHOUT ANY WARRANTY; without even the implied warranty of
10  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11  GNU General Public License for more details.
12 
13  You should have received a copy of the GNU General Public License
14  along with this program; if not, write to the Free Software
15  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */
16 
17 #ifndef BACKUP_LOCK_TAB
18 #define BACKUP_LOCK_TAB
19 
20 #include "SignalData.hpp"
21 
22 /* This class is used for both REQ, CONF, and REF. */
23 
25  /* Sender(s). */
26  friend class Backup;
27 
28  /* Receiver(s). */
29  friend class Dbdict;
30 
31 public:
32  STATIC_CONST( SignalLength = 7 );
33 
34 private:
35  /* Values for m_lock_unlock. */
36  enum {
37  UNLOCK_TABLE = 0,
38  LOCK_TABLE = 1
39  };
40 
41  /* Values for m_backup_state. */
42  enum {
43  BACKUP_FRAGMENT_INFO = 0,
44  GET_TABINFO_CONF = 1,
45  CLEANUP = 2
46  };
47 
48  Uint32 m_senderRef;
49  Uint32 m_tableId;
50  Uint32 m_lock_unlock;
51  Uint32 errorCode;
52  /* The remaining words are used to keep track of state in block Backup. */
53  Uint32 m_backup_state;
54  Uint32 m_backupRecordPtr_I;
55  Uint32 m_tablePtr_I;
56 };
57 
58 #endif