NetRexx / Pipelines problems with output() and stageErrors

classic Classic list List threaded Threaded
12 messages Options
Reply | Threaded
Open this post in threaded view
|

NetRexx / Pipelines problems with output() and stageErrors

Jeff Hennick-3

I am again having an intermittent problem with Pipeline's output() method.  This is using the new 3.09 code.

I have written a strip stage to compliment the CMS version.  While this has some hairy options processing, the main loop is as simple as it can be.  But, output() is triggering a stageError exception, sometimes.  I can work around this by simply retrying the same statement.  Since I can see no problems in this code, I suspect it may be in the following stage in my test pipe, compare.  But this same pipe configuration works in hundreds of tests of other stages.

Here is the loop, with the workaround.  I intend to publish it like this, with the says commented out.  (I wish there were a way to log such errors.)

  loop label Main forever
    record_in = Rexx peekto()
    record_out = pat.matcher(record_in).replaceAll('')
    do
      output(record_out)
    catch stageError

/* 9/11/2020 I am having problems with this triggering.
             So will try a second time.  That is working for me.
             I do not know why this is.  I'm thinking it is
             in the COMPARE stage, which in my tests, follows
             this stage. But it works for all other stages.
             In my tests, I get lots of the first message,
             and none of the second.  Jeff Hennick
*/
      say '******* Output problem with' record_out', re-trying ********'
      do
        output(record_out)
      catch stageError
        say '********* Bad again,' record_out '*******'
      end
    end
    readto()
  catch stageError
    rc = rc()
  end Main
  Exit(rc*(rc<>12))

Any insight you have would be most welcome.

Incidentally, using Java's Regular Expressions makes this loop easy, in Rexx it would be excruciating, with all of the options that the strip stage has.  Even building the almost unreadable pattern from the options, one step at a time, is straight forward.



_______________________________________________
Ibm-netrexx mailing list
[hidden email]
Online Archive : http://ibm-netrexx.215625.n3.nabble.com/

Reply | Threaded
Open this post in threaded view
|

Re: NetRexx / Pipelines problems with output() and stageErrors

ColinK
Hi Jeff

I hear you on the strip stage.  I had started taking a stab at writing a strip stage and got as far as parsing the myriad of possible option combinations but I had trouble scrounging time to take it to completion.  I am glad to see that you have gotten further along than I.

As to your problem I am not sure what I can contribute.  I will do a git pull and see if I can replicate the error.

Cheers
Colin

On 2020-09-11 12:02, Jeff Hennick wrote:

I am again having an intermittent problem with Pipeline's output() method.  This is using the new 3.09 code.

I have written a strip stage to compliment the CMS version.  While this has some hairy options processing, the main loop is as simple as it can be.  But, output() is triggering a stageError exception, sometimes.  I can work around this by simply retrying the same statement.  Since I can see no problems in this code, I suspect it may be in the following stage in my test pipe, compare.  But this same pipe configuration works in hundreds of tests of other stages.

Here is the loop, with the workaround.  I intend to publish it like this, with the says commented out.  (I wish there were a way to log such errors.)

  loop label Main forever
    record_in = Rexx peekto()
    record_out = pat.matcher(record_in).replaceAll('')
    do
      output(record_out)
    catch stageError

/* 9/11/2020 I am having problems with this triggering.
             So will try a second time.  That is working for me.
             I do not know why this is.  I'm thinking it is
             in the COMPARE stage, which in my tests, follows
             this stage. But it works for all other stages.
             In my tests, I get lots of the first message,
             and none of the second.  Jeff Hennick
*/
      say '******* Output problem with' record_out', re-trying ********'
      do
        output(record_out)
      catch stageError
        say '********* Bad again,' record_out '*******'
      end
    end
    readto()
  catch stageError
    rc = rc()
  end Main
  Exit(rc*(rc<>12))

Any insight you have would be most welcome.

Incidentally, using Java's Regular Expressions makes this loop easy, in Rexx it would be excruciating, with all of the options that the strip stage has.  Even building the almost unreadable pattern from the options, one step at a time, is straight forward.



_______________________________________________
Ibm-netrexx mailing list
[hidden email]
Online Archive : http://ibm-netrexx.215625.n3.nabble.com/



_______________________________________________
Ibm-netrexx mailing list
[hidden email]
Online Archive : http://ibm-netrexx.215625.n3.nabble.com/

Reply | Threaded
Open this post in threaded view
|

Re: NetRexx / Pipelines problems with output() and stageErrors

ThSITC

COLIN: Thank You for taking care of this :-)

Thomas.

www.db-123.com

www.thsitc.com

As I did have a bad Time (Depression again!), I am again late with my own  Deployments :-(

Sorry,

Thomas.

Am 12.09.2020 um 01:10 schrieb ColinK:
Hi Jeff

I hear you on the strip stage.  I had started taking a stab at writing a strip stage and got as far as parsing the myriad of possible option combinations but I had trouble scrounging time to take it to completion.  I am glad to see that you have gotten further along than I.

As to your problem I am not sure what I can contribute.  I will do a git pull and see if I can replicate the error.

Cheers
Colin

On 2020-09-11 12:02, Jeff Hennick wrote:

I am again having an intermittent problem with Pipeline's output() method.  This is using the new 3.09 code.

I have written a strip stage to compliment the CMS version.  While this has some hairy options processing, the main loop is as simple as it can be.  But, output() is triggering a stageError exception, sometimes.  I can work around this by simply retrying the same statement.  Since I can see no problems in this code, I suspect it may be in the following stage in my test pipe, compare.  But this same pipe configuration works in hundreds of tests of other stages.

Here is the loop, with the workaround.  I intend to publish it like this, with the says commented out.  (I wish there were a way to log such errors.)

  loop label Main forever
    record_in = Rexx peekto()
    record_out = pat.matcher(record_in).replaceAll('')
    do
      output(record_out)
    catch stageError

/* 9/11/2020 I am having problems with this triggering.
             So will try a second time.  That is working for me.
             I do not know why this is.  I'm thinking it is
             in the COMPARE stage, which in my tests, follows
             this stage. But it works for all other stages.
             In my tests, I get lots of the first message,
             and none of the second.  Jeff Hennick
*/
      say '******* Output problem with' record_out', re-trying ********'
      do
        output(record_out)
      catch stageError
        say '********* Bad again,' record_out '*******'
      end
    end
    readto()
  catch stageError
    rc = rc()
  end Main
  Exit(rc*(rc<>12))

Any insight you have would be most welcome.

Incidentally, using Java's Regular Expressions makes this loop easy, in Rexx it would be excruciating, with all of the options that the strip stage has.  Even building the almost unreadable pattern from the options, one step at a time, is straight forward.



_______________________________________________
Ibm-netrexx mailing list
[hidden email]
Online Archive : http://ibm-netrexx.215625.n3.nabble.com/



_______________________________________________
Ibm-netrexx mailing list
[hidden email]
Online Archive : http://ibm-netrexx.215625.n3.nabble.com/


Virus-free. www.avg.com

_______________________________________________
Ibm-netrexx mailing list
[hidden email]
Online Archive : http://ibm-netrexx.215625.n3.nabble.com/

Thomas Schneider, Vienna, Austria (Europe) :-)

www.thsitc.com
www.db-123.com
Reply | Threaded
Open this post in threaded view
|

Re: NetRexx / Pipelines problems with output() and stageErrors

Jason Martin
In reply to this post by Jeff Hennick-3
 From build log today:

Are are of these OK?

Especially the third one about 'StageError'.

/build/classes/org/netrexx/njpipes/pipes/pipe.nrx 277 4 8] Warning:
Variable is set but not used
/build/classes/org/netrexx/njpipes/stages/combine.nrx 99 6 7] Warning:
Variable is set but not used
/build/classes/org/netrexx/njpipes/stages/filew.nrx 25 61 10] Warning:
Checked exception 'StageError' is in SIGNALS list but is not signalled
within the method
/build/classes/org/netrexx/njpipes/stages/strtolabel.nrx 40 4 8]
Warning: Variable is set but not used
/build/classes/org/netrexx/njpipes/pipes/compiler.nrx 119 7 6] Warning:
Variable is set but not used
/build/classes/org/netrexx/njpipes/pipes/compiler.nrx 914 2 2] Warning:
Variable is set but not used
/build/classes/org/netrexx/njpipes/pipes/runner.nrx 48 7 1] Warning:
Variable is set but not used
/build/classes/org/netrexx/njpipes/pipes/runner.nrx 49 11 2] Warning:
Variable is set but not used

_______________________________________________
Ibm-netrexx mailing list
[hidden email]
Online Archive : http://ibm-netrexx.215625.n3.nabble.com/

Reply | Threaded
Open this post in threaded view
|

Re: NetRexx / Pipelines problems with output() and stageErrors

Jason Martin
In reply to this post by Jeff Hennick-3
Also, look closely at these 4 files:


Compilation of 'dateconvert.nrx' failed [2 errors]

Program dateconvert.nrx
   === class org.netrexx.njpipes.stages.dateconvert ===
     method run
       signals ThreadQ
       implements RunnablePool.run
     method stageExit(Rexx,Rexx)
  584 +++ catch ThreadQ
      +++ ^^^^^
      +++ Error: CATCH clause found when not expected
  585 +++ end
      +++ ^^^
      +++ Error: Unexpected END (for example, no unended DO, LOOP, or
SELECT)
       signals ThreadQ
     method getInFormat(Rexx)
     method getOutFormat(Rexx)

Compilation of 'node.nrx' failed [one error]

Program node.nrx
  16 +++ class node extends Object private
     +++       ^^^^
     +++ Error: Class 'java.util.stream.Node' found, but is not public
(it can only be accessed from its own package)

Compilation of 'parse.nrx' failed [one error]

   === class org.netrexx.njpipes.stages.parse ===
     method run
       signals ThreadQ
       implements RunnablePool.run
     method stageExit(Rexx,Rexx)
  164 +++ end
      +++ ^^^
      +++ Error: Unexpected END (for example, no unended DO, LOOP, or
SELECT)

Program pickparse.nrx
   === class org.netrexx.njpipes.stages.pickparse ===
     method run
       signals ThreadQ
       implements RunnablePool.run
     method stageExit(Rexx,Rexx)
  224 +++ end
      +++ ^^^
      +++ Error: Unexpected END (for example, no unended DO, LOOP, or
SELECT)
       signals StageError

_______________________________________________
Ibm-netrexx mailing list
[hidden email]
Online Archive : http://ibm-netrexx.215625.n3.nabble.com/

Reply | Threaded
Open this post in threaded view
|

Re: NetRexx / Pipelines problems with output() and stageErrors

Jason Martin
In reply to this post by Jeff Hennick-3
node.nrx was just me setting special classpath

TRACE OFF may be a new NetRexx BUG

May have had unintended side effects.

Commenting them out allows me to build without errors


dateconvert.nrx:569: --trace off

parse.nrx:148: --trace off

pickparse.nrx:208: --trace off


It is a clear MIND day for now.

_______________________________________________
Ibm-netrexx mailing list
[hidden email]
Online Archive : http://ibm-netrexx.215625.n3.nabble.com/

Reply | Threaded
Open this post in threaded view
|

Re: NetRexx / Pipelines problems with output() and stageErrors

Jason Martin
In reply to this post by Jeff Hennick-3
But this may not be your problem or may be nothing.

Have not looked at the java produced.


_______________________________________________
Ibm-netrexx mailing list
[hidden email]
Online Archive : http://ibm-netrexx.215625.n3.nabble.com/

Reply | Threaded
Open this post in threaded view
|

Re: NetRexx / Pipelines problems with output() and stageErrors

Jeff Hennick-3
In reply to this post by Jason Martin

Jason,

Thank you!  A virtual doughnut for the bug report!

My mistakes in dateconvert.  I published the wrong version.  It is right now, and I cleaned up some old commented-out lines.  I have re-run all 13 sets of tests as well.

But parse and pickparse compile cleanly for me.  I have refreshed them in git.  I recompiled them in my test directory and again, via ant in the git directory.  And re-ran all the tests OK.

Please try recompiling them to confirm you find there are extra end statements.

node.nrx is outside of my area of any (reputed) competence.

Again, thank you for helping this come out right.

Jeff

On 9/12/2020 1:14 PM, Jason Martin wrote:
Also, look closely at these 4 files:


Compilation of 'dateconvert.nrx' failed [2 errors]

Program dateconvert.nrx
  === class org.netrexx.njpipes.stages.dateconvert ===
    method run
      signals ThreadQ
      implements RunnablePool.run
    method stageExit(Rexx,Rexx)
 584 +++ catch ThreadQ
     +++ ^^^^^
     +++ Error: CATCH clause found when not expected
 585 +++ end
     +++ ^^^
     +++ Error: Unexpected END (for example, no unended DO, LOOP, or SELECT)
      signals ThreadQ
    method getInFormat(Rexx)
    method getOutFormat(Rexx)

Compilation of 'node.nrx' failed [one error]

Program node.nrx
 16 +++ class node extends Object private
    +++       ^^^^
    +++ Error: Class 'java.util.stream.Node' found, but is not public (it can only be accessed from its own package)

Compilation of 'parse.nrx' failed [one error]

  === class org.netrexx.njpipes.stages.parse ===
    method run
      signals ThreadQ
      implements RunnablePool.run
    method stageExit(Rexx,Rexx)
 164 +++ end
     +++ ^^^
     +++ Error: Unexpected END (for example, no unended DO, LOOP, or SELECT)

Program pickparse.nrx
  === class org.netrexx.njpipes.stages.pickparse ===
    method run
      signals ThreadQ
      implements RunnablePool.run
    method stageExit(Rexx,Rexx)
 224 +++ end
     +++ ^^^
     +++ Error: Unexpected END (for example, no unended DO, LOOP, or SELECT)
      signals StageError

_______________________________________________
Ibm-netrexx mailing list
[hidden email]
Online Archive : http://ibm-netrexx.215625.n3.nabble.com/


_______________________________________________
Ibm-netrexx mailing list
[hidden email]
Online Archive : http://ibm-netrexx.215625.n3.nabble.com/

Reply | Threaded
Open this post in threaded view
|

Re: NetRexx / Pipelines problems with output() and stageErrors

Jeff Hennick-3
In reply to this post by Jason Martin

Jason,

Several more virtual doughnuts, Sir, and Thank Yous too.

Combine, and strtolabel have been cleaned.  Filew as well; it has been that way for over 20 years.  All also pass the tests I have for them, too.

The others, I'll leave to people much more competent than I.

Jeff

On 9/12/2020 12:48 PM, Jason Martin wrote:
From build log today:

Are are of these OK?

Especially the third one about 'StageError'.

/build/classes/org/netrexx/njpipes/pipes/pipe.nrx 277 4 8] Warning: Variable is set but not used
/build/classes/org/netrexx/njpipes/stages/combine.nrx 99 6 7] Warning: Variable is set but not used
/build/classes/org/netrexx/njpipes/stages/filew.nrx 25 61 10] Warning: Checked exception 'StageError' is in SIGNALS list but is not signalled within the method
/build/classes/org/netrexx/njpipes/stages/strtolabel.nrx 40 4 8] Warning: Variable is set but not used
/build/classes/org/netrexx/njpipes/pipes/compiler.nrx 119 7 6] Warning: Variable is set but not used
/build/classes/org/netrexx/njpipes/pipes/compiler.nrx 914 2 2] Warning: Variable is set but not used
/build/classes/org/netrexx/njpipes/pipes/runner.nrx 48 7 1] Warning: Variable is set but not used
/build/classes/org/netrexx/njpipes/pipes/runner.nrx 49 11 2] Warning: Variable is set but not used

_______________________________________________
Ibm-netrexx mailing list
[hidden email]
Online Archive : http://ibm-netrexx.215625.n3.nabble.com/


_______________________________________________
Ibm-netrexx mailing list
[hidden email]
Online Archive : http://ibm-netrexx.215625.n3.nabble.com/

Reply | Threaded
Open this post in threaded view
|

Re: NetRexx / Pipelines problems with output() and stageErrors

Jason Martin
I updated my cleaning tool and can confirm "trace off" OK.

All compile cleanly now.

Will have to look more at node.nrx


_______________________________________________
Ibm-netrexx mailing list
[hidden email]
Online Archive : http://ibm-netrexx.215625.n3.nabble.com/

Reply | Threaded
Open this post in threaded view
|

Re: NetRexx / Pipelines problems with output() and stageErrors

ThSITC
In reply to this post by Jason Martin
Hello Jason:

Thank You that You detected that TRACE OFF is no valid NetRexx Syntax
(at keast, I do think so ...)

Kindly, Thomas Schneider.

Author of Rexx2Nrx: The Classic Rexx to NetRexx Converter.

www.thsitc.com

www.db-123.com

=========================================================================

Am 12.09.2020 um 20:38 schrieb Jason Martin:

> node.nrx was just me setting special classpath
>
> TRACE OFF may be a new NetRexx BUG
>
> May have had unintended side effects.
>
> Commenting them out allows me to build without errors
>
>
> dateconvert.nrx:569: --trace off
>
> parse.nrx:148: --trace off
>
> pickparse.nrx:208: --trace off
>
>
> It is a clear MIND day for now.
>
> _______________________________________________
> Ibm-netrexx mailing list
> [hidden email]
> Online Archive : https://urldefense.proofpoint.com/v2/url?u=http-3A__ibm-2Dnetrexx.215625.n3.nabble.com_&d=DwICaQ&c=jf_iaSHvJObTbx-siA1ZOg&r=_6rXNpPJ1fYV-3bV1za02NiR4PUelvicfHXwtnTXpXE&m=Nq6iy-4Gb8nE1gyeAgIXA_jvGN4pPmnJCN0lLLEeYSw&s=y-6L1SQ_2bFzRbh08mwSrgRlzOxtL2K7cYteZq4KGwE&e= 
>

--
This email has been checked for viruses by AVG.
https://urldefense.proofpoint.com/v2/url?u=https-3A__www.avg.com&d=DwICaQ&c=jf_iaSHvJObTbx-siA1ZOg&r=_6rXNpPJ1fYV-3bV1za02NiR4PUelvicfHXwtnTXpXE&m=Nq6iy-4Gb8nE1gyeAgIXA_jvGN4pPmnJCN0lLLEeYSw&s=1T5xkqII3t5ava_xwyo707JUJWls3vWBwVz1icYN1LM&e= 

_______________________________________________
Ibm-netrexx mailing list
[hidden email]
Online Archive : http://ibm-netrexx.215625.n3.nabble.com/

Thomas Schneider, Vienna, Austria (Europe) :-)

www.thsitc.com
www.db-123.com
Reply | Threaded
Open this post in threaded view
|

Re: NetRexx / Pipelines problems with output() and stageErrors

Jason Martin
It is OK.

My mistake.

I am a little behind.

_______________________________________________
Ibm-netrexx mailing list
[hidden email]
Online Archive : http://ibm-netrexx.215625.n3.nabble.com/