~ubuntu-branches/ubuntu/trusty/mysql-5.6/trusty

« back to all changes in this revision

Viewing changes to storage/ndb/include/kernel/signaldata/CopyGCIReq.hpp

  • Committer: Package Import Robot
  • Author(s): James Page
  • Date: 2014-02-12 11:54:27 UTC
  • Revision ID: package-import@ubuntu.com-20140212115427-oq6tfsqxl1wuwehi
Tags: upstream-5.6.15
ImportĀ upstreamĀ versionĀ 5.6.15

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
/*
 
2
   Copyright (C) 2003, 2005, 2006, 2008 MySQL AB
 
3
    All rights reserved. Use is subject to license terms.
 
4
 
 
5
   This program is free software; you can redistribute it and/or modify
 
6
   it under the terms of the GNU General Public License as published by
 
7
   the Free Software Foundation; version 2 of the License.
 
8
 
 
9
   This program is distributed in the hope that it will be useful,
 
10
   but WITHOUT ANY WARRANTY; without even the implied warranty of
 
11
   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 
12
   GNU General Public License for more details.
 
13
 
 
14
   You should have received a copy of the GNU General Public License
 
15
   along with this program; if not, write to the Free Software
 
16
   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA
 
17
*/
 
18
 
 
19
#ifndef COPY_GCI_REQ_HPP
 
20
#define COPY_GCI_REQ_HPP
 
21
 
 
22
#include "SignalData.hpp"
 
23
 
 
24
/**
 
25
 * This signal is used for transfering the sysfile 
 
26
 * between Dih on different nodes.
 
27
 *
 
28
 * The master will distributes the file to the other nodes
 
29
 *
 
30
 * Since the Sysfile can be larger than on StartMeConf signal,
 
31
 *   there might be more than on of these signals sent before
 
32
 *   the entire sysfile is transfered
 
33
 
 
34
 */
 
35
class CopyGCIReq {
 
36
  /**
 
37
   * Sender(s) / Reciver(s)
 
38
   */
 
39
  friend class Dbdih;
 
40
  
 
41
  friend bool printCOPY_GCI_REQ(FILE *, const Uint32 *, Uint32, Uint16);  
 
42
public:
 
43
  enum CopyReason {
 
44
    IDLE                    = 0,
 
45
    LOCAL_CHECKPOINT        = 1,
 
46
    RESTART                 = 2,
 
47
    GLOBAL_CHECKPOINT       = 3,
 
48
    INITIAL_START_COMPLETED = 4,
 
49
    RESTART_NR              = 5
 
50
  };
 
51
  
 
52
private:
 
53
  
 
54
  Uint32 anyData;
 
55
  Uint32 copyReason;
 
56
  Uint32 startWord;
 
57
 
 
58
  /**
 
59
   * No of free words to carry data
 
60
   */
 
61
  STATIC_CONST( DATA_SIZE = 22 );
 
62
  
 
63
  Uint32 data[DATA_SIZE];
 
64
};
 
65
 
 
66
#endif