Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
M
mariadb
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
Kirill Smelkov
mariadb
Commits
4a708752
Commit
4a708752
authored
Aug 28, 2007
by
msvensson@pilot.(none)
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Streamline "do_close_connection" and "do_send_quit"
Fix typo, "next_con" -> "con"
parent
397fbd02
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
57 additions
and
65 deletions
+57
-65
client/mysqltest.c
client/mysqltest.c
+57
-65
No files found.
client/mysqltest.c
View file @
4a708752
...
...
@@ -2983,15 +2983,30 @@ void do_diff_files(struct st_command *command)
DBUG_VOID_RETURN
;
}
/*
SYNOPSIS
do_send_quit
command called command
DESCRIPTION
Sends a simple quit command to the server for the named connection.
struct
st_connection
*
find_connection_by_name
(
const
char
*
name
)
{
struct
st_connection
*
con
;
for
(
con
=
connections
;
con
<
next_con
;
con
++
)
{
if
(
!
strcmp
(
con
->
name
,
name
))
{
return
con
;
}
}
return
0
;
/* Connection not found */
}
*/
/*
SYNOPSIS
do_send_quit
command called command
DESCRIPTION
Sends a simple quit command to the server for the named connection.
*/
void
do_send_quit
(
struct
st_command
*
command
)
{
...
...
@@ -3002,7 +3017,7 @@ void do_send_quit(struct st_command *command)
DBUG_PRINT
(
"enter"
,(
"name: '%s'"
,
p
));
if
(
!*
p
)
die
(
"Missing connection name in
do_
send_quit"
);
die
(
"Missing connection name in send_quit"
);
name
=
p
;
while
(
*
p
&&
!
my_isspace
(
charset_info
,
*
p
))
p
++
;
...
...
@@ -3011,17 +3026,12 @@ void do_send_quit(struct st_command *command)
*
p
++=
0
;
command
->
last_argument
=
p
;
/* Loop through connection pool for connection to close */
for
(
con
=
connections
;
con
<
next_con
;
con
++
)
{
DBUG_PRINT
(
"info"
,
(
"con->name: %s"
,
con
->
name
));
if
(
!
strcmp
(
con
->
name
,
name
))
{
simple_command
(
&
con
->
mysql
,
COM_QUIT
,
NullS
,
0
,
1
);
DBUG_VOID_RETURN
;
}
}
die
(
"connection '%s' not found in connection pool"
,
name
);
if
(
!
(
con
=
find_connection_by_name
(
name
)))
die
(
"connection '%s' not found in connection pool"
,
name
);
simple_command
(
&
con
->
mysql
,
COM_QUIT
,
NullS
,
0
,
1
);
DBUG_VOID_RETURN
;
}
...
...
@@ -3858,20 +3868,6 @@ void set_reconnect(MYSQL* mysql, int val)
}
struct
st_connection
*
find_connection_by_name
(
const
char
*
name
)
{
struct
st_connection
*
con
;
for
(
con
=
connections
;
con
<
next_con
;
con
++
)
{
if
(
!
strcmp
(
con
->
name
,
name
))
{
return
con
;
}
}
return
0
;
/* Connection not found */
}
int
select_connection_name
(
const
char
*
name
)
{
DBUG_ENTER
(
"select_connection2"
);
...
...
@@ -3919,44 +3915,40 @@ void do_close_connection(struct st_command *command)
*
p
++=
0
;
command
->
last_argument
=
p
;
/* Loop through connection pool for connection to close */
for
(
con
=
connections
;
con
<
next_con
;
con
++
)
if
(
!
(
con
=
find_connection_by_name
(
name
)))
die
(
"connection '%s' not found in connection pool"
,
name
);
DBUG_PRINT
(
"info"
,
(
"Closing connection %s"
,
con
->
name
));
#ifndef EMBEDDED_LIBRARY
if
(
command
->
type
==
Q_DIRTY_CLOSE
)
{
DBUG_PRINT
(
"info"
,
(
"con->name: %s"
,
con
->
name
));
if
(
!
strcmp
(
con
->
name
,
name
))
if
(
con
->
mysql
.
net
.
vio
)
{
DBUG_PRINT
(
"info"
,
(
"Closing connection %s"
,
con
->
name
));
#ifndef EMBEDDED_LIBRARY
if
(
command
->
type
==
Q_DIRTY_CLOSE
)
{
if
(
con
->
mysql
.
net
.
vio
)
{
vio_delete
(
con
->
mysql
.
net
.
vio
);
con
->
mysql
.
net
.
vio
=
0
;
}
}
vio_delete
(
con
->
mysql
.
net
.
vio
);
con
->
mysql
.
net
.
vio
=
0
;
}
}
#endif
if
(
next_
con
->
stmt
)
mysql_stmt_close
(
next_
con
->
stmt
);
next_
con
->
stmt
=
0
;
if
(
con
->
stmt
)
mysql_stmt_close
(
con
->
stmt
);
con
->
stmt
=
0
;
mysql_close
(
&
con
->
mysql
);
if
(
con
->
util_mysql
)
mysql_close
(
con
->
util_mysql
);
con
->
util_mysql
=
0
;
my_free
(
con
->
name
,
MYF
(
0
));
mysql_close
(
&
con
->
mysql
);
/*
When the connection is closed set name to "-closed_connection-"
to make it possible to reuse the connection name.
*/
if
(
!
(
con
->
name
=
my_strdup
(
"-closed_connection-"
,
MYF
(
MY_WME
))))
die
(
"Out of memory"
);
if
(
con
->
util_mysql
)
mysql_close
(
con
->
util_mysql
);
con
->
util_mysql
=
0
;
DBUG_VOID_RETURN
;
}
}
die
(
"connection '%s' not found in connection pool"
,
name
);
my_free
(
con
->
name
,
MYF
(
0
));
/*
When the connection is closed set name to "-closed_connection-"
to make it possible to reuse the connection name.
*/
if
(
!
(
con
->
name
=
my_strdup
(
"-closed_connection-"
,
MYF
(
MY_WME
))))
die
(
"Out of memory"
);
DBUG_VOID_RETURN
;
}
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment