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.5 by ahart, Wed Oct 17 18:28:47 2012 UTC vs.
Revision 1.8 by ahart, Wed Dec 12 21:38:19 2012 UTC

# Line 10 | Line 10 | sub dbReport;
10   sub dbInsert;
11   sub addSlashes;
12   sub getOption;
13 + sub deleteEntry;
14  
15   our $db = Mysql->connect ("cmshead.mps.ohio-state.edu", "ntuple", "osuT3User") or die "Failed to connect to Tier 3, stopped";
16  
# Line 24 | Line 25 | if ($arg =~ m/-create/)
25      my $dataset = getOption (\@crabCfg, "datasetpath");
26      my $psetName = getOption (\@crabCfg, "pset");
27      my $jsonFileName = getOption (\@crabCfg, "lumi_mask");
28 <    my $submissionLogName = getOption (\@crabCfg, "ui_working_dir");
28 <    $submissionLogName .= "/log/crab.log";
28 >    my $workingDir = getOption (\@crabCfg, "ui_working_dir");
29  
30      print "Ntuple format (BEAN): ";
31      my $format = <STDIN>;
# Line 39 | 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'}\@$ENV{'HOSTNAME'}", $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, $workingDir);
43    }
44   elsif ($arg =~ m/-submit/)
45    {
# Line 52 | Line 52 | elsif ($arg =~ m/-submit/)
52          close (ID_FILE);
53          $id =~ s/(.*)\n/$1/;
54        }
55    my $submissionLogName = $workingDir . "/log/crab.log";
55  
56      system ("crab $arg");
57  
58 <    my $results = dbUpdate ($id, "submitted", $submissionLogName, "$ENV{'USER'}\@$ENV{'HOSTNAME'}") if $id > -1;
58 >    my $results = dbUpdate ($id, "submitted", "$ENV{'USER'}\@$ENV{'HOSTNAME'}") if $id > -1;
59    }
60   elsif ($arg =~ m/-report/)
61    {
# Line 92 | Line 91 | elsif ($arg =~ m/-status/)
91      my $results = dbStatus ($id, $currentStatusName, "$ENV{'USER'}\@$ENV{'HOSTNAME'}") if $id > -1;
92      unlink ($currentStatusName);
93    }
94 + elsif ($arg =~ m/-kill/)
95 +  {
96 +    my $workingDir = getWorkingDir (\@ARGV);
97 +    my $id = -1;
98 +    if (-e "$workingDir/log/.osuID")
99 +      {
100 +        open (ID_FILE, "<$workingDir/log/.osuID");
101 +        $id = <ID_FILE>;
102 +        close (ID_FILE);
103 +        $id =~ s/(.*)\n/$1/;
104 +      }
105 +
106 +    print "Are you cancelling this task? (y/N): ";
107 +    my $response = <STDIN>;
108 +    deleteEntry ($id) if lc ($response) eq "y";
109 +    system ("crab $arg");
110 +  }
111   else
112    {
113      system ("crab $arg");
# Line 151 | Line 167 | sub
167   dbInsert
168   {
169    my $dataset = shift;
170 <  my $user = shift;
170 >  my $userAndHost = shift;
171    my $format = shift;
172    my $location = shift;
173    my $nFiles = shift;
# Line 161 | Line 177 | dbInsert
177    my $psetName = shift;
178    my $crabCfgName = shift;
179    my $jsonFileName = shift;
180 <  my $submissionLogName = shift;
180 >  my $workingDir = shift;
181 >
182 >  my $user = $userAndHost;
183 >  $user =~ s/@.*$//;
184  
185    open (PY_CONFIG, "<$psetName");
186    my @pset = <PY_CONFIG>;
# Line 175 | Line 194 | dbInsert
194    my @jsonFile = <JSON_FILE>;
195    close (JSON_FILE);
196    my $jsonFile = join ("", @jsonFile);
178  open (SUBMISSION_LOG, "<$submissionLogName");
179  my @submissionLog = <SUBMISSION_LOG>;
180  close (SUBMISSION_LOG);
181  my $submissionLog = join ("", @submissionLog);
197  
198    $dataset = addSlashes ($dataset);
199    $user = addSlashes ($user);
# Line 186 | Line 201 | dbInsert
201    $pset = addSlashes ($pset);
202    $crabCfg = addSlashes ($crabCfg);
203    $jsonFile = addSlashes ($jsonFile);
189  $submissionLog = addSlashes ($submissionLog);
204    $location = addSlashes ($location);
205    $status = addSlashes ($status);
206    $comment = addSlashes ($comment);
# Line 199 | Line 213 | dbInsert
213    my $id = 1;
214    $id = $row[0] + 1 if $results->numrows ();
215  
202  my $workingDir = $submissionLogName;
203  $workingDir =~ s/(.*)\/log\/crab\.log/$1/;
216    open (ID_FILE, ">$workingDir/log/.osuID");
217    print ID_FILE "$id\n";
218    close (ID_FILE);
219  
220 <  $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(), '$user', '$user', '$format', '$location', $nFiles, $sizeInGB, '$status', '$comment', '$pset', '$crabCfg', '$jsonFile', '$submissionLog')";
220 >  $query = "insert into ntuple (id, dataset, creationTime, lastUpdateTime, lastUpdateUser, user, format, location, nFiles, sizeInGB, status, comment, pset, crabCfg, jsonFile) values ($id, '$dataset', now(), now(), '$userAndHost', '$user', '$format', '$location', $nFiles, $sizeInGB, '$status', '$comment', '$pset', '$crabCfg', '$jsonFile')";
221    $results = $db->query ($query);
222  
223    return $results;
# Line 216 | Line 228 | dbUpdate
228   {
229    my $id = shift;
230    my $status = shift;
219  my $submissionLogName = shift;
231    my $user = shift;
232  
222  open (SUBMISSION_LOG, "<$submissionLogName");
223  my @submissionLog = <SUBMISSION_LOG>;
224  close (SUBMISSION_LOG);
225  my $submissionLog = join ("", @submissionLog);
226
227  $submissionLog = addSlashes ($submissionLog);
233    $status = addSlashes ($status);
234    $user = addSlashes ($user);
235  
236    my $results;
237 <  my $query = "update ntuple set lastUpdateTime=now(), lastUpdateUser='$user', status='$status', submissionLog='$submissionLog' where id=$id";
237 >  my $query = "update ntuple set lastUpdateTime=now(), lastUpdateUser='$user', status='$status' where id=$id";
238    $db->selectdb ("ntuple");
239    $results = $db->query ($query);
240  
# Line 281 | Line 286 | dbReport
286    $db->selectdb ("ntuple");
287    $results = $db->query ($query);
288  
289 +  return $results;
290 + }
291 +
292 + sub
293 + deleteEntry
294 + {
295 +  my $id = shift;
296 +
297 +  my $results;
298 +  my $query = "delete from ntuple where id=$id";
299 +  $db->selectdb ("ntuple");
300 +  $results = $db->query ($query);
301 +
302    return $results;
303   }

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines