[ 
https://issues.apache.org/jira/browse/GIRAPH-246?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13430908#comment-13430908
 ] 

Eli Reisman commented on GIRAPH-246:
------------------------------------

Avery,

The Progressible not working is Jakob's theory, not mine, you'd have to ask 
him, I'm just trying to make the patch work. As I've said, the one I posted 
here and as 274-alt-1 are the only ones I have verified to run long jobs 
without timing out when the run is still healthy. Thats all I know.

I suspect after attempting 246-8 and 9 that maybe some of the longer timed 
waitMsecs calls were not calling progress often enough. This whole problem 
doesn't make a lot of sense to me. None of the solutions are very different. 
One concern that I have had since originally solving this is that you really 
don't know if you've fixedit until you've gotten some long runs to happen, long 
enough to trigger time outs, and healthy enough that the timeout isn't because 
a worker died and tried to restart rather than actually timed out during 
healthy work/waits. Thats what I'm trying to do with 246-9 right now.

I'm happy with any way forward that is verified to work. The fact that any of 
these fixes don't have the same effect means there are probably bigger problems 
to solve to really find a satisfying answer, but in the meantime I need long 
jobs to not time out. Thats about as far as my thought process has gotten on 
this one. Whatever you guys think is best is how we should move forward, but I 
am uncomfortable just guessing at this one, as it tends to come back and bite 
you when you need that big job to finish ;)

The first of you guys to come up with verified solution that you find palatable 
is entitled to some beer on my behalf. In fact, consider yourselves both 
entitled already ;)
 
                
> Periodic worker calls to context.progress() will prevent timeout on some 
> Hadoop clusters during barrier waits
> -------------------------------------------------------------------------------------------------------------
>
>                 Key: GIRAPH-246
>                 URL: https://issues.apache.org/jira/browse/GIRAPH-246
>             Project: Giraph
>          Issue Type: Improvement
>          Components: bsp
>    Affects Versions: 0.2.0
>            Reporter: Eli Reisman
>            Assignee: Eli Reisman
>            Priority: Minor
>              Labels: hadoop, patch
>             Fix For: 0.2.0
>
>         Attachments: GIRAPH-246-1.patch, GIRAPH-246-2.patch, 
> GIRAPH-246-3.patch, GIRAPH-246-4.patch, GIRAPH-246-5.patch, 
> GIRAPH-246-6.patch, GIRAPH-246-7.patch, GIRAPH-246-8.patch, GIRAPH-246-9.patch
>
>
> This simple change creates a command-line configurable option in GiraphJob to 
> control the time between calls to context().progress() that allows workers to 
> avoid timeouts during long data load-ins in which some works complete their 
> input split reads much faster than others, or finish a super step faster. I 
> found this allowed jobs that were large-scale but with low memory overhead to 
> complete even when they would previously time out during runs on a Hadoop 
> cluster. Timeout is still possible when the worker crashes or runs out of 
> memory or has other GC or RPC trouble that is legitimate, but prevents 
> unintentional crashes when the worker is actually still healthy.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to