Bug #468, http://bugs.skysql.com/show_bug.cgi?id=468, Query classifier accessed freed thread context. If parsing fails thd doesn't need to be freed because it holds correct information about command type.
session.c:session_setup_filters : fixed memory leak hintparser.c: added token_free for HINT_TOKENs and fixed a few memory leaks. mysql_client_server_protocol.h: added mysql_protocol_done which frees memory blocks pointed to by protocol members. Those can't be freed in dcb.c because dcb.c doesn't know about protocol's members. mysql_backend.c:gw_backend_close: fixed memory leak mysql_client.c: gw_client_close: fixed memory leak mysql_common.c: added implementation of mysql_protocol_done :protocol_archive_srv_command: tried to fix memory leak. Some memory is still leaking according to valgrind. Removed use of uninitialized local variable len. readwritesplit.c: Fix to bug #469, http://bugs.skysql.com/show_bug.cgi?id=469, rwsplit counts every connection twice in master - counnection counts leak execute_sescmd_in_backend: fixed a memory leak - visible only in DEBUG=Y build. readwritesplit/test/makefile: added target for hints tests
This commit is contained in:
36
server/modules/routing/readwritesplit/test/test_hints/rwsplit_hints.sh
Executable file
36
server/modules/routing/readwritesplit/test/test_hints/rwsplit_hints.sh
Executable file
@ -0,0 +1,36 @@
|
||||
#!/bin/bash
|
||||
NARGS=6
|
||||
TLOG=$1
|
||||
THOST=$2
|
||||
TPORT=$3
|
||||
TMASTER_ID=$4
|
||||
TUSER=$5
|
||||
TPWD=$6
|
||||
|
||||
if [ $# != $NARGS ] ;
|
||||
then
|
||||
echo""
|
||||
echo "Wrong number of arguments, gave "$#" but "$NARGS" is required"
|
||||
echo ""
|
||||
echo "Usage :"
|
||||
echo " rwsplit.sh <log filename> <host> <port> <master id> <user> <password>"
|
||||
echo ""
|
||||
exit 1
|
||||
fi
|
||||
|
||||
TESTINPUT=hints.txt
|
||||
QUERY="select @@server_id;"
|
||||
RUNCMD=mysql\ --host=$THOST\ -P$TPORT\ -u$TUSER\ -p$TPWD\ --unbuffered=true\ --disable-reconnect\ --silent\
|
||||
|
||||
while read -r LINE
|
||||
do
|
||||
TINPUT=`echo "$LINE"|awk '{split($0,a,":");print a[1]}'`
|
||||
TRETVAL=`echo "$LINE"|awk '{split($0,a,":");print a[2]}'`
|
||||
a=`$RUNCMD -e"$QUERY$TINPUT"`
|
||||
if [ "$a" != "$TRETVAL" ]; then
|
||||
echo "$TINPUT FAILED, return value $a when $TRETVAL was expected">>$TLOG;
|
||||
else
|
||||
echo "$TINPUT PASSED">>$TLOG ;
|
||||
fi
|
||||
|
||||
done < $TESTINPUT
|
Reference in New Issue
Block a user