ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/OSUT3Analysis/DBTools/scripts/osucrab
(Generate patch)

Comparing UserCode/OSUT3Analysis/DBTools/scripts/osucrab (file contents):
Revision 1.2 by ahart, Tue Jul 31 14:04:18 2012 UTC vs.
Revision 1.6 by ahart, Fri Nov 30 18:21:00 2012 UTC

# Line 5 | Line 5 | use Mysql;
5  
6   sub getWorkingDir;
7   sub dbUpdate;
8 + sub dbStatus;
9   sub dbReport;
10   sub dbInsert;
11   sub addSlashes;
# Line 38 | Line 39 | if ($arg =~ m/-create/)
39  
40      my $status = "created";
41      $status = "submitted" if $arg =~ m/-submit/;
42 <    my $results = dbInsert ($dataset, $ENV{"USER"}, $format, "", 0, 0, $status, $comment, $psetName, $crabCfgName, $jsonFileName, $submissionLogName);
42 >    my $results = dbInsert ($dataset, "$ENV{'USER'}\@$ENV{'HOSTNAME'}", $format, "", 0, 0, $status, $comment, $psetName, $crabCfgName, $jsonFileName, $submissionLogName);
43    }
44   elsif ($arg =~ m/-submit/)
45    {
46      my $workingDir = getWorkingDir (\@ARGV);
47 <    open (ID_FILE, "<$workingDir/log/.osuID");
48 <    my $id = <ID_FILE>;
49 <    close (ID_FILE);
50 <    $id =~ s/(.*)\n/$1/;
47 >    my $id = -1;
48 >    if (-e "$workingDir/log/.osuID")
49 >      {
50 >        open (ID_FILE, "<$workingDir/log/.osuID");
51 >        $id = <ID_FILE>;
52 >        close (ID_FILE);
53 >        $id =~ s/(.*)\n/$1/;
54 >      }
55      my $submissionLogName = $workingDir . "/log/crab.log";
56  
57      system ("crab $arg");
58  
59 <    my $results = dbUpdate ($id, "submitted", $submissionLogName);
59 >    my $results = dbUpdate ($id, "submitted", $submissionLogName, "$ENV{'USER'}\@$ENV{'HOSTNAME'}") if $id > -1;
60    }
61   elsif ($arg =~ m/-report/)
62    {
63      my $workingDir = getWorkingDir (\@ARGV);
64 <    open (ID_FILE, "<$workingDir/log/.osuID");
65 <    my $id = <ID_FILE>;
66 <    close (ID_FILE);
67 <    $id =~ s/(.*)\n/$1/;
64 >    my $id = -1;
65 >    if (-e "$workingDir/log/.osuID")
66 >      {
67 >        open (ID_FILE, "<$workingDir/log/.osuID");
68 >        $id = <ID_FILE>;
69 >        close (ID_FILE);
70 >        $id =~ s/(.*)\n/$1/;
71 >      }
72      my $lumiSummaryName = $workingDir . "/res/lumiSummary.json";
73  
74      system ("crab $arg");
75  
76 <    my $results = dbReport ($id, "complete", $lumiSummaryName);
76 >    my $results = dbReport ($id, "complete", $lumiSummaryName, "$ENV{'USER'}\@$ENV{'HOSTNAME'}") if $id > -1;
77 >  }
78 > elsif ($arg =~ m/-status/)
79 >  {
80 >    my $workingDir = getWorkingDir (\@ARGV);
81 >    my $id = -1;
82 >    if (-e "$workingDir/log/.osuID")
83 >      {
84 >        open (ID_FILE, "<$workingDir/log/.osuID");
85 >        $id = <ID_FILE>;
86 >        close (ID_FILE);
87 >        $id =~ s/(.*)\n/$1/;
88 >      }
89 >    my $currentStatusName = "$workingDir/log/.currentStatus";
90 >    unlink ($currentStatusName) if -e $currentStatusName;
91 >    system ("crab $arg | tee $currentStatusName");
92 >    my $results = dbStatus ($id, $currentStatusName, "$ENV{'USER'}\@$ENV{'HOSTNAME'}") if $id > -1;
93 >    unlink ($currentStatusName);
94    }
95   else
96    {
# Line 125 | Line 151 | sub
151   dbInsert
152   {
153    my $dataset = shift;
154 <  my $user = shift;
154 >  my $userAndHost = shift;
155    my $format = shift;
156    my $location = shift;
157    my $nFiles = shift;
# Line 137 | Line 163 | dbInsert
163    my $jsonFileName = shift;
164    my $submissionLogName = shift;
165  
166 +  my $user = $userAndHost;
167 +  $user =~ s/@.*$//;
168 +
169    open (PY_CONFIG, "<$psetName");
170    my @pset = <PY_CONFIG>;
171    close (PY_CONFIG);
# Line 179 | Line 208 | dbInsert
208    print ID_FILE "$id\n";
209    close (ID_FILE);
210  
211 <  $query = "insert into ntuple (id, dataset, creationTime, lastUpdateTime, user, format, location, nFiles, sizeInGB, status, comment, pset, crabCfg, jsonFile, submissionLog) values ($id, '$dataset', now(), now(), '$user', '$format', '$location', $nFiles, $sizeInGB, '$status', '$comment', '$pset', '$crabCfg', '$jsonFile', '$submissionLog')";
211 >  $query = "insert into ntuple (id, dataset, creationTime, lastUpdateTime, lastUpdateUser, user, format, location, nFiles, sizeInGB, status, comment, pset, crabCfg, jsonFile, submissionLog) values ($id, '$dataset', now(), now(), '$userAndHost', '$user', '$format', '$location', $nFiles, $sizeInGB, '$status', '$comment', '$pset', '$crabCfg', '$jsonFile', '$submissionLog')";
212    $results = $db->query ($query);
213  
214    return $results;
# Line 191 | Line 220 | dbUpdate
220    my $id = shift;
221    my $status = shift;
222    my $submissionLogName = shift;
223 +  my $user = shift;
224  
225    open (SUBMISSION_LOG, "<$submissionLogName");
226    my @submissionLog = <SUBMISSION_LOG>;
# Line 199 | Line 229 | dbUpdate
229  
230    $submissionLog = addSlashes ($submissionLog);
231    $status = addSlashes ($status);
232 +  $user = addSlashes ($user);
233 +
234 +  my $results;
235 +  my $query = "update ntuple set lastUpdateTime=now(), lastUpdateUser='$user', status='$status', submissionLog='$submissionLog' where id=$id";
236 +  $db->selectdb ("ntuple");
237 +  $results = $db->query ($query);
238 +
239 +  return $results;
240 + }
241 +
242 + sub
243 + dbStatus
244 + {
245 +  my $id = shift;
246 +  my $currentStatusName = shift;
247 +  my $user = shift;
248 +
249 +  open (CURRENT_STATUS, "<$currentStatusName");
250 +  my @currentStatus = <CURRENT_STATUS>;
251 +  close (CURRENT_STATUS);
252 +  my $currentStatus = join ("", @currentStatus);
253 +
254 +  $currentStatus = addSlashes ($currentStatus);
255 +  $user = addSlashes ($user);
256  
257    my $results;
258 <  my $query = "update ntuple set lastUpdateTime=now(), status='$status', submissionLog='$submissionLog' where id=$id";
258 >  my $query = "update ntuple set lastUpdateTime=now(), lastUpdateUser='$user', currentStatus='$currentStatus' where id=$id";
259    $db->selectdb ("ntuple");
260    $results = $db->query ($query);
261  
# Line 214 | Line 268 | dbReport
268    my $id = shift;
269    my $status = shift;
270    my $lumiSummaryName = shift;
271 +  my $user = shift;
272  
273    open (LUMI_SUMMARY, "<$lumiSummaryName");
274    my @lumiSummary = <LUMI_SUMMARY>;
# Line 222 | Line 277 | dbReport
277  
278    $lumiSummary = addSlashes ($lumiSummary);
279    $status = addSlashes ($status);
280 +  $user = addSlashes ($user);
281  
282    my $results;
283 <  my $query = "update ntuple set lastUpdateTime=now(), status='$status', lumiSummary='$lumiSummary' where id=$id";
283 >  my $query = "update ntuple set lastUpdateTime=now(), lastUpdateUser='$user', status='$status', lumiSummary='$lumiSummary' where id=$id";
284    $db->selectdb ("ntuple");
285    $results = $db->query ($query);
286  

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines