IBM Mainframe Forum Index
 
Log In
 
IBM Mainframe Forum Index Mainframe: Search IBM Mainframe Forum: FAQ Register
 

WER416B Error meaning


IBM Mainframe Forums -> SYNCSORT
Post new topic   Reply to topic
View previous topic :: View next topic  
Author Message
kbnkb2

New User


Joined: 21 Aug 2006
Posts: 4

PostPosted: Sat Jul 16, 2016 7:28 pm
Reply with quote

Hi,

while running job in mainframe i am getting error

WER177I TURNAROUND SORT PERFORMED
WER045C END SORT PHASE
WER416B SORTIN : EXCP'S=1,UNIT=(VIO)
WER416B SORTOUT : EXCP'S=1,UNIT=(VIO)
WER416B TOTAL OF 2 EXCP'S ISSUED FOR SORTING
WER246I FILESIZE 30,844 BYTES
WER054I RCD IN 44, OUT 44
WER072I EQUALS, IO IN EFFECT
WER169I RELEASE 2.1

Is the error

WER416B SORTIN : EXCP'S=1,UNIT=(VIO)
WER416B SORTOUT : EXCP'S=1,UNIT=(VIO)
WER416B TOTAL OF 2 EXCP'S ISSUED FOR SORTING

is due to duplicate records in input file? I Couldn't find explanation of this WER416B.
Back to top
View user's profile Send private message
Bill Woodger

Moderator Emeritus


Joined: 09 Mar 2011
Posts: 7309
Location: Inside the Matrix

PostPosted: Sat Jul 16, 2016 8:09 pm
Reply with quote

Why do you think those are errors? They are just telling you information about the files processed?

There are no errors that you show. These would be WERnnnA.
Back to top
View user's profile Send private message
kbnkb2

New User


Joined: 21 Aug 2006
Posts: 4

PostPosted: Sat Jul 16, 2016 8:31 pm
Reply with quote

Since the message for WER416B shows as exceptions, i thought this would be an error message. we are getting this message in mainframe where as in migrated platform(Linux) we are getting duplicate records for IDCAMS load step which uses sorted file created by Previous step. So interested to know if this message mean duplicate records?

Thanks!
Back to top
View user's profile Send private message
Robert Sample

Global Moderator


Joined: 06 Jun 2008
Posts: 8696
Location: Dubuque, Iowa, USA

PostPosted: Sat Jul 16, 2016 8:51 pm
Reply with quote

Quote:
So interested to know if this message mean duplicate records?
Is there ANY mention in the messages about duplicate record(s)? If not, why on earth would you think the message has anything to do with duplicate records?
Back to top
View user's profile Send private message
Bill Woodger

Moderator Emeritus


Joined: 09 Mar 2011
Posts: 7309
Location: Inside the Matrix

PostPosted: Sat Jul 16, 2016 8:57 pm
Reply with quote

Goodness, gracious, me.

Find out what EXCP means in a Mainframe context. Don't jump to the conclusion that the whole world revolves around your jargon.

If you are getting duplicate keys (IDCAMS on Linux? You mean a Micro Focus (or someone) emulated IDCAMS?)) it means you have duplicate keys in your data. Have you looked at the data? Remember, how you have defined a key is crucial to what the computer thinks is the key. If you think something else is the key - you are wrong, and the computer is correct. Possible hint. Check whether your emulated VSAM file has the key defined in the same place, and is the same length. Further hint. 0 and 1 (and their offset cousins) could be massively more significant than you think.

If you venture into someone else's world, either assume nothing, or pay someone who knows. The Mainframe world is big on documentation of products. There's tons of "VSAM" stuff, and your Mainframe contacts should be able to provide you with MFX/SyncSORT documentation so you can even read exactly what those messages mean.
Back to top
View user's profile Send private message
steve-myers

Active Member


Joined: 30 Nov 2013
Posts: 917
Location: The Universe

PostPosted: Sat Jul 16, 2016 9:02 pm
Reply with quote

An "EXCP" is a low level macro used to start I/O. Both Syncsort and DFSORT use the EXCP macro directly since its proper use often provides for greater I/O through put than higher level I/O mechanisms such as "BSAM" or "QSAM."

As a user of and proponent of EXCP, I also know, from experience, that these improved I/O rates are often illusory; the improvements in "QSAM" and "BSAM" that date back to the Data Facility Product in the 1970s produced I/O improvements that are often nearly as good as aggressive use of EXCP. Most of the EXCP code in Syncsort and DFSORT predates DFP; in any event "nearly" is not equal or "better."

Actually, it seems to me that EXCP bought nothing here; "QSAM" and "BSAM" would work just as well for the small data set that was sorted here.

As Mr. Woodger says, these WER416B messages are not error messages; they are just Syncsort crowing about how good it is.
Back to top
View user's profile Send private message
kbnkb2

New User


Joined: 21 Aug 2006
Posts: 4

PostPosted: Sun Jul 17, 2016 3:51 pm
Reply with quote

Thanks for the updates. I have verified MF & Linux(IDCAMS on Linux) key positions and offsets and both are defined same. I will try putting displays to verify the keys are duplicate.
Back to top
View user's profile Send private message
enrico-sorichetti

Superior Member


Joined: 14 Mar 2007
Posts: 10873
Location: italy

PostPosted: Sun Jul 17, 2016 8:46 pm
Reply with quote

again, what have the WER416B INFORMATIVE messages to do with duplicate records

EXCP is not the abbreviation/whatsoever of EXCEPTION
but the acronym for EXecute Channel Program
and relates to the INPUT/OUTPUT pseudo-instructions executed
Back to top
View user's profile Send private message
sergeyken

Senior Member


Joined: 29 Apr 2008
Posts: 2018
Location: USA

PostPosted: Thu Aug 11, 2016 3:41 am
Reply with quote

enrico-sorichetti wrote:
EXCP is not the abbreviation/whatsoever of EXCEPTION
but the acronym for EXecute Channel Program
and relates to the INPUT/OUTPUT pseudo-instructions executed


More precisely, EXCP is System/Z central processor machine instruction which initiates a specific Channel Program - the sequence of physical input/output instructions running separately on one of specific I/O processors; the name of those processors in System/Z is "I/O channel".

Some equivalent for EXCP on other platforms is: the call to a device driver routine.

EXCP count can be considered as count of real physical input/output operations. The less is EXCP count, the faster total execution time could be expected.
Back to top
View user's profile Send private message
steve-myers

Active Member


Joined: 30 Nov 2013
Posts: 917
Location: The Universe

PostPosted: Thu Aug 11, 2016 12:35 pm
Reply with quote

sergeyken wrote:
...
More precisely, EXCP is System/Z central processor machine instruction which initiates a specific Channel Program - the sequence of physical input/output instructions running separately on one of specific I/O processors; the name of those processors in System/Z is "I/O channel".

There are two errors here.
  1. EXCP is actually an Assembler macro provided by IBM. It directs the system to run a "channel program," a sequence of instructions that direct the I/O hardware to perform I/O operations. Since there are no longer "channels" in the hardware, the term "channel" is a misnomer; it refers to 1960s I/O hardware. The machine instruction, which ordinary programmers cannot use, used to start an I/O operation is "Start Subchannel."
  2. I/O is now run by a separate processor.
Quote:
Some equivalent for EXCP on other platforms is: the call to a device driver routine.
This is actually quite correct for operations in z/OS. EXCP actually starts a function that is quite similar to a device driver in other platforms. It does, in a fairly literal sense, bend, fold, staple and mutilate the "channel program" provided to the EXCP macro by the programmer. Under the covers, this I/O driver actually issues a STARTIO macro (something us ordinary programmers can't do) to run the modified I/O instructions. After the I/O completes it transforms the I/O status into an analogue of the System/360 status before us ordinary programmers get control again.

To some extent it has always worked this way. In OS/360, as well as z/OS, us ordinary programmers might write this "channel program" to read a data record from a disk.
Code:
         CCW   X'31',diskaddress,X'40',5
         CCW   X'08',*-8,0,0
         CCW   X'06',dataarea,0,length
CCW is an Assembler instruction to prepare a data area for the I/O system. The first 2 instructions search a track for the correct record, the third instruction actually reads the record. These instructions are not complete; there are no instructions to direct the disk drive to move the access mechanism to the correct place, and there are other missing pieces. OS/360 EXCP would prepare
Code:
         CCW   X'07',diskaddress,X'40',4
         CCW   X'1F',controlarea,X'40',1
and effectively insert them before our channel program. There could be more CCWs, by the way. The first CCW directs the disk drive to move the I/O mechanism to the correct place; the second CCW provides limits on what the remaining CCWs can do.
Back to top
View user's profile Send private message
View previous topic :: :: View next topic  
Post new topic   Reply to topic View Bookmarks
All times are GMT + 6 Hours
Forum Index -> SYNCSORT

 


Similar Topics
Topic Forum Replies
No new posts Error to read log with rexx CLIST & REXX 11
No new posts Error when install DB2 DB2 2
No new posts CLIST - Virtual storage allocation error CLIST & REXX 5
No new posts Error while running web tool kit REXX... CLIST & REXX 5
No new posts Getting Error while trying to establi... DB2 3
Search our Forums:

Back to Top