# HG changeset patch -- Bitbucket.org # Project galaxy-dist # URL http://bitbucket.org/galaxy/galaxy-dist/overview # User Nate Coraor <nate@bx.psu.edu> # Date 1288037514 14400 # Node ID 30f83bcaf31451915ccf68c398a8e0ce0a3c80bb # Parent 5ee2200b2b6df5cbd31f21440124c7ae0bcbe10b Only read the first 32K of stdout/stderr from jobs since that's all we're saving anyway. fileobj.read() is bad for the job runner when a tool prints 60GB of errors... --- a/lib/galaxy/jobs/runners/sge.py +++ b/lib/galaxy/jobs/runners/sge.py @@ -312,8 +312,8 @@ class SGEJobRunner( object ): try: ofh = file(ofile, "r") efh = file(efile, "r") - stdout = ofh.read() - stderr = efh.read() + stdout = ofh.read( 32768 ) + stderr = efh.read( 32768 ) except: stdout = '' stderr = 'Job output not returned from cluster' --- a/lib/galaxy/jobs/runners/pbs.py +++ b/lib/galaxy/jobs/runners/pbs.py @@ -496,8 +496,8 @@ class PBSJobRunner( object ): try: ofh = file(ofile, "r") efh = file(efile, "r") - stdout = ofh.read() - stderr = efh.read() + stdout = ofh.read( 32768 ) + stderr = efh.read( 32768 ) except: stdout = '' stderr = 'Job output not returned by PBS: the output datasets were deleted while the job was running, the job was manually dequeued or there was a cluster error.' --- a/lib/galaxy/jobs/runners/local.py +++ b/lib/galaxy/jobs/runners/local.py @@ -95,8 +95,8 @@ class LocalJobRunner( object ): if sleep_time < 8: # So we don't stat every second sleep_time *= 2 - stdout = proc.stdout.read() - stderr = proc.stderr.read() + stdout = proc.stdout.read( 32768 ) + stderr = proc.stderr.read( 32768 ) proc.wait() # reap log.debug('execution finished: %s' % command_line) except Exception, exc: --- a/lib/galaxy/jobs/runners/drmaa.py +++ b/lib/galaxy/jobs/runners/drmaa.py @@ -272,8 +272,8 @@ class DRMAAJobRunner( object ): try: ofh = file(ofile, "r") efh = file(efile, "r") - stdout = ofh.read() - stderr = efh.read() + stdout = ofh.read( 32768 ) + stderr = efh.read( 32768 ) except: stdout = '' stderr = 'Job output not returned from cluster'