Page 1 of 1

Flush in JCL

PostPosted: Tue Feb 09, 2010 9:49 pm
by Vinayak
Dear all,
as i am new to JCL please tell me what is exact meaning 'Flush' in JCL and is it a return code?
What exactly happens to the system when a step is FLUSH.

Thanks,
Vinayak

Re: Flush in JCL

PostPosted: Tue Feb 09, 2010 10:10 pm
by Robert Sample
When a step is flushed, either there is a JCL error (in which case the job itself is flushed -- meaning all statements in the job are ignored and not processed any further -- or there is a data set allocation error which can flush the step (condition code checks will flush the step as well). Flushed jobs and steps do not have return codes and did not abend -- they just did not execute at all.

Re: Flush in JCL

PostPosted: Wed Feb 10, 2010 7:09 am
by Vinayak
Thank you for your reply.

I need some more information on Flush i.e. Is FLUSH a RETURN CODE?
if not what it is? (is it a state in which memory flushed out or job is flushed out from memory?)
I just want to know what happens to he memory when job is flushed?

Thank you,
Vinayak.

Re: Flush in JCL

PostPosted: Wed Feb 10, 2010 7:23 am
by Robert Sample
Vinayak wrote:Thank you for your reply.

I need some more information on Flush i.e. Is FLUSH a RETURN CODE?
if not what it is? (is it a state in which memory flushed out or job is flushed out from memory?)
I just want to know what happens to he memory when job is flushed?

Thank you,
Vinayak.

Flush is an action -- it is not a return code. When a step (or job) is flushed, JES ignores everything about the job (step) and does nothing with it. Data sets are not allocated, programs are not run, NOTHING HAPPENS!

Asking about memory in this context indicates you really need to find a z/OS Architecture manual and study it -- at least for several weeks. No memory is allocated or used for a step until the program is ready to run, at which time JES loads the program from the load library into memory and transfers control to it. Since a step flush occurs before this happens, there is no change in memory -- NOTHING HAPPENS -- because the program is not loaded into memory to execute so whatever was in memory before still is there. Note, of course, that you are not distinguishing among the various types of memory and it can be extremely important when discussing memory allocation and management to distinguish between them.