summaryrefslogtreecommitdiff
path: root/test/perl
diff options
context:
space:
mode:
authorJames E. King III <jking@apache.org>2018-03-16 16:07:42 -0400
committerJames E. King III <jking@apache.org>2018-03-19 14:38:49 -0400
commit9bea32f73c36a8f53a45e818cfafe81b6fefefae (patch)
tree9598fe6b03c4b22d7baf84607bbabbbda1d66bc0 /test/perl
parent02fbe0ecc795881fe11a447d0a5f6f2f656f7bb4 (diff)
downloadthrift-9bea32f73c36a8f53a45e818cfafe81b6fefefae.tar.gz
THRIFT-4515: cross server test improvement: graceful test server shutdown
This closes #1509
Diffstat (limited to 'test/perl')
-rw-r--r--test/perl/TestServer.pl8
1 files changed, 8 insertions, 0 deletions
diff --git a/test/perl/TestServer.pl b/test/perl/TestServer.pl
index 7d8f929b4..e8c1cfa9e 100644
--- a/test/perl/TestServer.pl
+++ b/test/perl/TestServer.pl
@@ -26,6 +26,8 @@ use Data::Dumper;
use Getopt::Long qw(GetOptions);
use Time::HiRes qw(gettimeofday);
+$SIG{INT} = \&sigint_handler;
+
use lib '../../lib/perl/lib';
use lib 'gen-perl';
@@ -146,6 +148,12 @@ if ($opts{"domain-socket"}) {
my $server = new Thrift::SimpleServer($processor, $serversocket, $transport, $protocol);
print "Starting \"simple\" server ($opts{transport}/$opts{protocol}) listen on: $listening_on\n";
$server->serve();
+print "done.\n";
+
+sub sigint_handler {
+ print "received SIGINT, stopping...\n";
+ $server->stop();
+}
###
### Test server implementation