1
/*****************************************************************************
3
Copyright (c) 1996, 2009, Innobase Oy. All Rights Reserved.
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.
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.
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., 59 Temple
15
Place, Suite 330, Boston, MA 02111-1307 USA
17
*****************************************************************************/
19
/******************************************************
22
Created 6/25/1996 Heikki Tuuri
23
*******************************************************/
28
#include "usr0sess.ic"
33
/*************************************************************************
39
/* out, own: session object */
43
ut_ad(mutex_own(&kernel_mutex));
45
sess = mem_alloc(sizeof(sess_t));
47
sess->state = SESS_ACTIVE;
49
sess->trx = trx_create(sess);
51
UT_LIST_INIT(sess->graphs);
56
/*************************************************************************
57
Closes a session, freeing the memory occupied by it. */
62
sess_t* sess) /* in, own: session object */
64
ut_ad(!mutex_own(&kernel_mutex));
66
ut_a(UT_LIST_GET_LEN(sess->graphs) == 0);
68
trx_free_for_background(sess->trx);