]> git.proxmox.com Git - pve-ha-manager.git/commitdiff
improve loop simulation - use same timeouts as with real hardware
authorDietmar Maurer <dietmar@proxmox.com>
Sun, 7 Dec 2014 09:09:14 +0000 (10:09 +0100)
committerDietmar Maurer <dietmar@proxmox.com>
Sun, 7 Dec 2014 09:09:14 +0000 (10:09 +0100)
PVE/HA/Sim/Env.pm
PVE/HA/Sim/Hardware.pm
PVE/HA/Sim/TestHardware.pm

index 35e0fdc6ff44e3247f4592d228d0ac245ca1b0d6..ad666f2bdf7802928952584a909482147c09ac69 100644 (file)
@@ -28,7 +28,7 @@ sub new {
     $self->{cur_time} = 0;
     $self->{loop_delay} = 0;
 
-    $self->{lock_timeout} = 200;
+    $self->{lock_timeout} = 120;
 
     $self->{log_id} = $log_id;
 
@@ -260,7 +260,9 @@ sub loop_end_hook {
 
     die "loop take too long ($delay seconds)\n" if $delay > 30;
 
-    $self->{cur_time} += $delay;
+    # $self->{cur_time} += $delay;
+
+    $self->{cur_time} += 1; # easier for simulation
 }
 
 sub watchdog_open {
index 3b0e61553dfa239d46f372b3247ec46b356447f4..88d78937f7d50721a35c65bcf1b933b3905ea4e9 100644 (file)
@@ -16,7 +16,7 @@ use Fcntl qw(:DEFAULT :flock);
 use File::Copy;
 use File::Path qw(make_path remove_tree);
 
-my $watchdog_timeout = 180;
+my $watchdog_timeout = 60;
 
 
 # Status directory layout
index e086393bf3b032453f58ba2120323c8b524ebe06..4b785fcd60306159872ea3311b5853e308b7c25e 100644 (file)
@@ -125,6 +125,11 @@ sub run {
 
        my @nodes = sort keys %{$self->{nodes}};
 
+       my $nodecount = scalar(@nodes);
+
+       my $looptime = $nodecount*2;
+       $looptime = 20 if $looptime < 20;
+
        foreach my $node (@nodes) {
 
            my $d = $self->{nodes}->{$node};
@@ -163,7 +168,9 @@ sub run {
            }
        }
 
-       $self->{cur_time} = $starttime + 20 if ($self->{cur_time} - $starttime) < 20;
+       
+       $self->{cur_time} = $starttime + $looptime 
+           if ($self->{cur_time} - $starttime) < $looptime;
 
        die "simulation end\n" if $self->{cur_time} > $max_sim_time;