Page 1 of 3

Different behavior when SYSIN's content is inside a dataset.

PostPosted: Mon Oct 28, 2013 9:58 pm
by tivrfoa
Hi,

When I place the exactly same content in a dataset to use in SYSIN, the result is different.

Using this way I got a wrong result.
//SYSIN   DD DSN=dataset-with-sysin,DISP=SHR


code inside dataset-with-sysin: lrecl 80
  SORT FIELDS=(01,01,ZD,A,   ** TIP-REG       
               16,04,ZD,A,   ** ANO DT-JTRB   
               13,02,ZD,A,   ** MES DT-JTRB   
               10,02,ZD,A,   ** DIA DT-JTRB   
               02,08,ZD,A)   ** NR-PSSL       
  INREC FIELDS=(01,231,16,04,13,02,10,02)     
  OUTFIL INCLUDE=((232,08,ZD,EQ,20130924,AND, 
                   02,08,ZD,GT,00070000),OR,   
                   232,08,ZD,GT,20130924,OR,   
                   1,1,ZD,EQ,0,OR,1,1,ZD,EQ,9),
         OUTREC=(01,231)                       


This way works:
//SORT001 EXEC PGM=SORT                                   
//SYSOUT  DD SYSOUT=*                                     
//SORTIN  DD DSN=My-dataset,DISP=SHR
//SORTOUT DD SYSOUT=*                                     
//SYSIN   DD *                                             
  SORT FIELDS=(01,01,ZD,A,   ** TIP-REG                   
               16,04,ZD,A,   ** ANO DT-JTRB               
               13,02,ZD,A,   ** MES DT-JTRB               
               10,02,ZD,A,   ** DIA DT-JTRB               
               02,08,ZD,A)   ** NR-PSSL                   
  INREC FIELDS=(01,231,16,04,13,02,10,02)                 
  OUTFIL INCLUDE=((232,08,ZD,EQ,20130924,AND,             
                   02,08,ZD,GT,00070000),OR,               
                   232,08,ZD,GT,20130924,OR,               
                   1,1,ZD,EQ,0,OR,1,1,ZD,EQ,9),           
         OUTREC=(01,231)                                   
/*                                                         


sortin content: lrecl 231

0header
10000000124.09.2013
...
10007000024.09.2013
9trailer

The result should have only the header and trailer, but when placing SYSIN logic inside a dataset, all records are placed in the result dataset.
It as if it only had an OPTION COPY ... :cry:

Re: Different behavior when SYSIN's content is inside a data

PostPosted: Mon Oct 28, 2013 10:16 pm
by BillyBoyo
You need to post the sysout from both the steps, please.

Re: Different behavior when SYSIN's content is inside a data

PostPosted: Mon Oct 28, 2013 10:43 pm
by tivrfoa
BillyBoyo wrote:You need to post the sysout from both the steps, please.

===> Using dataset in SYSIN:
0header...
10000000124.09.2013...
10000000224.09.2013...
10000000324.09.2013...
...
9trailer...

SYSIN :                                                                 
  SORT FIELDS=(01,01,ZD,A,   ** TIP-REG                                 
               16,04,ZD,A,   ** ANO DT-JTRB                             
               13,02,ZD,A,   ** MES DT-JTRB                             
               10,02,ZD,A,   ** DIA DT-JTRB                             
               02,08,ZD,A)   ** NR-PSSL                                 
  INREC FIELDS=(01,231,16,04,13,02,10,02)                               
  OUTFIL INCLUDE=((232,08,ZD,EQ,20130924,AND,                           
                 02,08,ZD,GT,00070000),OR,                               
                 232,08,ZD,GT,20130924,OR,                               
                 1,1,ZD,EQ,0,OR,1,1,ZD,EQ,9),                           
       OUTREC=(01,231)                                                   
WER276B  SYSDIAG= 12115953, 15700882, 15700882, 5615700                 
WER164B  21,224K BYTES OF VIRTUAL STORAGE AVAILABLE, MAX REQUESTED,     
WER164B     0 BYTES RESERVE REQUESTED, 21,116K BYTES USED               
WER146B  12K BYTES OF EMERGENCY SPACE ALLOCATED                         
WER108I  SORTIN   : RECFM=FB   ; LRECL=   231; BLKSIZE= 27951           
WER073I  SORTIN   : DSNAME=XXXXXXX           
WER110I  SORTOUT  : RECFM=FB   ; LRECL=   231; BLKSIZE= 27951           
WER074I  SORTOUT  : DSNAME=XXXXX.J9101234.JOB55541.D0000102.?         
WER410B  20,196K BYTES OF VIRTUAL STORAGE AVAILABLE ABOVE THE 16MEG LINE,
WER410B     0 BYTES RESERVE REQUESTED, 20,196K BYTES USED               
WER036B  G=70067                                                         
WER177I  TURNAROUND SORT PERFORMED                                       
WER045C  END SORT PHASE                                                 
WER493I  ZIIP PROCESSOR USED                                             
WER211B  SYNCSMF  CALLED BY SYNCSORT; RC=0000                           
WER416B  SORTIN   : EXCP'S=13,UNIT=3390,DEV=A46A,CHP=(D8D9DADB,1),VOL=DS0
WER416B  BSAM WAS USED FOR SORTOUT                                       
WER246I  FILESIZE 16,170,462 BYTES                                       
WER054I  RCD IN      70002, OUT      70002                               
WER072I  NOEQUALS, BALANCE IN EFFECT                                     
WER169I  RELEASE 1.4 BATCH 0520 TPF LEVEL 1.0                           
WER052I  END SYNCSORT - J9101234,SORT001,


There's no mention of INREC nor OUTFIL in this sysout ... :roll:

===> Using inline in SYSIN:
0header...
9trailer...

SYSIN :                                                             
  SORT FIELDS=(01,01,ZD,A,   ** TIP-REG                             
               16,04,ZD,A,   ** ANO DT-JTRB                         
               13,02,ZD,A,   ** MES DT-JTRB                         
               10,02,ZD,A,   ** DIA DT-JTRB                         
               02,08,ZD,A)   ** NR-PSSL                             
  INREC FIELDS=(01,231,16,04,13,02,10,02)                           
  OUTFIL INCLUDE=((232,08,ZD,EQ,20130924,AND,                       
                   02,08,ZD,GT,00070000),OR,                       
                   232,08,ZD,GT,20130924,OR,                       
                   1,1,ZD,EQ,0,OR,1,1,ZD,EQ,9),                     
         OUTREC=(01,231)                                           
WER276B  SYSDIAG= 12135529, 15702683, 15702683, 5615850             
WER164B  24,612K BYTES OF VIRTUAL STORAGE AVAILABLE, MAX REQUESTED,
WER164B     0 BYTES RESERVE REQUESTED, 24,564K BYTES USED           
WER146B  12K BYTES OF EMERGENCY SPACE ALLOCATED                     
WER108I  SORTIN   : RECFM=FB   ; LRECL=   231; BLKSIZE= 27951       
WER073I  SORTIN   : DSNAME=XXXXXX       
WER257I  INREC RECORD LENGTH =   239                               
WER238I  POTENTIALLY INEFFICIENT USE OF INREC                       
WER110I  SORTOUT  : RECFM=FB   ; LRECL=   231; BLKSIZE= 27951       
WER074I  SORTOUT  : DSNAME=XXXXXX.J9101234.JOB55432.D0000103.?     
WER410B  23,584K BYTES OF VIRTUAL STORAGE AVAILABLE ABOVE THE 16MEG LINE
WER410B     0 BYTES RESERVE REQUESTED, 23,580K BYTES USED           
WER036B  G=11641,B=214,BIAS=99                                     
WER162B  0 PREALLOCATED SORTWORK TRACKS, 150 DYNAMICALLY ALLOCATED,
WER162B     0 ACQUIRED IN SECONDARY EXTENTS, 0 RELEASED, TOTAL OF 17 TRACKS USED
WER045C  END SORT PHASE                                             
WER418I  DATASPACE(S) AND/OR ZSPACE USED                           
WER405I  SORTOUT  :  DATA RECORDS OUT          2; TOTAL RECORDS OUT
WER493I  ZIIP PROCESSOR USED                                       
WER211B  SYNCSMF  CALLED BY SYNCSORT; RC=0000                       
WER416B  SORTIN   : EXCP'S=4,UNIT=3390,DEV=A46A,CHP=(D8D9DADB,1),VOL
WER416B  OUTFIL WAS USED FOR SORTOUT                                   
WER416B  SORTWK01 : EXCP'S=6,UNIT=3390,DEV=A402,CHP=D8D9DADB,VOL=DS0Z06
WER416B  SORTWK02 : EXCP'S=3,UNIT=3390,DEV=A14E,CHP=D8D9DADB,VOL=DS0X33
WER416B  TOTAL OF 9 EXCP'S ISSUED FOR SORTWORKS                       
WER246I  FILESIZE 16,730,478 BYTES                                     
WER054I  RCD IN      70002, OUT      70002                             
WER072I  NOEQUALS, BALANCE IN EFFECT                                   
WER169I  RELEASE 1.4 BATCH 0520 TPF LEVEL 1.0                         
WER052I  END SYNCSORT - J9101234,SORT001,,DIAG=A100,FA91,88BA,6C44,E947

Re: Different behavior when SYSIN's content is inside a data

PostPosted: Mon Oct 28, 2013 11:08 pm
by Akatsukami
Well, what do you expect for different input data?

Re: Different behavior when SYSIN's content is inside a data

PostPosted: Mon Oct 28, 2013 11:12 pm
by tivrfoa
Akatsukami wrote:Well, what do you expect for different input data?

SORTIN is the same ...

Re: Different behavior when SYSIN's content is inside a data

PostPosted: Mon Oct 28, 2013 11:21 pm
by Akatsukami
Then why do the WER036B and WER246I messages differ?

Re: Different behavior when SYSIN's content is inside a data

PostPosted: Mon Oct 28, 2013 11:32 pm
by tivrfoa
Akatsukami wrote:Then why do the WER036B and WER246I messages differ?

Hi Akatsukami. I don't know why these values are different, but for sure it's the same SORTIN.
I just did another test, only replacing the inline for the dataset.

Thanks for trying to help.

Re: Different behavior when SYSIN's content is inside a data

PostPosted: Mon Oct 28, 2013 11:43 pm
by Robert Sample
Your first sort has
WER246I  FILESIZE 16,170,462 BYTES                                       
while your second sort has
WER246I  FILESIZE 16,730,478 BYTES                                     
so the file sizes don't match, hence no matter what you claim you are NOT running the same sort twice. And I suspect you are running your sorts on two different LPARs from the messages that appear. The results you are getting would be expected from running different sorts.

Re: Different behavior when SYSIN's content is inside a data

PostPosted: Mon Oct 28, 2013 11:52 pm
by tivrfoa
Robert Sample wrote:so the file sizes don't match, hence no matter what you claim you are NOT running the same sort twice. And I suspect you are running your sorts on two different LPARs from the messages that appear. The results you are getting would be expected from running different sorts.

I don't know what you mean here. Are you saying that I'm lying?

I'm using ROSCOE, runned the job SS, then deleted the inline SYSIN logic and placed the dataset, runned again SS and got different results.

Re: Different behavior when SYSIN's content is inside a data

PostPosted: Tue Oct 29, 2013 12:31 am
by Robert Sample
No, I'm not saying you are lying. I am saying that the file sizes are different, and you need to investigate why that is. Because if the file sizes are different, the sorts are different -- PERIOD.