Skip to main content

[jsr352-public] Re: Do we need another BatchStatus transition (mark jobs as FAILED)?

  • From: Cheng Fang < >
  • To:
  • Subject: [jsr352-public] Re: Do we need another BatchStatus transition (mark jobs as FAILED)?
  • Date: Mon, 28 Oct 2013 11:12:19 -0400

<html>
  <head>
    <meta content="text/html; charset=ISO-8859-1"
      http-equiv="Content-Type">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    +1<br>
    <br>
    <div class="moz-cite-prefix">On 10/28/13, 10:53 AM, Michael Minella
      wrote:<br>
    </div>
    <blockquote
cite="mid:
      "
      type="cite">
      <div dir="ltr">As long as a documentation only solution is
        acceptable, I'm ok with it.</div>
      <div class="gmail_extra"><br clear="all">
        <div>Thanks,<br>
          Michael Minella<br>
          <a moz-do-not-send="true"
            href="mailto:
      " target="_blank">
      </a><br>
          <a moz-do-not-send="true" href="http://www.michaelminella.com";
            target="_blank">http://www.michaelminella.com</a></div>
        <br>
        <br>
        <div class="gmail_quote">On Mon, Oct 28, 2013 at 9:50 AM, Scott
          Kurz <span dir="ltr">&lt;<a moz-do-not-send="true"
              href="mailto:
      " target="_blank">
      </a>&gt;</span>
          wrote:<br>
          <blockquote class="gmail_quote" style="margin:0 0 0
            .8ex;border-left:1px #ccc solid;padding-left:1ex">
            <div>
              <p><font face="sans-serif">Right..the impl would only be
                  required to document as it sees fit... </font><br>
                <br>
                <font face="sans-serif">I'm glad we had this discussion
                  since saying the runtime would "mark FAILED" would
                  have been too strong.</font><br>
                <br>
                <font face="sans-serif">Assuming you're still in
                  agreement, I'll add this to the change list...</font><br>
                <font face="sans-serif"><br>
                  Thanks,</font></p>
              <div class="im"><font face="sans-serif"><br>
                  ------------------------------------------------------<br>
                  Scott Kurz<br>
                  WebSphere Batch / Compute Grid Development<br>
                  T/L 295-5649; <br>
                  External Phone <a moz-do-not-send="true"
                    href="tel:845-435-5649" value="+18454355649"
                    target="_blank">845-435-5649</a><br>
                  <a moz-do-not-send="true"
                    href="mailto:
      " target="_blank">
      </a><br>
--------------------------------------------------------</font></div>
              <br>
              <br>
              <img src="cid:part6.00020906.03080405@gmail.com"
                alt="Inactive hide details for Michael Minella
                ---10/28/2013 10:45:11 AM---Would the impl be required
                to provide something more than" border="0" height="16"
                width="16"><font color="#424282" face="sans-serif">Michael
                Minella ---10/28/2013 10:45:11 AM---Would the impl be
                required to provide something more than documentation?
                &nbsp;Right now, SB just states</font>
              <div class="im">
                <br>
                <br>
                <font color="#5F5F5F" face="sans-serif" size="1">From: </font><font
                  face="sans-serif" size="1">Michael Minella &lt;<a
                    moz-do-not-send="true"
                    href="mailto:
      "
                    target="_blank">
      </a>&gt;</font><br>
                <font color="#5F5F5F" face="sans-serif" size="1">To: </font><font
                  face="sans-serif" size="1">"<a moz-do-not-send="true"
                    href="mailto:
      " target="_blank">
      </a>"
                  &lt;<a moz-do-not-send="true"
                    href="mailto:
      " target="_blank">
      </a>&gt;,
                </font><br>
              </div>
              <font color="#5F5F5F" face="sans-serif" size="1">Date: </font><font
                face="sans-serif" size="1">10/28/2013 10:45 AM</font>
              <div>
                <div class="h5"><br>
                  <font color="#5F5F5F" face="sans-serif" size="1">Subject:
                  </font><font face="sans-serif" size="1">[jsr352-public]
                    Re: Do we need another BatchStatus transition (mark
                    jobs as FAILED)?</font><br>
                  <hr style="color:#8091a5" align="left"
                    noshade="noshade" size="2" width="100%"><br>
                  <br>
                  <br>
                  <font face="serif" size="3">Would the impl be required
                    to provide something more than documentation? &nbsp;Right
                    now, SB just states that the user needs to address
                    the state in the job repository by hand and we'd
                    like to keep it that way unless the JSR has a
                    portable way of implementing that.</font><br>
                  <br>
                  <font face="serif" size="3">Thanks,<br>
                    Michael Minella</font><font color="#0000FF"
                    face="serif" size="3"><u><br>
                    </u></font><a moz-do-not-send="true"
                    href="mailto:
      "
                    target="_blank"><font color="#0000FF" face="serif"
                      size="3"><u>
      </u></font></a><font
                    color="#0000FF" face="serif" size="3"><u><br>
                    </u></font><a moz-do-not-send="true"
                    href="http://www.michaelminella.com/";
                    target="_blank"><font color="#0000FF" face="serif"
                      size="3"><u>http://www.michaelminella.com</u></font></a><br>
                  <font face="serif" size="3"><br>
                  </font><br>
                  <font face="serif" size="3">On Mon, Oct 28, 2013 at
                    9:38 AM, Scott Kurz &lt;</font><a
                    moz-do-not-send="true"
                    href="mailto:
      " target="_blank"><font
                      color="#0000FF" face="serif" size="3"><u>
      </u></font></a><font
                    face="serif" size="3">&gt; wrote:</font>
                  <ul style="padding-left:9pt">
                    <font face="sans-serif" size="3">Michael,<br>
                      <br>
                      Thanks for giving this some thought and relaying
                      that discussion.</font><font face="serif" size="3"><br>
                    </font><font face="sans-serif" size="3"><br>
                      So note, I'm not suggesting any rules or standards
                      defining how a job such as this gets marked FAILED
                      by the implementation. &nbsp; &nbsp;<br>
                      I was simply suggesting that, say in Sec 8.7, we
                      include a sentence or two acknowledging this
                      transition getting performed by SOMEONE.</font><font
                      face="serif" size="3"><br>
                    </font><font face="sans-serif" size="3"><br>
                      Maybe saying the runtime does it was too strong...</font><font
                      face="serif" size="3"><br>
                    </font><font face="sans-serif" size="3"><br>
                      How about: &nbsp; <br>
                      <br>
                      "In the case of a job that ...... e..g hung
                      JVM.... etc.... &nbsp;<br>
                      &nbsp; It is expected that an implementation provides
                      some implementation-specific mechanism for
                      transitioning BatchStatus to FAILED state, so that
                      it can be restarted. &nbsp;This mechanism can be
                      executed automatically by the implementation or
                      via an implementation-defined manual operation."</font><font
                      face="serif" size="3"><br>
                    </font><font face="sans-serif" size="3"><br>
                      What's the point of saying that? &nbsp; I think simply
                      that the spec is clearly trying to define a
                      complete state transition flowchart.... and so
                      this obvious gap should be closed, even if the
                      details are implementation specific.</font>
                    <p><font face="sans-serif" size="3"><br>
                        <br>
------------------------------------------------------<br>
                        Scott Kurz<br>
                        WebSphere Batch / Compute Grid Development<br>
                        T/L 295-5649; <br>
                        External Phone </font><a moz-do-not-send="true"
                        href="tel:845-435-5649" target="_blank"><font
                          color="#0000FF" face="sans-serif" size="3"><u>845-435-5649</u></font></a><font
                        color="#0000FF" face="sans-serif" size="3"><u><br>
                        </u></font><a moz-do-not-send="true"
                        href="mailto:
      " target="_blank"><font
                          color="#0000FF" face="sans-serif" size="3"><u>
      </u></font></a><font
                        face="sans-serif" size="3"><br>
--------------------------------------------------------</font><font
                        face="serif" size="3"><br>
                      </font><br>
                      <img src="cid:part6.00020906.03080405@gmail.com"
                        alt="Inactive hide details for Michael Minella
                        ---10/28/2013 10:26:51 AM---Spring Batch has
                        taken the approach that this is not some"
                        height="16" width="16"><font color="#424282"
                        face="sans-serif" size="3">Michael Minella
                        ---10/28/2013 10:26:51 AM---Spring Batch has
                        taken the approach that this is not something
                        the framework should support. &nbsp;We act</font><font
                        face="serif" size="3"><br>
                      </font><font color="#5F5F5F" face="sans-serif"
                        size="1"><br>
                        From: </font><font face="sans-serif" size="1">Michael
                        Minella &lt;</font><a moz-do-not-send="true"
                        href="mailto:
      "
                        target="_blank"><font color="#0000FF"
                          face="sans-serif" size="1"><u>
      </u></font></a><font
                        face="sans-serif" size="1">&gt;</font><font
                        color="#5F5F5F" face="sans-serif" size="1"><br>
                        To: </font><font face="sans-serif" size="1">"</font><a
                        moz-do-not-send="true"
                        href="mailto:
      "
                        target="_blank"><font color="#0000FF"
                          face="sans-serif" size="1"><u>
      </u></font></a><font
                        face="sans-serif" size="1">" &lt;</font><a
                        moz-do-not-send="true"
                        href="mailto:
      "
                        target="_blank"><font color="#0000FF"
                          face="sans-serif" size="1"><u>
      </u></font></a><font
                        face="sans-serif" size="1">&gt;, </font><font
                        color="#5F5F5F" face="sans-serif" size="1"><br>
                        Date: </font><font face="sans-serif" size="1">10/28/2013
                        10:26 AM</font><font color="#5F5F5F"
                        face="sans-serif" size="1"><br>
                        Subject: </font><font face="sans-serif"
                        size="1">[jsr352-public] Re: Do we need another
                        BatchStatus transition (mark jobs as FAILED)?</font><font
                        face="serif" size="3"><br>
                      </font></p>
                    <hr align="left" noshade="noshade" size="2"
                      width="100%"><br>
                    <font face="serif" size="3"><br>
                      <br>
                      <br>
                      Spring Batch has taken the approach that this is
                      not something the framework should support. &nbsp;We
                      actually had a bit of a spirited debate on this at
                      this year's SpringOne in one of the batch talks.
                      &nbsp;Our stance is that in this scenario, it is almost
                      always a human decision that is required to
                      determine that this update is required. &nbsp;In the
                      example you provide (a JVM dies for some reason),
                      how would the job or other JVM know what happened?
                      &nbsp;In the end, it would typically take human
                      investigation and then action. &nbsp;The furthest I
                      would suggest we go (if at all) would be providing
                      a method on the JobOperator to set a Job/Step to a
                      given status programatically. &nbsp;This would prevent
                      the need to manually update the underlying job
                      repository impl (database tables in most cases) by
                      hand.<br>
                      <br>
                      Michael<br>
                      <br>
                      Thanks,<br>
                      Michael Minella</font><font color="#0000FF"
                      face="serif" size="3"><u><br>
                      </u></font><a moz-do-not-send="true"
                      href="mailto:
      "
                      target="_blank"><font color="#0000FF" face="serif"
                        size="3"><u>
      </u></font></a><font
                      color="#0000FF" face="serif" size="3"><u><br>
                      </u></font><a moz-do-not-send="true"
                      href="http://www.michaelminella.com/";
                      target="_blank"><font color="#0000FF" face="serif"
                        size="3"><u>http://www.michaelminella.com</u></font></a><font
                      face="serif" size="3"><br>
                      <br>
                      <br>
                      On Fri, Oct 25, 2013 at 9:47 PM, Scott Kurz &lt;</font><a
                      moz-do-not-send="true"
                      href="mailto:
      " target="_blank"><font
                        color="#0000FF" face="serif" size="3"><u>
      </u></font></a><font
                      face="serif" size="3">&gt; wrote: </font>
                    <ul style="padding-left:36pt">
                      <font face="sans-serif" size="3">I don't remember
                        this issue being raised up until now (maybe it
                        was in the EG)...<br>
                        <br>
                        Say a job is running along and someone kills the
                        JVM or it hits OOM. &nbsp; &nbsp;Can't the implementation
                        determine somehow that jobs like this should be
                        moved into FAILED state (BatchStatus)? <br>
                        <br>
                        I don't think the spec needs to specify how this
                        happens... but it seems to try to completely
                        cover all state transitions, and it specifically
                        disallows restart of an already-STARTED job (in
                        Sec. 10.8). &nbsp;<br>
                        <br>
                        So I think it should say something allowing this
                        "mark FAILED" transition to occur in an
                        impl-specific way.<br>
                        <br>
                        Thoughts? &nbsp;<br>
------------------------------------------------------<br>
                        Scott Kurz<br>
                        WebSphere Batch / Compute Grid Development<br>
                        T/L 295-5649; <br>
                        External Phone </font><a moz-do-not-send="true"
                        href="tel:845-435-5649" target="_blank"><font
                          color="#0000FF" face="sans-serif" size="3"><u>845-435-5649</u></font></a><font
                        color="#0000FF" face="serif" size="3"><u><br>
                        </u></font><a moz-do-not-send="true"
                        href="mailto:
      " target="_blank"><font
                          color="#0000FF" face="sans-serif" size="3"><u>
      </u></font></a><font
                        face="sans-serif" size="3"><br>
--------------------------------------------------------</font>
                    </ul>
                  </ul>
                  <br>
                </div>
              </div>
            </div>
          </blockquote>
        </div>
        <br>
      </div>
    </blockquote>
    <br>
  </body>
</html>

Attachment: gifcT6UOgZgd_.gif
Description: GIF image



[jsr352-public] Do we need another BatchStatus transition (mark jobs as FAILED)?

Scott Kurz 10/26/2013

[jsr352-public] Re: Do we need another BatchStatus transition (mark jobs as FAILED)?

Michael Minella 10/28/2013

[jsr352-public] Re: Do we need another BatchStatus transition (mark jobs as FAILED)?

Scott Kurz 10/28/2013

[jsr352-public] Re: Do we need another BatchStatus transition (mark jobs as FAILED)?

Michael Minella 10/28/2013

[jsr352-public] Re: Do we need another BatchStatus transition (mark jobs as FAILED)?

Scott Kurz 10/28/2013

[jsr352-public] Re: Do we need another BatchStatus transition (mark jobs as FAILED)?

Michael Minella 10/28/2013

[jsr352-public] Re: Do we need another BatchStatus transition (mark jobs as FAILED)?

Cheng Fang 10/28/2013
 
 
Close
loading
Please Confirm
Close