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

« back to all changes in this revision

Viewing changes to storage/innobase/include/usr0sess.h

  • 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
 
 
3
Copyright (c) 1996, 2009, Oracle and/or its affiliates. All Rights Reserved.
 
4
 
 
5
This program is free software; you can redistribute it and/or modify it under
 
6
the terms of the GNU General Public License as published by the Free Software
 
7
Foundation; version 2 of the License.
 
8
 
 
9
This program is distributed in the hope that it will be useful, but WITHOUT
 
10
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
 
11
FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
12
 
 
13
You should have received a copy of the GNU General Public License along with
 
14
this program; if not, write to the Free Software Foundation, Inc.,
 
15
51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
 
16
 
 
17
*****************************************************************************/
 
18
 
 
19
/**************************************************//**
 
20
@file include/usr0sess.h
 
21
Sessions
 
22
 
 
23
Created 6/25/1996 Heikki Tuuri
 
24
*******************************************************/
 
25
 
 
26
#ifndef usr0sess_h
 
27
#define usr0sess_h
 
28
 
 
29
#include "univ.i"
 
30
#include "ut0byte.h"
 
31
#include "trx0types.h"
 
32
#include "srv0srv.h"
 
33
#include "trx0types.h"
 
34
#include "usr0types.h"
 
35
#include "que0types.h"
 
36
#include "data0data.h"
 
37
#include "rem0rec.h"
 
38
 
 
39
/*********************************************************************//**
 
40
Opens a session.
 
41
@return own: session object */
 
42
UNIV_INTERN
 
43
sess_t*
 
44
sess_open(void);
 
45
/*============*/
 
46
/*********************************************************************//**
 
47
Closes a session, freeing the memory occupied by it. */
 
48
UNIV_INTERN
 
49
void
 
50
sess_close(
 
51
/*=======*/
 
52
        sess_t*         sess);          /* in, own: session object */
 
53
 
 
54
/* The session handle. This data structure is only used by purge and is
 
55
not really necessary. We should get rid of it. */
 
56
struct sess_t{
 
57
        ulint           state;          /*!< state of the session */
 
58
        trx_t*          trx;            /*!< transaction object permanently
 
59
                                        assigned for the session: the
 
60
                                        transaction instance designated by the
 
61
                                        trx id changes, but the memory
 
62
                                        structure is preserved */
 
63
        UT_LIST_BASE_NODE_T(que_t)
 
64
                        graphs;         /*!< query graphs belonging to this
 
65
                                        session */
 
66
};
 
67
 
 
68
/* Session states */
 
69
#define SESS_ACTIVE             1
 
70
#define SESS_ERROR              2       /* session contains an error message
 
71
                                        which has not yet been communicated
 
72
                                        to the client */
 
73
#ifndef UNIV_NONINL
 
74
#include "usr0sess.ic"
 
75
#endif
 
76
 
 
77
#endif