diff --git a/web/pages/mxq/mxq.in b/web/pages/mxq/mxq.in
index 1aecc0ea..f7189880 100755
--- a/web/pages/mxq/mxq.in
+++ b/web/pages/mxq/mxq.in
@@ -12,13 +12,14 @@ our %DAEMON_STATUS_NAME;
our $dbh;
our $hostconfig;
our $q;
+our $NL="\n";
our $LIMIT=100000; # max rows
sub STYLE {
return <<'EOF';
EOF
}
sub HEAD {
- return "\n
\n".STYLE()."\n";
+ return "\n\n".STYLE()."\n"."";
}
sub selfurl {
@@ -200,10 +201,10 @@ sub colorize {
sub colorize_status {
my ($status)=@_;
- return colorize("green", $status) if $status =~ m/FINISHED/;
- return colorize("orange",$status) if $status =~ m/RUNNING/;
- return colorize("blue", $status) if $status =~ m/INQ/;
- return colorize("red", $status) if $status =~ m/KILL|FAIL/;
+ return colorize("green", $status) if $status =~ m/FINISHED/;
+ return colorize("chocolate",$status) if $status =~ m/RUNNING/;
+ return colorize("blue", $status) if $status =~ m/INQ/;
+ return colorize("red", $status) if $status =~ m/KILL|FAIL/;
return $status;
}
@@ -224,15 +225,15 @@ sub job_table_pending {
my $sth=$dbh->prepare('SELECT '.join(',',@cols).' FROM mxq_job,mxq_group WHERE mxq_job.group_id=mxq_group.group_id AND job_status=0 ORDER BY job_status,date_submit');
$sth->execute(@bind_args);
- $out.='';
+ $out.=$NL.'';
- $out.=$q->Tr($q->th(\@cols));
+ $out.=$NL.$q->Tr($q->th(\@cols));
my $cnt=0;
while (my $row=$sth->fetchrow_arrayref()) {
my ($job_id,$user_name,$date_submit,$job_threads)=@$row;
- $out.=$q->Tr(
+ $out.=$NL.$q->Tr(
$q->td({class=>'number'},$q->a({href=>selfurl("/job/$job_id")},$job_id)),
$q->td($user_name),
$q->td($date_submit),
@@ -240,7 +241,7 @@ sub job_table_pending {
);
++$cnt == $LIMIT and last;
}
- $out.='
';
+ $out.=$NL.'
'.$NL;
if ($cnt==$LIMIT) {
$out.=$q->p($q->em("(truncated after $LIMIT rows)"));
}
@@ -258,14 +259,14 @@ sub job_table_running {
my $sth=$dbh->prepare('SELECT '.join(',',@cols).' FROM mxq_job,mxq_group WHERE mxq_job.group_id=mxq_group.group_id AND job_status=200 ORDER BY job_status,date_start');
$sth->execute(@bind_args);
- $out.='';
+ $out.=$NL.'';
- $out.=$q->Tr($q->th(\@cols));
+ $out.=$NL.$q->Tr($q->th(\@cols));
while (my $row=$sth->fetchrow_arrayref()) {
my ($job_id,$user_name,$date_start,$host_hostname,$host_pid,$host_slots)=@$row;
- $out.=$q->Tr(
+ $out.=$NL.$q->Tr(
$q->td({class=>'number'},$q->a({href=>selfurl("/job/$job_id")},$job_id)),
$q->td($user_name),
$q->td($date_start),
@@ -274,7 +275,7 @@ sub job_table_running {
$q->td({class=>'number'},$host_slots),
);
}
- $out.='
';
+ $out.=$NL.'
'.$NL;
}
sub job_table_of_group {
@@ -308,9 +309,9 @@ sub job_table_of_group {
__EOF__
$sth->execute($group_id);
- $out.='';
+ $out.=$NL.'';
- $out.=$q->Tr($q->th(\@scols));
+ $out.=$NL.$q->Tr($q->th(\@scols));
my $lds;
my $col=1;
@@ -334,11 +335,11 @@ __EOF__
if (defined $lds && abs($lds-$ds)>10) {
$col = 1-$col;
- $out.=$q->Tr($q->td(' '));
+ $out.=$NL.$q->Tr($q->td(' '));
}
$lds=$ds;
- $out.=$q->Tr(
+ $out.=$NL.$q->Tr(
{class=>'bg'.$col},
$q->td({class=>'number'},$q->a({href=>selfurl("/job/$job_id")},$job_id)),
$q->td(colorize_status(job_status($job_status))),
@@ -349,7 +350,7 @@ __EOF__
);
++$cnt == $LIMIT and last;
}
- $out.='
';
+ $out.=$NL.'
'.$NL;
if ($cnt==$LIMIT) {
$out.=$q->p($q->em("(truncated after $LIMIT rows)"));
}
@@ -684,8 +685,8 @@ sub group_table {
my $sth=$dbh->prepare('SELECT '.join(',',@cols).' FROM mxq_group WHERE '.$sql_clause.' AND (group_jobs_running>0 OR group_jobs_inq>0) ORDER BY group_id DESC');
$sth->execute(@$sql_binds);
- $out.='';
- $out.=$q->Tr($q->th(\@head));
+ $out.=$NL.'';
+ $out.=$NL.$q->Tr($q->th(\@head));
while (my $row=$sth->fetchrow_arrayref()) {
my ($group_id,$group_name,$job_threads,
$job_memory,$job_time,$job_tmpdir_size,$job_gpu,
@@ -693,7 +694,7 @@ sub group_table {
$group_jobs,$group_jobs_inq,$group_jobs_running,$group_jobs_finished,$group_jobs_failed,$group_jobs_cancelled,$group_jobs_unknown
)=@$row;
- $out.=$q->Tr(
+ $out.=$NL.$q->Tr(
$q->td({class=>'number'},$q->a({href=>selfurl("/group/$group_id")},$group_id)),
$q->td($group_name),
$q->td({class=>'number'},$job_threads),
@@ -705,14 +706,14 @@ sub group_table {
$q->td(group_status($group_status)),
$q->td({class=>'number'},$group_jobs),
$q->td({class=>'number'},colorize("blue",$group_jobs_inq)),
- $q->td({class=>'number'},colorize("orange",$group_jobs_running)),
+ $q->td({class=>'number'},colorize("chocolate",$group_jobs_running)),
$q->td({class=>'number'},colorize("green",$group_jobs_finished)),
$q->td({class=>'number'},colorize("red",$group_jobs_failed)),
$q->td({class=>'number'},colorize("red",$group_jobs_cancelled)),
$q->td({class=>'number'},colorize("red",$group_jobs_unknown))
);
}
- $out.='
';
+ $out.=$NL.'
'.$NL;
$out .= "Finished Groups (last $days days)
";
@@ -749,8 +750,8 @@ sub group_table {
$sth=$dbh->prepare('SELECT '.join(',',@cols).' FROM mxq_group WHERE '.$sql_clause.' AND (group_jobs_running=0 AND group_jobs_inq=0) AND group_mtime >= DATE_SUB(NOW(),INTERVAL ? DAY) ORDER BY group_id DESC');
$sth->execute(@$sql_binds,$days);
- $out.='';
- $out.=$q->Tr($q->th(\@head));
+ $out.=$NL.'';
+ $out.=$NL.$q->Tr($q->th(\@head));
while (my $row=$sth->fetchrow_arrayref()) {
my ($group_id,$group_name,$job_threads,
$job_memory,
@@ -762,7 +763,7 @@ sub group_table {
$group_jobs,$group_jobs_finished,$group_jobs_failed,$group_jobs_cancelled,$group_jobs_unknown
)=@$row;
- $out.=$q->Tr(
+ $out.=$NL.$q->Tr(
$q->td({class=>'number'},$q->a({href=>selfurl("/group/$group_id")},$group_id)),
$q->td($group_name),
$q->td({class=>'number'},$job_threads),
@@ -779,7 +780,7 @@ sub group_table {
$q->td({class=>'number'},colorize("red",$group_jobs_unknown))
);
}
- $out.='
';
+ $out.=$NL.'
'.$NL;
return $out;
}
@@ -835,9 +836,9 @@ sub server() {
my $sth=$dbh->prepare('SELECT '.join(',',@cols).' FROM mxq_daemon WHERE status<=200 ORDER BY hostname,daemon_name');
$sth->execute();
- $out.='';
+ $out.=$NL.'';
- $out.=$q->Tr($q->th([
+ $out.=$NL.$q->Tr($q->th([
'id',
'name',
'status',
@@ -887,7 +888,7 @@ sub server() {
delete($dead_hosts->{$hostname});
- $out.=$q->Tr(
+ $out.=$NL.$q->Tr(
$q->td({class=>'number'},$q->a({href=>selfurl("/server/$daemon_id")},$daemon_id)),
$q->td($daemon_name),
$q->td(daemon_status($status)),
@@ -913,12 +914,12 @@ sub server() {
);
}
map {
- $out.=$q->Tr( $q->td(0),$q->td('-'),$q->td('no mxqd'),$q->td($_),$q->td(' '),$q->td(' '),$q->td(' '),$q->td(' '),$q->td(' '),$q->td(' '),$q->td(' '),$q->td(' '),$q->td(' '),$q->td(' '),$q->td(' '),$q->td(' '));
+ $out.=$NL.$q->Tr( $q->td(0),$q->td('-'),$q->td('no mxqd'),$q->td($_),$q->td(' '),$q->td(' '),$q->td(' '),$q->td(' '),$q->td(' '),$q->td(' '),$q->td(' '),$q->td(' '),$q->td(' '),$q->td(' '),$q->td(' '),$q->td(' '));
} keys %{$dead_hosts};
- $out.=$q->Tr($q->td({colspan=>16},' '));
+ $out.=$NL.$q->Tr($q->td({colspan=>16},' '));
my $dist = join(', ',map {"$S{daemon_slots_dist}->{$_}x$_"} sort {$b <=> $a} keys %{$S{daemon_slots_dist}});
- $out.=$q->Tr(
+ $out.=$NL.$q->Tr(
$q->td({class=>'center', colspan=>3},$S{servers}.' servers'),
$q->td($dist),
$q->td({class=>'center', colspan=>3},$S{daemon_slots}.' cores'),
@@ -933,16 +934,16 @@ sub server() {
$q->td({class=>'number'},$S{daemon_gpus_used_sum})
);
- $out.='
';
+ $out.=$NL.'
'.$NL;
return $out;
}
sub top_menu {
- return ''.$NL;
}
$q=new CGI;
@@ -975,3 +976,4 @@ if ($path_info eq '') {
} else {
print header(-status => 404).HEAD().top_menu().'not found
';
}
+print "\n\n";