summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorhuangming <huangminghuang@users.noreply.github.com>2003-11-27 17:23:06 +0000
committerhuangming <huangminghuang@users.noreply.github.com>2003-11-27 17:23:06 +0000
commit9274784324593e31c1bba82eafabde77fd8c8b3a (patch)
treeb1b65f556ffc1033837816b3b3bb18e7154acab0
parent1ce2cbf3c5f74988d2654457021db96da7b77f15 (diff)
downloadATCD-9274784324593e31c1bba82eafabde77fd8c8b3a.tar.gz
*** empty log message ***
-rwxr-xr-xTAO/orbsvcs/FTRT_Event_Service/rtec_test.pl60
-rwxr-xr-xTAO/orbsvcs/FTRT_Event_Service/test.pl144
2 files changed, 149 insertions, 55 deletions
diff --git a/TAO/orbsvcs/FTRT_Event_Service/rtec_test.pl b/TAO/orbsvcs/FTRT_Event_Service/rtec_test.pl
new file mode 100755
index 00000000000..08cfb982905
--- /dev/null
+++ b/TAO/orbsvcs/FTRT_Event_Service/rtec_test.pl
@@ -0,0 +1,60 @@
+#!/usr/bin/perl
+#$Id$
+
+use strict;
+use lib '../../../bin';
+use PerlACE::Run_Test;
+
+my $freq = 10;
+my $num_events = 20;
+my $result_dir = "RTEC_RESULT";
+my $TAO_ROOT=@ENV{"TAO_ROOT"};
+
+my $i;
+
+mkdir $result_dir unless -d $result_dir;
+
+
+for ($i=0; $i< 100; ++$i) {
+ chdir "$TAO_ROOT/orbsvcs/FTRT_Event_Service/$result_dir";
+ my $mark = "m$i";
+ mkdir $mark unless -d $mark;
+
+ #start Event_Service
+
+ my $FILEPATH = "$TAO_ROOT/orbsvcs/FTRT_Event_Service/$result_dir/$mark";
+ my $es_ior = "$FILEPATH/es.ior";
+
+ unlink ($es_ior) if -e $es_ior;
+
+ chdir "$TAO_ROOT/orbsvcs/Event_Service";
+ my $ES = new PerlACE::Process ("Event_Service", "-o $es_ior");
+
+ $ES->Spawn ();
+
+ if (PerlACE::waitforfile_timed ("$es_ior", 5) == -1) {
+ print STDERR "ERROR: cannot find file <$es_ior>\n";
+ $ES->Kill ();
+ exit 1;
+ }
+
+ chdir "$TAO_ROOT/orbsvcs/FTRT_Event_Service";
+
+ #start consumer
+
+
+ my $client_options = "-i file://$es_ior -f $freq -k $num_events -ORBLogFile $FILEPATH";
+
+ my $CONSUMER = new PerlACE::Process ("rtec_consumer", "$client_options/c0.txt");
+ $CONSUMER->Spawn();
+
+ #start supplier
+
+ my $SUPPLIER = new PerlACE::Process ("rtec_supplier", "$client_options/s0.txt");
+ $SUPPLIER->Spawn();
+
+ #wait until consumer complete
+
+ $CONSUMER->Wait;
+ $ES->TerminateWaitKill(0);
+}
diff --git a/TAO/orbsvcs/FTRT_Event_Service/test.pl b/TAO/orbsvcs/FTRT_Event_Service/test.pl
index 082aeb5c2cc..0725a2b3ad8 100755
--- a/TAO/orbsvcs/FTRT_Event_Service/test.pl
+++ b/TAO/orbsvcs/FTRT_Event_Service/test.pl
@@ -1,4 +1,4 @@
-#!/usr/bin/perla
+#!/usr/bin/perl
#$Id$
@@ -12,14 +12,16 @@ my $HOSTNAME=`hostname`;
my $client_args;
my $NameServicePort=$ENV{"ORBNameServicePort"};
my $result_dir="R";
-my $iterations=100;
-my $num_ecs;
-my $num_consumers;
-my $num_suppliers;
-my $transaction_depth;
+my $iterations=10;
+my $num_ecs = 2;
+my $num_consumers = 1;
+my $num_suppliers = 1;
+my $transaction_depth = 1;
my $is_AMI="NO";
my $heartbeat="NA";
my $ns_args;
+my $mark;
+my $freq=1;
$NameServicePort = 10000 unless defined($NameServicePort);
$ENV{"ORBNameServicePort"} = $NameServicePort;
@@ -63,14 +65,32 @@ while (defined($ARGV[0]))
shift(@ARGV);
}
elsif (/-iteration/) {
- $iterations=$ARGV[1];
- shift(@ARGV);
- }
- shift(@ARGV)
+ $iterations=$ARGV[1];
+ shift(@ARGV);
+ }
+ elsif (/-frequency/) {
+ $result_dir .= "_F$ARGV[1]";
+ $freq=$ARGV[1];
+ shift(@ARGV);
+ }
+ elsif (/-mark/) {
+ $mark="m$ARGV[1]";
+ shift(@ARGV);
+ }
+ shift(@ARGV);
}
mkdir $result_dir unless -d $result_dir;
+chdir "$result_dir";
+mkdir $mark unless -d $mark;
+
my $TAO_ROOT=$ENV{"TAO_ROOT"};
+chdir "$TAO_ROOT/orbsvcs/FTRT_Event_Service";
+
+my $rd=$result_dir;
+$result_dir .= "/$mark";
+
+
my $ns_ior="$TAO_ROOT/orbsvcs/FTRT_Event_Service/$result_dir/ns.ior";
unlink ($ns_ior) if -e $ns_ior;
@@ -80,34 +100,38 @@ my $NS = new PerlACE::Process ("Naming_Service", "$ns_args");
$NS->Spawn ();
-if (PerlACE::waitforfile_timed ("$ns_ior", 5) == -1) {
+if (PerlACE::waitforfile_timed ("$ns_ior", 100) == -1) {
print STDERR "ERROR: cannot find file <$ns_ior>\n";
$NS->Kill ();
exit 1;
-}
+}
$client_args .= " -ORBInitRef NameService=file://$ns_ior";
#starting the primary
my @ECS;
my $FILE_PATH="$TAO_ROOT/orbsvcs/FTRT_Event_Service/$result_dir";
+my $pid;
+
+system("ps -u hh1 | grep ftrt");
chdir "$TAO_ROOT/orbsvcs/FTRT_Event_Service/Event_Service";
-#$ECS[0]=Proc::Background->new("./ftrt_eventservice $client_args -p -d 3 2>&1 | tee $FILE_PATH/ec0.txt")
-$ECS[0]=Proc::Background->new("./ftrt_eventservice $client_args -p")
- || die "Cannot start Primary\n";
-print "Primary Started\n";
+my $crash_msg = $iterations/2;
+$ECS[0]= new PerlACE::Process ("ftrt_eventservice", "$client_args -p -f $crash_msg -ORBLogFile $FILE_PATH/ec0.txt");
+$ECS[0]->Spawn ();
+print "primary started\n";
+
+sleep 2;
-sleep 5;
#starting backups
my $i;
for ($i=1; $i< $num_ecs; ++$i) {
-# $ECS[$i]=Proc::Background->new("./ftrt_eventservice $client_args -j -d 3 2>&1 | tee $FILE_PATH/ec$i.txt")
- $ECS[$i]=Proc::Background->new("./ftrt_eventservice $client_args -j")
- || die "Cannot start backup $i";
+ my $FILENAME="$FILE_PATH/ec$i.txt";
+ $ECS[$i]=new PerlACE::Process ("ftrt_eventservice", "$client_args -j -ORBLogFile $FILE_PATH/ec$i.txt");
+ $ECS[$i]->Spawn ();
print "backup $i started\n";
- sleep 10;
+ sleep 2;
}
chdir "$TAO_ROOT/orbsvcs/tests/FtRtEvent";
@@ -118,68 +142,78 @@ my @CONSUMERS;
for ($i=0 ; $i < $num_consumers ; ++$i){
my $FILENAME="$FILE_PATH/c$i.txt";
- $CONSUMERS[$i] = Proc::Background->new("./consumer $client_args -k $iterations > $FILENAME 2>&1");
+ my $IOR="$FILE_PATH/c$i.ior";
+ $CONSUMERS[$i] = new PerlACE::Process ("ftrtec_consumer", "$client_args -k $iterations -p $IOR -ORBLogFile $FILENAME");
+ $CONSUMERS[$i]->Spawn();
print "consumer $i started\n";
}
#starting suppliers
+my $supplier_status;
+
my @SUPPLIERS;
for ($i=0 ; $i < $num_suppliers ; ++$i){
my $FILENAME="$FILE_PATH/s$i.txt";
- $SUPPLIERS[$i] = Proc::Background->new("./supplier $client_args -k $iterations -d 1 2>&1 | tee $FILENAME");
- print "supplier $i started\n";
+ my $IOR="$FILE_PATH/c$i.ior";
+ print "starting supplier $i\n";
+ $SUPPLIERS[$i] = new PerlACE::Process ("ftrtec_supplier", "$client_args -k $iterations -f $freq -p $IOR -ORBLogFile $FILENAME");
+ my $status = $SUPPLIERS[$i]->SpawnWaitKill(3+$iterations*2/$freq);
+ $supplier_status = -1 if ($status == -1);
}
for ($i=0 ; $i < $num_consumers ; ++$i){
- $CONSUMERS[$i]->wait;
+ $CONSUMERS[$i]->TerminateWaitKill(2);
}
-for ($i=1; $i< @ECS; ++$i) {
- $ECS[$i]->die;
+for ($i=0; $i< @ECS; ++$i) {
+ $ECS[$i]->TerminateWaitKill(0);
}
$NS->TerminateWaitKill(0);
-my @supplier_subscription;
+#my @supplier_subscription;
-chdir "$FILE_PATH";
-foreach (<s*.txt>) {
- open (LINE, $_);
- while (<LINE>) {
- /latency = (\d+)/ && push(@supplier_subscription, $1);
- }
-}
+#chdir "$FILE_PATH";
+#foreach (<s*.txt>) {
+# open (LINE, $_);
+# while (<LINE>) {
+# /latency = (\d+)/ && push(@supplier_subscription, $1);
+# }
+#}
-my @consumer_subscription;
-my @event_time;
+#my @consumer_subscription;
+#my @event_time;
+#my @losts;
-foreach(<c*.txt>) {
- open (LINE, $_);
- while (<LINE>) {
- /latency = (\d+)/ && push(@consumer_subscription, $1);
- /single trip time = (\d+)/ && push(@event_time, $1);
- }
-}
+#foreach(<c*.txt>) {
+# open (LINE, $_);
+# while (<LINE>) {
+# /latency = (\d+)/ && push(@consumer_subscription, $1);
+# /elapsed time = (\d+)/ && push(@event_time, $1);
+# /(\d+) events lost/ && push(@losts, $1);
+# }
+#}
-my $sl = mean(@supplier_subscription);
-my $cl = mean(@consumer_subscription);
-my $em = mean(@event_time);
-my $dev_em = dev(@event_time);
+#my $sl = mean(@supplier_subscription);
+#my $cl = mean(@consumer_subscription);
+#my $em = mean(@event_time);
+#my $dev_em = dev(@event_time);
+#my $lost = mean(@losts);
-chdir "$TAO_ROOT/orbsvcs/FTRT_Event_Service";
+#chdir "$TAO_ROOT/orbsvcs/FTRT_Event_Service";
-open(RESULT, ">>$TAO_ROOT/orbsvcs/FTRT_Event_Service/result.txt") or die "cannot open result.txt";
+#open(RESULT, ">>$TAO_ROOT/orbsvcs/FTRT_Event_Service/$rd/result.txt") or die "cannot open result.txt";
-write (RESULT);
+#write (RESULT);
-format RESULT =
- @>> @>> @>> @>> @>>> @>> @>>>>>>>>>> @>>>>>>>>> @>>>>>>>>> @######.###
-$num_ecs, $num_suppliers, $num_consumers, $transaction_depth, $is_AMI, $heartbeat, $sl, $cl, $em, $dev_em
-.
+#format RESULT =
+# @>> @>> @>> @>> @>>> @>> @>> @>>>>>>>>>> @>>>>>>>>> @>>>>>>>>> @######.### @>>
+#$num_ecs, $num_suppliers, $num_consumers, $transaction_depth, $is_AMI, $heartbeat, $freq ,$sl, $cl, $em, $dev_em, $lost
+#.
sub mean {
my $count = @_;