mirror of
https://github.com/MariaDB/server.git
synced 2025-01-18 04:53:01 +01:00
94e5d7de85
modified: storage/connect/CMakeLists.txt modified: storage/connect/JavaWrappers.jar modified: storage/connect/colblk.h modified: storage/connect/filter.cpp modified: storage/connect/filter.h modified: storage/connect/ha_connect.cc modified: storage/connect/ha_connect.h modified: storage/connect/jdbccat.h modified: storage/connect/jdbconn.cpp modified: storage/connect/jdbconn.h modified: storage/connect/mongofam.cpp modified: storage/connect/mongofam.h modified: storage/connect/mycat.cc modified: storage/connect/mycat.h modified: storage/connect/tabext.h modified: storage/connect/tabjdbc.cpp modified: storage/connect/tabjdbc.h modified: storage/connect/tabjson.cpp modified: storage/connect/tabjson.h modified: storage/connect/tabmgo.cpp modified: storage/connect/tabmgo.h created: storage/connect/Mongo2Interface.java created: storage/connect/Mongo3Interface.java created: storage/connect/cmgoconn.cpp created: storage/connect/cmgoconn.h created: storage/connect/javaconn.cpp created: storage/connect/javaconn.h created: storage/connect/jmgfam.cpp created: storage/connect/jmgfam.h created: storage/connect/jmgoconn.cpp created: storage/connect/jmgoconn.h created: storage/connect/mongo.cpp created: storage/connect/mongo.h created: storage/connect/tabjmg.cpp created: storage/connect/tabjmg.h - tdbp not initialized when catched exception in CntGetTDB (connect.cc line 188) modified: storage/connect/connect.h - CheckCleanup should sometimes doing cleanup on pure info Sometimes MariaDB loops on info to get the size of all tables in a database. This can sometimes fail by exhausted memory. CheckCleanup now have a force boolean parameter (defaulting to false) modified: storage/connect/ha_connect.cc modified: storage/connect/user_connect.cc modified: storage/connect/user_connect.h Change the copyright of some source files modified: storage/connect/connect.cc modified: storage/connect/connect.h modified: storage/connect/engmsg.h modified: storage/connect/global.h modified: storage/connect/ha_connect.cc modified: storage/connect/ha_connect.h modified: storage/connect/msgid.h modified: storage/connect/mycat.cc modified: storage/connect/mycat.h modified: storage/connect/os.h modified: storage/connect/osutil.c modified: storage/connect/osutil.h modified: storage/connect/user_connect.cc modified: storage/connect/user_connect.h
73 lines
2.6 KiB
C++
73 lines
2.6 KiB
C++
/* Copyright (C) MariaDB Corporation Ab
|
|
|
|
This program is free software; you can redistribute it and/or modify
|
|
it under the terms of the GNU General Public License as published by
|
|
the Free Software Foundation; version 2 of the License.
|
|
|
|
This program is distributed in the hope that it will be useful,
|
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
GNU General Public License for more details.
|
|
|
|
You should have received a copy of the GNU General Public License
|
|
along with this program; if not, write to the Free Software
|
|
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */
|
|
|
|
/** @file user_connect.h
|
|
|
|
@brief
|
|
Declaration of the user_connect class.
|
|
|
|
@note
|
|
Author Olivier Bertrand
|
|
|
|
@see
|
|
/sql/handler.h and /storage/connect/user_connect.cc
|
|
*/
|
|
|
|
#ifdef USE_PRAGMA_INTERFACE
|
|
#pragma interface /* gcc class implementation */
|
|
#endif
|
|
|
|
/*****************************************************************************/
|
|
/* This is the global structure having all CONNECT information. */
|
|
/*****************************************************************************/
|
|
//typedef struct _global *PGLOBAL;
|
|
typedef class user_connect *PCONNECT;
|
|
typedef class ha_connect *PHC;
|
|
static int connect_done_func(void *);
|
|
|
|
/*****************************************************************************/
|
|
/* The CONNECT users. There should be one by connected users. */
|
|
/*****************************************************************************/
|
|
class user_connect
|
|
{
|
|
friend class ha_connect;
|
|
friend int connect_done_func(void *);
|
|
public:
|
|
// Constructor
|
|
user_connect(THD *thd);
|
|
|
|
// Destructor
|
|
virtual ~user_connect();
|
|
|
|
// Implementation
|
|
bool user_init();
|
|
void SetHandler(ha_connect *hc);
|
|
bool CheckCleanup(bool force = false);
|
|
bool CheckQueryID(void) {return thdp->query_id > last_query_id;}
|
|
bool CheckQuery(query_id_t vid) {return last_query_id > vid;}
|
|
|
|
// Members
|
|
THD *thdp; // To the user thread
|
|
static PCONNECT to_users; // To the chain of users
|
|
PCONNECT next; // Next user in chain
|
|
PCONNECT previous; // Previous user in chain
|
|
PGLOBAL g; // The common handle to CONNECT
|
|
query_id_t last_query_id; // the latest user query id
|
|
int count; // if used by several handlers
|
|
// Statistics
|
|
ulong nrd, fnd, nfd;
|
|
ulonglong tb1;
|
|
}; // end of user_connect class definition
|
|
|