vincentchu-handlersocket 0.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/ext/HandlerSocket-Plugin-for-MySQL/AUTHORS +22 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/COPYING +30 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/ChangeLog +12 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/Makefile.am +87 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/README +78 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/autogen.sh +117 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/client/Makefile.am +24 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/client/hsclient.cpp +88 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/client/hslongrun.cpp +1041 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/client/hspool_test.pl +224 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/client/hstest.cpp +1532 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/client/hstest.pl +228 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/client/hstest_hs.sh +4 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/client/hstest_hs_more50.sh +4 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/client/hstest_md.sh +7 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/client/hstest_my.sh +3 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/client/hstest_my_more50.sh +3 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/configure.ac +144 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/docs-en/about-handlersocket.en.txt +72 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/docs-en/configuration-options.en.txt +99 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/docs-en/installation.en.txt +92 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/docs-en/perl-client.en.txt +135 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/docs-en/protocol.en.txt +205 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/docs-ja/about-handlersocket.ja.txt +51 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/docs-ja/installation.ja.txt +88 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/docs-ja/perl-client.ja.txt +127 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/docs-ja/protocol.ja.txt +180 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/handlersocket/COPYRIGHT.txt +27 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/handlersocket/Makefile.am +10 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/handlersocket/Makefile.plain.template +31 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/handlersocket/database.cpp +1190 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/handlersocket/database.hpp +142 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/handlersocket/handlersocket.cpp +222 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/handlersocket/handlersocket.spec.template +29 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/handlersocket/hstcpsvr.cpp +149 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/handlersocket/hstcpsvr.hpp +58 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/handlersocket/hstcpsvr_worker.cpp +951 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/handlersocket/hstcpsvr_worker.hpp +35 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/handlersocket/mysql_incl.hpp +50 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/libhsclient/COPYRIGHT.txt +27 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/libhsclient/Makefile.am +12 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/libhsclient/Makefile.plain +27 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/libhsclient/allocator.hpp +64 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/libhsclient/auto_addrinfo.hpp +49 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/libhsclient/auto_file.hpp +64 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/libhsclient/auto_ptrcontainer.hpp +67 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/libhsclient/config.cpp +67 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/libhsclient/config.hpp +32 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/libhsclient/escape.cpp +127 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/libhsclient/escape.hpp +66 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/libhsclient/fatal.cpp +36 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/libhsclient/fatal.hpp +22 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/libhsclient/hstcpcli.cpp +441 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/libhsclient/hstcpcli.hpp +62 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/libhsclient/libhsclient.spec.template +39 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/libhsclient/mutex.hpp +51 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/libhsclient/socket.cpp +186 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/libhsclient/socket.hpp +51 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/libhsclient/string_buffer.hpp +118 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/libhsclient/string_ref.hpp +63 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/libhsclient/string_util.cpp +182 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/libhsclient/string_util.hpp +53 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/libhsclient/thread.hpp +84 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/libhsclient/util.hpp +25 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/misc/microbench-hs.log +130 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/misc/microbench-my.log +125 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/perl-Net-HandlerSocket/COPYRIGHT.txt +27 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/perl-Net-HandlerSocket/Changes +6 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/perl-Net-HandlerSocket/HandlerSocket.xs +632 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/perl-Net-HandlerSocket/MANIFEST +8 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/perl-Net-HandlerSocket/Makefile.PL +18 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/perl-Net-HandlerSocket/Makefile.PL.installed +20 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/perl-Net-HandlerSocket/README +30 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/perl-Net-HandlerSocket/lib/Net/HandlerSocket.pm +68 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/perl-Net-HandlerSocket/lib/Net/HandlerSocket/Pool.pm +362 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/perl-Net-HandlerSocket/perl-Net-HandlerSocket.spec.template +127 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/perl-Net-HandlerSocket/ppport.h +6375 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/perl-Net-HandlerSocket/t/Net-HandlerSocket.t +15 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/regtest/Makefile +79 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/regtest/common/binary_my.cnf +4 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/regtest/common/compat.sh +29 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/regtest/common/hstest.pm +66 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/regtest/test_01_lib/Makefile +4 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/regtest/test_01_lib/run.sh +27 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/regtest/test_01_lib/test01.expected +100 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/regtest/test_01_lib/test01.pl +38 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/regtest/test_01_lib/test02.expected +100 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/regtest/test_01_lib/test02.pl +49 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/regtest/test_01_lib/test03.expected +771 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/regtest/test_01_lib/test03.pl +61 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/regtest/test_01_lib/test04.expected +0 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/regtest/test_01_lib/test04.pl +63 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/regtest/test_01_lib/test05.expected +771 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/regtest/test_01_lib/test05.pl +59 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/regtest/test_01_lib/test06.expected +644 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/regtest/test_01_lib/test06.pl +90 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/regtest/test_01_lib/test07.expected +304 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/regtest/test_01_lib/test07.pl +98 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/regtest/test_01_lib/test08.expected +2 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/regtest/test_01_lib/test08.pl +48 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/regtest/test_01_lib/test09.expected +12 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/regtest/test_01_lib/test09.pl +67 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/regtest/test_01_lib/test10.expected +771 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/regtest/test_01_lib/test10.pl +93 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/regtest/test_01_lib/test11.expected +37 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/regtest/test_01_lib/test11.pl +112 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/regtest/test_01_lib/test12.expected +273 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/regtest/test_01_lib/test12.pl +134 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/regtest/test_01_lib/test13.expected +92 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/regtest/test_01_lib/test13.pl +92 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/regtest/test_01_lib/test14.expected +144 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/regtest/test_01_lib/test14.pl +80 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/regtest/test_01_lib/test15.expected +764 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/regtest/test_01_lib/test15.pl +114 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/regtest/test_01_lib/test16.expected +66 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/regtest/test_01_lib/test16.pl +88 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/regtest/test_01_lib/test17.expected +0 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/regtest/test_01_lib/test17.pl +125 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/regtest/test_01_lib/test18.expected +22 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/regtest/test_01_lib/test18.pl +63 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/regtest/test_01_lib/test19.expected +14894 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/regtest/test_01_lib/test19.pl +190 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/regtest/test_01_lib/test20.expected +2 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/regtest/test_01_lib/test20.pl +33 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/regtest/test_01_lib/test21.expected +11 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/regtest/test_01_lib/test21.pl +58 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/regtest/test_01_lib/test22.expected +9 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/regtest/test_01_lib/test22.pl +61 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/regtest/test_01_lib/test23.expected +101 -0
- data/ext/HandlerSocket-Plugin-for-MySQL/regtest/test_01_lib/test23.pl +53 -0
- data/ext/winebarrel-ruby-handlersocket-c19841e47ea2/README +33 -0
- data/ext/winebarrel-ruby-handlersocket-c19841e47ea2/extconf.rb +27 -0
- data/ext/winebarrel-ruby-handlersocket-c19841e47ea2/handlersocket.cpp +437 -0
- data/ext/winebarrel-ruby-handlersocket-c19841e47ea2/handlersocket.h +32 -0
- metadata +200 -0
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
# Before `make install' is performed this script should be runnable with
|
|
2
|
+
# `make test'. After `make install' it should work as `perl HandlerSocket.t'
|
|
3
|
+
|
|
4
|
+
#########################
|
|
5
|
+
|
|
6
|
+
# change 'tests => 1' to 'tests => last_test_to_print';
|
|
7
|
+
|
|
8
|
+
use Test::More tests => 1;
|
|
9
|
+
BEGIN { use_ok('Net::HandlerSocket') };
|
|
10
|
+
|
|
11
|
+
#########################
|
|
12
|
+
|
|
13
|
+
# Insert your test code below, the Test::More module is use()ed here so read
|
|
14
|
+
# its man page ( perldoc Test::More ) for help writing this test script.
|
|
15
|
+
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
|
|
2
|
+
SHELL=/bin/bash
|
|
3
|
+
|
|
4
|
+
all:
|
|
5
|
+
if [ "`uname -o`" = "Cygwin" ]; then \
|
|
6
|
+
../../scripts/vsenv90.bat -c 'make test'; \
|
|
7
|
+
else \
|
|
8
|
+
$(MAKE) test; \
|
|
9
|
+
fi
|
|
10
|
+
|
|
11
|
+
force:
|
|
12
|
+
export CXX="$(CXX)"; \
|
|
13
|
+
export SUNJDK="$(SUNJDK)"; \
|
|
14
|
+
for i in test_*; do \
|
|
15
|
+
pushd $$i > /dev/null; \
|
|
16
|
+
echo -n "$$i ... "; \
|
|
17
|
+
if [ -f ./DONE ]; then \
|
|
18
|
+
echo "skip"; \
|
|
19
|
+
elif ! ./run.sh > test.log; then \
|
|
20
|
+
echo -n "FORCE ... "; \
|
|
21
|
+
$(MAKE) accept; \
|
|
22
|
+
if ! ./run.sh > test.log; then \
|
|
23
|
+
echo "FAILED"; \
|
|
24
|
+
exit 1; \
|
|
25
|
+
fi; \
|
|
26
|
+
else \
|
|
27
|
+
echo "success"; \
|
|
28
|
+
fi; \
|
|
29
|
+
touch ./DONE; \
|
|
30
|
+
popd > /dev/null; \
|
|
31
|
+
done; \
|
|
32
|
+
exit 0;
|
|
33
|
+
|
|
34
|
+
test:
|
|
35
|
+
export CXX="$(CXX)"; \
|
|
36
|
+
export SUNJDK="$(SUNJDK)"; \
|
|
37
|
+
for i in test_*; do \
|
|
38
|
+
pushd $$i > /dev/null; \
|
|
39
|
+
echo -n "$$i ... "; \
|
|
40
|
+
if [ -f ./DONE ]; then \
|
|
41
|
+
echo "skip"; \
|
|
42
|
+
elif ! ./run.sh > test.log; then \
|
|
43
|
+
echo "FAILED"; \
|
|
44
|
+
exit 1; \
|
|
45
|
+
else \
|
|
46
|
+
echo "success"; \
|
|
47
|
+
fi; \
|
|
48
|
+
touch ./DONE; \
|
|
49
|
+
popd > /dev/null; \
|
|
50
|
+
done; \
|
|
51
|
+
exit 0;
|
|
52
|
+
|
|
53
|
+
retest: clean test
|
|
54
|
+
|
|
55
|
+
clean:
|
|
56
|
+
for i in test_*; do \
|
|
57
|
+
pushd $$i > /dev/null; \
|
|
58
|
+
if [ -f Makefile ]; then \
|
|
59
|
+
$(MAKE) clean; \
|
|
60
|
+
fi; \
|
|
61
|
+
rm -rf ./GWS_db; \
|
|
62
|
+
rm -f ./DONE; \
|
|
63
|
+
popd > /dev/null; \
|
|
64
|
+
done; \
|
|
65
|
+
exit 0;
|
|
66
|
+
rm -f test_*/*.log
|
|
67
|
+
rm -f test_*/*.out
|
|
68
|
+
rm -rf test_*/*_db
|
|
69
|
+
rm -f test_*/*.dll
|
|
70
|
+
rm -f test_*/*.idb
|
|
71
|
+
rm -f test_*/*.obj
|
|
72
|
+
rm -f test_*/*.manifest
|
|
73
|
+
rm -f test_*/*.so
|
|
74
|
+
|
|
75
|
+
cleanprepare:
|
|
76
|
+
rm -f ../run/*.exe
|
|
77
|
+
rm -f ../run/poi.jar
|
|
78
|
+
rm -f ../run/*.dll
|
|
79
|
+
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
#!/bin/sh
|
|
2
|
+
|
|
3
|
+
if [ "`uname -o`" = "Cygwin" ]; then
|
|
4
|
+
export DIFF='diff --ignore-space --strip-trailing-cr'
|
|
5
|
+
elif [ "`uname`" = "Darwin" ]; then
|
|
6
|
+
export DIFF='diff'
|
|
7
|
+
else
|
|
8
|
+
export DIFF='diff --ignore-space --strip-trailing-cr'
|
|
9
|
+
fi
|
|
10
|
+
|
|
11
|
+
compile_c() {
|
|
12
|
+
if [ "`uname -o`" = "Cygwin" ]; then
|
|
13
|
+
cl /W3 /I../.. /EHsc /FD /MD "$1" /link /DLL "/OUT:$2.dll" \
|
|
14
|
+
../../libase.lib 2> cl.log
|
|
15
|
+
else
|
|
16
|
+
$CXX -I../.. -O3 -g -Wall -fPIC -shared "$1" -o "$2.so"
|
|
17
|
+
fi
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
compile_j() {
|
|
21
|
+
if [ "`uname -o`" = "Cygwin" ]; then
|
|
22
|
+
jdk="`echo /cygdrive/c/Program\ Files/Java/jdk* | head -1`"
|
|
23
|
+
else
|
|
24
|
+
jdk="$SUNJDK"
|
|
25
|
+
fi
|
|
26
|
+
"$jdk/bin/javac" -g "$1"/*.java
|
|
27
|
+
"$jdk/bin/jar" -cf "$1.jar" "$1"/*.class
|
|
28
|
+
}
|
|
29
|
+
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
|
|
2
|
+
# vim:sw=2:ai
|
|
3
|
+
|
|
4
|
+
package hstest;
|
|
5
|
+
|
|
6
|
+
use DBI;
|
|
7
|
+
use Net::HandlerSocket;
|
|
8
|
+
|
|
9
|
+
our %conf = ();
|
|
10
|
+
|
|
11
|
+
sub get_conf_env {
|
|
12
|
+
my ($key, $defval) = @_;
|
|
13
|
+
return $ENV{$key} || $defval;
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
sub init_conf {
|
|
17
|
+
$conf{host} = get_conf_env("MYHOST", "localhost");
|
|
18
|
+
$conf{myport} = get_conf_env("MYPORT", 3306);
|
|
19
|
+
$conf{dbname} = get_conf_env("MYDBNAME", "hstestdb");
|
|
20
|
+
$conf{ssps} = get_conf_env("MYSSPS");
|
|
21
|
+
$conf{user} = get_conf_env("MYSQLUSER", "root");
|
|
22
|
+
$conf{pass} = get_conf_env("MYSQLPASS", "");
|
|
23
|
+
$conf{hsport} = get_conf_env("HSPORT", 9998);
|
|
24
|
+
$conf{hspass} = get_conf_env("HSPASS", undef);
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
sub get_dbi_connection {
|
|
28
|
+
my ($dbname, $host, $myport, $ssps, $user, $pass)
|
|
29
|
+
= ($conf{dbname}, $conf{host}, $conf{myport}, $conf{ssps},
|
|
30
|
+
$conf{user}, $conf{pass});
|
|
31
|
+
my $mycnf = "binary_my.cnf";
|
|
32
|
+
my $dsn = "DBI:mysql:database=;host=$host;port=$myport"
|
|
33
|
+
. ";mysql_server_prepare=$ssps"
|
|
34
|
+
. ";mysql_read_default_group=perl"
|
|
35
|
+
. ";mysql_read_default_file=../common/$mycnf";
|
|
36
|
+
my $dbh = DBI->connect($dsn, $user, $pass, { RaiseError => 1 });
|
|
37
|
+
return $dbh;
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
sub init_testdb {
|
|
41
|
+
my $charset = $_[0] || "binary";
|
|
42
|
+
my $dbh = get_dbi_connection();
|
|
43
|
+
my $dbname = $conf{dbname};
|
|
44
|
+
$dbh->do("drop database if exists $dbname");
|
|
45
|
+
$dbh->do("create database $dbname default character set $charset");
|
|
46
|
+
$dbh->do("use $dbname");
|
|
47
|
+
return $dbh;
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
sub get_hs_connection {
|
|
51
|
+
my ($host, $port) = @_;
|
|
52
|
+
$host ||= $conf{host};
|
|
53
|
+
$port ||= $conf{hsport};
|
|
54
|
+
my $hsargs = { 'host' => $host, 'port' => $port };
|
|
55
|
+
my $conn = new Net::HandlerSocket($hsargs);
|
|
56
|
+
if (defined($conn) && defined($conf{hspass})) {
|
|
57
|
+
$conn->auth($conf{hspass});
|
|
58
|
+
}
|
|
59
|
+
return $conn;
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
|
|
63
|
+
init_conf();
|
|
64
|
+
|
|
65
|
+
1;
|
|
66
|
+
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
#!/bin/bash
|
|
2
|
+
|
|
3
|
+
TESTS="01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23";
|
|
4
|
+
|
|
5
|
+
source ../common/compat.sh
|
|
6
|
+
|
|
7
|
+
for i in $TESTS; do
|
|
8
|
+
perl "test$i.pl" > test$i.log 2> test$i.log2
|
|
9
|
+
done
|
|
10
|
+
for i in $TESTS; do
|
|
11
|
+
if ! $DIFF -u test$i.log test$i.expected; then
|
|
12
|
+
echo "test$i failed";
|
|
13
|
+
exit 1
|
|
14
|
+
fi
|
|
15
|
+
if [ -f "test$i.expect2" ]; then
|
|
16
|
+
lines="`wc -l < test$i.expect2`"
|
|
17
|
+
head -$lines test$i.log2 > test$i.log2h
|
|
18
|
+
if ! $DIFF -u test$i.log2h test$i.expect2 && \
|
|
19
|
+
! $DIFF -u test$i.log2h test$i.expect2ef; then
|
|
20
|
+
echo "test$i failed";
|
|
21
|
+
exit 1
|
|
22
|
+
fi
|
|
23
|
+
fi
|
|
24
|
+
done
|
|
25
|
+
echo "OK."
|
|
26
|
+
exit 0
|
|
27
|
+
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
k0 v1020
|
|
2
|
+
k1 v6351
|
|
3
|
+
k10 v70410
|
|
4
|
+
k11 v75111
|
|
5
|
+
k12 v36712
|
|
6
|
+
k13 v40013
|
|
7
|
+
k14 v39714
|
|
8
|
+
k15 v17015
|
|
9
|
+
k16 v71916
|
|
10
|
+
k17 v73417
|
|
11
|
+
k18 v58718
|
|
12
|
+
k19 v49419
|
|
13
|
+
k2 v8032
|
|
14
|
+
k20 v52320
|
|
15
|
+
k21 v95421
|
|
16
|
+
k22 v43322
|
|
17
|
+
k23 v82023
|
|
18
|
+
k24 v28324
|
|
19
|
+
k25 v83725
|
|
20
|
+
k26 v20526
|
|
21
|
+
k27 v41527
|
|
22
|
+
k28 v54528
|
|
23
|
+
k29 v58329
|
|
24
|
+
k3 v9253
|
|
25
|
+
k30 v5230
|
|
26
|
+
k31 v32331
|
|
27
|
+
k32 v61432
|
|
28
|
+
k33 v67933
|
|
29
|
+
k34 v80534
|
|
30
|
+
k35 v45135
|
|
31
|
+
k36 v11536
|
|
32
|
+
k37 v26937
|
|
33
|
+
k38 v21838
|
|
34
|
+
k39 v61739
|
|
35
|
+
k4 v7754
|
|
36
|
+
k40 v87840
|
|
37
|
+
k41 v34541
|
|
38
|
+
k42 v51242
|
|
39
|
+
k43 v96943
|
|
40
|
+
k44 v40844
|
|
41
|
+
k45 v29145
|
|
42
|
+
k46 v85846
|
|
43
|
+
k47 v95347
|
|
44
|
+
k48 v71048
|
|
45
|
+
k49 v14249
|
|
46
|
+
k5 v5375
|
|
47
|
+
k50 v68250
|
|
48
|
+
k51 v93451
|
|
49
|
+
k52 v62152
|
|
50
|
+
k53 v96553
|
|
51
|
+
k54 v57454
|
|
52
|
+
k55 v20455
|
|
53
|
+
k56 v29856
|
|
54
|
+
k57 v13457
|
|
55
|
+
k58 v98358
|
|
56
|
+
k59 v44459
|
|
57
|
+
k6 v5926
|
|
58
|
+
k60 v14460
|
|
59
|
+
k61 v15261
|
|
60
|
+
k62 v18762
|
|
61
|
+
k63 v21563
|
|
62
|
+
k64 v864
|
|
63
|
+
k65 v69765
|
|
64
|
+
k66 v65166
|
|
65
|
+
k67 v28067
|
|
66
|
+
k68 v70168
|
|
67
|
+
k69 v53769
|
|
68
|
+
k7 v4147
|
|
69
|
+
k70 v41370
|
|
70
|
+
k71 v6971
|
|
71
|
+
k72 v8672
|
|
72
|
+
k73 v82273
|
|
73
|
+
k74 v67074
|
|
74
|
+
k75 v37075
|
|
75
|
+
k76 v80676
|
|
76
|
+
k77 v68877
|
|
77
|
+
k78 v2678
|
|
78
|
+
k79 v6679
|
|
79
|
+
k8 v5908
|
|
80
|
+
k80 v80280
|
|
81
|
+
k81 v17181
|
|
82
|
+
k82 v55782
|
|
83
|
+
k83 v84783
|
|
84
|
+
k84 v77784
|
|
85
|
+
k85 v73085
|
|
86
|
+
k86 v98786
|
|
87
|
+
k87 v11587
|
|
88
|
+
k88 v64688
|
|
89
|
+
k89 v49689
|
|
90
|
+
k9 v3029
|
|
91
|
+
k90 v12090
|
|
92
|
+
k91 v68491
|
|
93
|
+
k92 v37492
|
|
94
|
+
k93 v6593
|
|
95
|
+
k94 v37094
|
|
96
|
+
k95 v17495
|
|
97
|
+
k96 v82896
|
|
98
|
+
k97 v86797
|
|
99
|
+
k98 v75998
|
|
100
|
+
k99 v70399
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
#!/usr/bin/perl
|
|
2
|
+
|
|
3
|
+
# vim:sw=2:ai
|
|
4
|
+
|
|
5
|
+
# test for libmysql
|
|
6
|
+
|
|
7
|
+
BEGIN {
|
|
8
|
+
push @INC, "../common/";
|
|
9
|
+
};
|
|
10
|
+
|
|
11
|
+
use strict;
|
|
12
|
+
use warnings;
|
|
13
|
+
use hstest;
|
|
14
|
+
|
|
15
|
+
my $dbh = hstest::init_testdb();
|
|
16
|
+
my $table = 'hstesttbl';
|
|
17
|
+
my $tablesize = 100;
|
|
18
|
+
$dbh->do(
|
|
19
|
+
"create table $table (k varchar(30) primary key, v varchar(30) not null) " .
|
|
20
|
+
"engine = innodb");
|
|
21
|
+
srand(999);
|
|
22
|
+
|
|
23
|
+
my %valmap = ();
|
|
24
|
+
|
|
25
|
+
my $sth = $dbh->prepare("insert into $table values (?,?)");
|
|
26
|
+
for (my $i = 0; $i < $tablesize; ++$i) {
|
|
27
|
+
my $k = "k" . $i;
|
|
28
|
+
my $v = "v" . int(rand(1000)) . $i;
|
|
29
|
+
$sth->execute($k, $v);
|
|
30
|
+
$valmap{$k} = $v;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
my $aref = $dbh->selectall_arrayref("select k,v from $table order by k");
|
|
34
|
+
for my $row (@$aref) {
|
|
35
|
+
my ($k, $v) = @$row;
|
|
36
|
+
print "$k $v\n";
|
|
37
|
+
}
|
|
38
|
+
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
k0 v1020
|
|
2
|
+
k1 v6351
|
|
3
|
+
k10 v70410
|
|
4
|
+
k11 v75111
|
|
5
|
+
k12 v36712
|
|
6
|
+
k13 v40013
|
|
7
|
+
k14 v39714
|
|
8
|
+
k15 v17015
|
|
9
|
+
k16 v71916
|
|
10
|
+
k17 v73417
|
|
11
|
+
k18 v58718
|
|
12
|
+
k19 v49419
|
|
13
|
+
k2 v8032
|
|
14
|
+
k20 v52320
|
|
15
|
+
k21 v95421
|
|
16
|
+
k22 v43322
|
|
17
|
+
k23 v82023
|
|
18
|
+
k24 v28324
|
|
19
|
+
k25 v83725
|
|
20
|
+
k26 v20526
|
|
21
|
+
k27 v41527
|
|
22
|
+
k28 v54528
|
|
23
|
+
k29 v58329
|
|
24
|
+
k3 v9253
|
|
25
|
+
k30 v5230
|
|
26
|
+
k31 v32331
|
|
27
|
+
k32 v61432
|
|
28
|
+
k33 v67933
|
|
29
|
+
k34 v80534
|
|
30
|
+
k35 v45135
|
|
31
|
+
k36 v11536
|
|
32
|
+
k37 v26937
|
|
33
|
+
k38 v21838
|
|
34
|
+
k39 v61739
|
|
35
|
+
k4 v7754
|
|
36
|
+
k40 v87840
|
|
37
|
+
k41 v34541
|
|
38
|
+
k42 v51242
|
|
39
|
+
k43 v96943
|
|
40
|
+
k44 v40844
|
|
41
|
+
k45 v29145
|
|
42
|
+
k46 v85846
|
|
43
|
+
k47 v95347
|
|
44
|
+
k48 v71048
|
|
45
|
+
k49 v14249
|
|
46
|
+
k5 v5375
|
|
47
|
+
k50 v68250
|
|
48
|
+
k51 v93451
|
|
49
|
+
k52 v62152
|
|
50
|
+
k53 v96553
|
|
51
|
+
k54 v57454
|
|
52
|
+
k55 v20455
|
|
53
|
+
k56 v29856
|
|
54
|
+
k57 v13457
|
|
55
|
+
k58 v98358
|
|
56
|
+
k59 v44459
|
|
57
|
+
k6 v5926
|
|
58
|
+
k60 v14460
|
|
59
|
+
k61 v15261
|
|
60
|
+
k62 v18762
|
|
61
|
+
k63 v21563
|
|
62
|
+
k64 v864
|
|
63
|
+
k65 v69765
|
|
64
|
+
k66 v65166
|
|
65
|
+
k67 v28067
|
|
66
|
+
k68 v70168
|
|
67
|
+
k69 v53769
|
|
68
|
+
k7 v4147
|
|
69
|
+
k70 v41370
|
|
70
|
+
k71 v6971
|
|
71
|
+
k72 v8672
|
|
72
|
+
k73 v82273
|
|
73
|
+
k74 v67074
|
|
74
|
+
k75 v37075
|
|
75
|
+
k76 v80676
|
|
76
|
+
k77 v68877
|
|
77
|
+
k78 v2678
|
|
78
|
+
k79 v6679
|
|
79
|
+
k8 v5908
|
|
80
|
+
k80 v80280
|
|
81
|
+
k81 v17181
|
|
82
|
+
k82 v55782
|
|
83
|
+
k83 v84783
|
|
84
|
+
k84 v77784
|
|
85
|
+
k85 v73085
|
|
86
|
+
k86 v98786
|
|
87
|
+
k87 v11587
|
|
88
|
+
k88 v64688
|
|
89
|
+
k89 v49689
|
|
90
|
+
k9 v3029
|
|
91
|
+
k90 v12090
|
|
92
|
+
k91 v68491
|
|
93
|
+
k92 v37492
|
|
94
|
+
k93 v6593
|
|
95
|
+
k94 v37094
|
|
96
|
+
k95 v17495
|
|
97
|
+
k96 v82896
|
|
98
|
+
k97 v86797
|
|
99
|
+
k98 v75998
|
|
100
|
+
k99 v70399
|