Index: trunk/tools/neb_rawOTA_host_scan.pl
===================================================================
--- trunk/tools/neb_rawOTA_host_scan.pl	(revision 36421)
+++ trunk/tools/neb_rawOTA_host_scan.pl	(revision 36434)
@@ -21,9 +21,10 @@
     ) or die "Unable to connect to database $DBI::errstr\n";
 
-my ($host,$min_ins_id,$verbose,$limit,$continue);
+my ($host,$min_ins_id,$verbose,$limit,$continue,$alt);
 $min_ins_id = 0;
 $verbose = 0;
 $limit = 10000;
 $continue = 0;
+$alt = 0;
 
 GetOptions(
@@ -33,4 +34,5 @@
     'limit|l=s'     => \$limit,
     'continue|c'    => \$continue,
+    'alternate|a'   => \$alt,
     ) or pod2usage( 2 );
 pod2usage( -msg => "Unknown option: @ARGV", -exitval => 2 ) if @ARGV;
@@ -50,6 +52,14 @@
 my $vol_id = shift( @{ ${ $r_vol }[0] });
 
+# Get max ins_id
+my $max_id_sth = "SELECT ins_id FROM instance WHERE vol_id = $vol_id ORDER BY ins_id DESC limit 1";
+my $r_max_id   = $db->selectall_arrayref( $max_id_sth );
+unless (defined(${ $r_max_id }[0])) {
+    die "Cannot find max_id";
+}
+my $max_ins_id = shift( @{ ${ $r_max_id }[0] });
+
 if ($verbose) {
-    print "$host $volume $vol_id $min_ins_id\n";
+    print "$host $volume $vol_id $min_ins_id $max_ins_id\n";
 }
 
@@ -70,10 +80,13 @@
 my $number = 0;
 do {
-    my $ins_id_sth = "SELECT ins_id,so_id,uri FROM instance WHERE vol_id = ${vol_id} AND ins_id > $min_ins_id LIMIT $limit";
+    my $ins_id_sth = "SELECT ins_id,so_id,uri FROM instance WHERE vol_id = ${vol_id} AND ins_id > $min_ins_id AND ins_id <= $max_ins_id  LIMIT $limit";
+    if ($alt) {
+	$ins_id_sth = "SELECT ins_id,so_id,uri,vol_id FROM instance WHERE ins_id > $min_ins_id AND ins_id <= $max_ins_id  LIMIT $limit";
+    }
     my $r_ins      = $db->selectall_arrayref( $ins_id_sth );
     my $last_ins_id = 0;
     $number = 0;
     foreach $rr (@{ $r_ins }) {
-	my ($ins_id,$so_id,$uri) = @{ $rr };
+	my ($ins_id,$so_id,$uri,$v_id) = @{ $rr };
 	if ($verbose) {
 #	print ("  $ins_id $so_id $uri\n");
@@ -81,4 +94,7 @@
 	$number++;
 	$last_ins_id = $ins_id;
+	if ($alt) {
+	    if ($v_id != $vol_id) { next; }
+	}
 	if ($uri !~ /ota...fits/) { next; }
 	my $have_b_node = 0;
@@ -138,3 +154,3 @@
 	$min_ins_id = $last_ins_id;
     }
-} while ($continue && $number != 0);
+} while (($continue && $number != 0) || ($min_ins_id <= $max_ins_id));
