52 |
|
SchedulerGrid.configure(self, cfg_params) |
53 |
|
|
54 |
|
self.proxyValid=0 |
55 |
< |
self.dontCheckProxy=int(cfg_params.get("GRID.dont_check_proxy",0)) |
55 |
> |
self.dontCheckProxy=int(cfg_params.get("GRID.dont_check_proxy",'0')) |
56 |
|
self.space_token = cfg_params.get("USER.space_token",None) |
57 |
|
self.proxyServer= 'myproxy.cern.ch' |
58 |
|
self.group = cfg_params.get("GRID.group", None) |
59 |
|
self.role = cfg_params.get("GRID.role", None) |
60 |
|
self.VO = cfg_params.get('GRID.virtual_organization','cms') |
61 |
+ |
self.allowOverflow = cfg_params.get('GRID.allow_overflow', '1') |
62 |
+ |
self.max_rss = cfg_params.get('GRID.max_rss','2300') |
63 |
|
|
64 |
|
self.checkProxy() |
65 |
|
|
125 |
|
by $CRABPYTHON/Scheduler.py |
126 |
|
""" |
127 |
|
|
128 |
< |
#SB paste from crab ScheduerGlidein |
128 |
> |
#SB paste from crab SchedulerGlidein |
129 |
|
|
130 |
|
jobParams = "" |
131 |
|
|
156 |
|
'//' + self.submissionDay + '//$(Cluster).$(Process)"; ' |
157 |
|
|
158 |
|
if (self.EDG_clock_time): |
159 |
< |
jobParams += '+MaxWallTimeMins = '+self.EDG_clock_time+'; ' |
159 |
> |
glideinTime = "%d" % (int(self.EDG_clock_time)+5) # 5 min to wrapup |
160 |
> |
jobParams += '+MaxWallTimeMins = '+ glideinTime + '; ' |
161 |
|
else: |
162 |
< |
jobParams += '+MaxWallTimeMins = %d; ' % (60*24) |
162 |
> |
jobParams += '+MaxWallTimeMins = %d; ' % (60*22) |
163 |
> |
|
164 |
> |
if self.max_rss : |
165 |
> |
jobParams += 'request_memory = '+self.max_rss+';' |
166 |
> |
|
167 |
> |
if self.allowOverflow == "0": |
168 |
> |
jobParams += '+CMS_ALLOW_OVERFLOW = False; ' |
169 |
> |
|
170 |
> |
if self.EDG_addJdlParam: |
171 |
> |
if self.EDG_addJdlParam[-1] == '': |
172 |
> |
self.EDG_addJdlParam = self.EDG_addJdlParam[:-1] |
173 |
> |
for p in self.EDG_addJdlParam: |
174 |
> |
jobParams += p.strip()+';\n' |
175 |
|
|
176 |
|
common._db.updateTask_({'jobType':jobParams}) |
177 |
|
|