#01 NO SORT MEM:01290 WDS RQD
MarcoAntonio1985 opened this issue · comments
Dears
I'm having difficulty running a COBOL program that uses the SORT verb. The emulator configuration has all memory modules active. Even when I perform a halt/load, the MCP reports a lack of memory for SORT. Does anyone know if I'm making a mistake?
SPO:
CC EXECUTE FP0011/MARCO;END
4:FP0011/MARCO/SITE= 1 BOJ 0904
#NO FIL FITAE 1:FP0011/MARCO= 1
1 IL MTB
MTB IN 0 FITAE 1:FP0011/MARCO= 1
#1 NO SORT MEM:01290 WDS RQD
====================================================================================
LABEL 000000000OUTPT 00185130?COMPILE FP0011/MARCO WITH COBOL68 FOR LIBRARY COBOL68/FP0011
B - 5 7 0 0 C O D A S Y L - 6 8 C O B O L C O M P I L E R LEVEL XIII. 0. 0
START OF SEGMENT 1 ********
END OF SEGMENT 1 SIZE = 3 WORDS
START OF SEGMENT 2 ********
DATA SEGMENT, SIZE = 54 WORDS
000010 IDENTIFICATION DIVISION. 0002:0002:3
000020 PROGRAM-ID. FP0011. 0002:0002:3
000030 AUTHOR. MARCO ANTONIO. 0002:0002:3
000040 DATE-WRITTEN. JAN-2010. 0002:0002:3
000050*REMARKS. CURSO COBOL - IMPRESSAO SIMPLES. 0002:0002:3
000060 ENVIRONMENT DIVISION. 0002:0002:3
000062 CONFIGURATION SECTION. 0002:0002:3
000065 SOURCE-COMPUTER. B-5700. 0002:0002:3
WARNING 011:MUST START IN MARGIN A*** SOURCE-COMPUTER WWWWWWWW
000066 OBJECT-COMPUTER. B-5700 0002:0002:3
WARNING 011:MUST START IN MARGIN A*** OBJECT-COMPUTER WWWWWWWW
000067 SORT MEMORY SIZE 2000 WORDS. 0002:0002:3
000070 SPECIAL-NAMES. 0002:0002:3
000080 DECIMAL-POINT IS COMMA. 0002:0002:3
000090 INPUT-OUTPUT SECTION. 0002:0002:3
000100 FILE-CONTROL. 0002:0002:3
000120 SELECT SORTER-FILE ASSIGN TO SORT DISK. 0002:0002:3
000122 SELECT FITAE ASSIGN TO TAPE. 0002:0002:3
000122 SELECT FITAS ASSIGN TO TAPE. 0002:0002:3
000150 DATA DIVISION. 0002:0002:3
000160 FILE SECTION. 0002:0002:3
000180 SD SORTER-FILE. 0002:0002:3
000182 0002:0003:3
000190 0002:0003:3
000192 0002:0003:3
000206 01 REG-SORT. 0002:0003:3
000207 02 CODIGO PIC 9(0007). 0002:0003:3
000208 02 ESTADO PIC X(0018). 0002:0003:3
000209 02 SIGLA PIC X(0002). 0002:0003:3
000210 02 FILLER PIC X(0004). 0002:0003:3
000211 02 REGIAO PIC X(0002). 0002:0003:3
000212 02 FILLER PIC X(0010). 0002:0003:3
000213 02 CIDADE PIC X(0024). 0002:0003:3
000214 02 FILLER PIC X(0011). 0002:0003:3
000215 0002:0003:3
000216 FD FITAE 0002:0003:3
000217 LABEL RECORD IS STANDARD 0002:0003:3
000218 VALUE OF ID IS "FITAE". 0002:0014:0
WARNING 086:SEQUENCE ERROR*** 000218>000206 WWWWWWWW
000206 01 REG-FITAE. 0002:0014:0
000207 02 CODIGOE PIC 9(0007). 0002:0014:0
000208 02 ESTADOE PIC X(0018). 0002:0014:0
000209 02 SIGLAE PIC X(0002). 0002:0014:0
000210 02 FILLERE PIC X(0004). 0002:0014:0
000211 02 REGIAOE PIC X(0002). 0002:0014:0
000212 02 FILLER PIC X(0010). 0002:0014:0
000213 02 CIDADEE PIC X(0024). 0002:0014:0
000214 02 FILLER PIC X(0011). 0002:0014:0
000216 FD FITAS 0002:0014:0
000217 LABEL RECORD IS STANDARD 0002:0014:0
000218 VALUE OF ID IS "FITAS". 0002:0024:1
WARNING 086:SEQUENCE ERROR*** 000218>000206 WWWWWWWW
000206 01 REG-FITAE. 0002:0024:1
000207 02 CODIGOS PIC 9(0007). 0002:0024:1
000208 02 ESTADOS PIC X(0018). 0002:0024:1
000209 02 SIGLAS PIC X(0002). 0002:0024:1
000210 02 FILLERS PIC X(0004). 0002:0024:1
000211 02 REGIAOS PIC X(0002). 0002:0024:1
000212 02 FILLER PIC X(0010). 0002:0024:1
000213 02 CIDADES PIC X(0024). 0002:0024:1
000214 02 FILLER PIC X(0011). 0002:0024:1
WARNING 086:SEQUENCE ERROR*** 000214>000210 WWWWWWWW
000210 WORKING-STORAGE SECTION. 0002:0024:1
000215 77 FIM PIC X(001) VALUE "N". 0002:0024:1
WARNING 086:SEQUENCE ERROR*** 000215> WWWWWWWW
0002:0026:0
000630 PROCEDURE DIVISION. 0002:0026:0
000640 INICIAL. 0002:0026:0
END OF SEGMENT 2 SIZE = 29 WORDS
START OF SEGMENT 14 ********
END OF SEGMENT 14 SIZE = 7 WORDS
000650 0014:0000:0
START OF SEGMENT 15 ********
000660 SORT SORTER-FILE 0015:0001:0
000670 ON ASCENDING KEY REGIAO ESTADO CIDADE 0015:0001:0
START OF SEGMENT 16 ********
000680 USING FITAE 0016:0034:0
000690 GIVING FITAS. 0016:0052:0
END OF SEGMENT 16 SIZE = 46 WORDS
000832 STOP RUN. 0015:0022:1
000999 0015:0023:1
END OF SEGMENT 15 SIZE = 26 WORDS
DATA SEGMENT, SIZE = 12 WORDS
END OF SEGMENT 12 SIZE = 22 WORDS
END OF SEGMENT 13 SIZE = 22 WORDS
COMPILED OK
COMPILATION TIME = 13 SECONDS ELAPSED, 5 SECONDS PROCESSOR
TOTAL NUMBER INPUT IMAGES = 69
PRT SIZE = 42
TOTAL SEGMENT SIZE = 177 WORDS
DISK SIZE = 15 SEGMENTS
NUMBER OF PROGRAM SEGMENTS = 5
ESTIMATED CORE STORAGE = 6732 WORDS
LABEL 000000000OUTPT 00185130?COMPILE FP0011/MARCO WITH COBOL68 FOR LIBRARY COBOL68/FP0011
I switched back to the default MCP and it worked as designed. TSS/MCP has a FS variable that regulates the timeshare batch environment. I didn't change the variable. I just went back to the default MCP.
Glad to hear that you got the program to work under the DC MCP.
I don't think that use of TSS/MCP or the setting of FS are the cause of your problem. Note that the error message you got was "#1 NO SORT MEM:01290 WDS RQD." It was the SORT intrinsic that ran out of memory, not the system.
In your program, you have "OBJECT-COMPUTER. B-5700. SORT MEMORY SIZE 2000 WORDS." I think the error message was telling you that the SORT needed another 1290 words in order to be able to function.
The amount of memory required by the sort depends on two things, the size of the records you are sorting and how fast you want the sort to run. The more memory it has to work with, the more records it can hold in core memory at a time, and the more partial sorting of records it can do in memory before it needs to write groups of partially-sorted records out to tape or disk. Thus the faster the sort can finish.
The default sort memory size is 12,000 words, which is probably too much for the TSS environment to handle. I'd suggest trying this again under TSS with memory size specified as 4,000 words. If that doesn't work, try increasing the size by 1,000 words at a time.