Project

General

Profile

Actions

Bug #4889

closed

[Crunch] Logging with a progress bar deadlocks on output

Added by Bryan Cosca over 9 years ago. Updated over 9 years ago.

Status:
Resolved
Priority:
Normal
Assigned To:
Tim Pierce
Category:
Crunch
Target version:
Story points:
1.0

Description

I ran the cufflinks tool: http://cole-trapnell-lab.github.io/cufflinks/manual/ and tools logs its own progress by creating a loading bar and updating that loading bar by the millisecond(?). I ran this job: qr1hi-8i9sb-ajgkcn4cuk4cntm and it last logged at the part before the loading bar would come up. The job then ran ad infinitum and I had to cancel it. (The job ran 20 minutes here: qr1hi-8i9sb-pmu3ffh19dny625 using a --quiet flag)

Possible solution: use communicate.Popen instead of subprocess.call. https://docs.python.org/2/library/subprocess.html#subprocess.call "Do not use stdout=PIPE or stderr=PIPE with this function as that can deadlock based on the child process output volume. Use Popen with the communicate() method when you need pipes."


Files

logging_addendum_2.gif (247 KB) logging_addendum_2.gif Bryan Cosca, 12/30/2014 04:40 PM
logging_addendum_3.gif (245 KB) logging_addendum_3.gif Bryan Cosca, 12/30/2014 04:47 PM

Subtasks 1 (0 open1 closed)

Task #5042: Review 4889-crunch-deadlockResolvedTim Pierce12/30/2014Actions
Actions

Also available in: Atom PDF