performance of dynamic memory allocation in linkage section
We are developing a big batch COBOL program which uses lot of storage. There are many arrays which are loaded from DB2 tables. The number of occurrences for all these arrays which vary from run to run. Hence we thought instead of using working storage section for these arrays, we will use linkage section. We are using LE module CEEGTST to get heap storage and allocating linkage storage memory dynamically. We have defined the array as OCCURS 1 TO 1 TIMES DEPENDING ON ws-table-size. We calculate ws-table-size in the start of program and get only that much of storage from heap. The aim is to limit the program's memory requirement and improve performance. But the flip side is that this main program calls many called modules for each record processing. So for all the calls main program has to call the sub-routine with the entire linkage section. The estimate is that the total linkage section of the main program will not exceed 5 to 10 MB. For a large processing run, the total number of calls can be around 50 million. Another way would have been to declare all the arrays in working storage with large occurrences (e.g. OCCURS 5000 TIMES) and make it EXTERNAL. Then there will not be any need to pass data in the call and all the programs will get the required data. But this will also increase the storage requirement of working storage. We are not able to judge which method is best for performance in the long run. Coding both ways and testing will be time consuming and we do have that much time in the project. Any suggestion or recommendation please -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO Search the archives at http://bama.ua.edu/archives/ibm-main.html
memory/address sharing in batch mode
hi, Has anyone come across or heard of or actually worked on technical design in mainframe where memory/address/data can be passed or shared in parallel by two different jobs? E.g. scenario is Job A executes program A and job B executes either program A or another program B. Both jobs are running in parallel. The aim is to have a common memory/address space which is available to both programs A and B or both the copies of A simultaneously. -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO Search the archives at http://bama.ua.edu/archives/ibm-main.html
Re: Is there a way to execute the same non-CICS DB2 COBOL program in both batch and online?
hi Steve, The problem we have in our Endevor setup is that such a processor group is not setup which will have two link-edit steps to write to two different load modules. Is such a processor group available by defult in CA-Endevor or has to be customised? -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO Search the archives at http://bama.ua.edu/archives/ibm-main.html
Is there a way to execute the same non-CICS DB2 COBOL program in both batch and online?
Hello, My understanding is that DB2 CAF for CICS and batch environments are different because of which two different load modules are needed to run in these environments even when the actual program may be same. In my project there are many COBOL programs which have DB2 statements but no CICS and are needed for both batch and online. They are just service programs. Currently we have to create two different programs with almost identical code to get two different load modules. If there is some way where we can have only one program load module work in both environments, it will be very helpful. We are using CA-Endevor as change management software which also currently can not create two physically different load modules for the same code otherwise that also could have worked for us. Any suggestion or trick or mechanism will be highly appreciated. Thanks, Amlan -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO Search the archives at http://bama.ua.edu/archives/ibm-main.html
LE Dump
Hi, Can anyone please suggest the method to invoke the LE diagnostic and dump facility at run time. My installation has Abend-Aid installed which by default produces its own dump and also can be turned off at run time. But I am looking to turn on CEEDUMP at runtime which I find more easy for abend resolution. Thanks, Amlan -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO Search the archives at http://bama.ua.edu/archives/ibm-main.html
Re: Copy replacing without pseudo code
sorry, yes i meant COBOL pseudo-text. So basically when I have pseudo-text, the replacing option works well. I want to do the same when the copybook does not have any pseudo-text. thanks, Amlan -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO Search the archives at http://bama.ua.edu/archives/ibm-main.html
Copy replacing without pseudo code
hi, I have a copybook AMRMRL for a file layout which has no pseudo code inside. I want to use this same copybook twice in the program for two different files. I coded the below syntax: COPY AMRMRL REPLACING AMRM BY AMXX. COPY AMRMRL. but after compiler expansion the replacement did not happen and both the exopanded copybook had AMRM only. Such options are very much used in my system where other copybooks have pseudo code like :AMBS:-RECORD. Anyone please let me know an alternative to changing the whole copybook to put pseudo code of :AMRM:. Thanks, Amlan -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO Search the archives at http://bama.ua.edu/archives/ibm-main.html
Automatic LRECL in JCL
Hi, Is it possible in the JCL to avoid coding LRECL for datasets which created new. If it can be automatically understood based on the COBOL program creating then any change to the code will not require JCL changes. We have frequent file length changes and often some JCL changes are missed and ABEND is faced. I am aware it is not mandatory to code for SORT. It will pick the LRECL for SORTOUT based on SORTIN. Thanks, Amlan -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO Search the archives at http://bama.ua.edu/archives/ibm-main.html
CRC checksum generation on COBOL for the full file
Hi, I have got a requirement to calculate the checksum of the full file for COBOL based application running on a mainframe. I have the CRC checsum calculating assembler routine which can calulate the checksum for one record or for a portion of working-storage but I need the checksum to be calculated on the whole file after it has been complteley created. The number of records in the file also is not fixed so how many bytes the file is occupying can not be fixed in the begining. Thanks, Amlan -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO Search the archives at http://bama.ua.edu/archives/ibm-main.html
Closing VSAM File
Suppose program 'A' is processing a VSAM file and abends in middle. What happens to the VSAM file? Will it be closed automatically? If by chance the file is not closed properly because of the abend is there a way or utility by the VSAM can be closed explicitly from outside so that it is available for use. We are facing a abend where the program abends trying to open a file saying that it is already in use or open. We have verified and at that point the file was not accessed by any other user and the program also do not have logic to open multiple times. Some earlier jobs had abended using that file. Thanks, Amlan -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO Search the archives at http://bama.ua.edu/archives/ibm-main.html
Hexadecimal value
Hi, I have a requirement to send the Hex value in the file field. For example after some caluculation I get a 4-char value whose hex equivalent is X'076DC419'. Now I need to pass '076DC419' in a 8-char field to be written in a file. This will be processed by the other system. How can I do it in COBOL in Mainframe? Thanks, Amlan -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO Search the archives at http://bama.ua.edu/archives/ibm-main.html
Expanding Copybook inside Copybook
Hi, I have a copybook inside a copybook. The first copybook is using COPY option with REPLACE. The inside copybook is not getting expanded during compilation and hence I am getting compile errors. Is there any option to expand all the nested copybooks. Thanks, Amlan -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO Search the archives at http://bama.ua.edu/archives/ibm-main.html
CICS file status from batch
Hi, Is there a way to find out the staus of a online file in CICS from a batch job. I want to find in batch whether the file is open or closed in CICS. Thanks, Amlan -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO Search the archives at http://bama.ua.edu/archives/ibm-main.html
CRC Checksum Calculation
Hi, Is there any COBOL code or subroutine available to do the CRC checksum calculation? If no, please advise. Thanks, Amlan -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO Search the archives at http://bama.ua.edu/archives/ibm-main.html
DFSMSDSS-ADRDSSU
Hi, I am using ADRDSSU to unload a old backup dataset. Since the backup was taken long back all the datasets inside have a very old creation date. When this dump is unloaded, the created datasets also gets the same old creation date. This is causing problem because they get deleted immediately because of existing SMS rule. Is there any way that the unloaded dataset is cataloged with a new date rather than the original creation date. Thanks, Amlan -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO Search the archives at http://bama.ua.edu/archives/ibm-main.html