Page 1 of 1

Doubt about run Java into IMS and scheduling steps

PostPosted: Wed Nov 22, 2023 6:32 pm
by jcdm
Hello team,

I am new into this IMs world, so I am facing some issues in my workflow.

I am trying to run 3 trx defined in this way:

APPLCTN GPSB=JAVATRX1,
LANG=JAVA,
PGMTYPE=TP,
SCHDTYP=PARALLEL
*
TRANSACT CODE=JAVATRX1,
PRTY=(8,8,65535),
MSGTYPE=(MULTSEG,NONRESPONSE,100),
SEGNO=000,
MODE=SNGL,
EDIT=ULC,
SERIAL=NO,
PARLIM=0,
MAXRGN=100,
PROCLIM=(100,3)

JMP is defined as:

//IMSJ100A EXEC PROC=DFSJMP,
// TIME=(1440),
// RGN=0M, REGION SIZE FOR EXECUTION
// OPT=W, WAIT FOR CNTRL PRGRM TO START
// PCB=040, DEP RGN INTERREGN COM AREA SIZE
// CL1=600,CL2=000,CL3=000,CL4=000, TRANSACTION CLASS
// NBA=5, FP DB BUFFER NUMBER
// OBA=5, FP PAGE-FIXED BUFFER NUMBER
// IMSID=IVP1, IMSID OF IMS CONTROL REGION
// ENVIRON=DFSJVMEV, JVM ENVIRONMENT SETTINGS
// JVMOPMAS=DFSJVMMS, MASTER/STANDALONE JVM OPTIONS
// PWFI=Y, PSEUDO=WFI
// SSM=ESAF

With 3 trxs stopped, I insert 500, etc messages into the first trx, then, I start the 3 trx and find that despite having the PROCLIM at 100, IMS does not unschedule the first trx and it continues processing the rest of the messages up to 500, once these 500 messages have been processed, IMS apparently still doesnt unschedule the first transaction, so the second transaction does not begin processing.

If we manually stop the first transaction, the messages are processed, but the same thing happens with the 3rd transaction.

I performed same test with COBOL trx, and see that when a trx finishes processing the messages, it is unschedule and the next one start to process. I tried with one and more JMPs started.

Do you think that I need to parameterize anything else in the trx or in the JAVA region?

Any help is appreciated.

Re: Doubt about run Java into IMS and scheduling steps

PostPosted: Wed Nov 22, 2023 8:24 pm
by sergeyken
Help #1:
Please, use the Code button when posting:

jcdm wrote:Hello team,

I am new into this IMs world, so I am facing some issues in my workflow.

I am trying to run 3 trx defined in this way:

      APPLCTN GPSB=JAVATRX1,                          
                LANG=JAVA,                            
                PGMTYPE=TP,                            
                SCHDTYP=PARALLEL                      
 *                                                    
      TRANSACT CODE=JAVATRX1,                          
                PRTY=(8,8,65535),                      
                MSGTYPE=(MULTSEG,NONRESPONSE,100),    
                SEGNO=000,                            
                MODE=SNGL,                            
                EDIT=ULC,                              
                SERIAL=NO,                            
                PARLIM=0,                              
                MAXRGN=100,                            
                PROCLIM=(100,3)  


JMP is defined as:

//IMSJ100A EXEC PROC=DFSJMP,                                            
//         TIME=(1440),                                                
//         RGN=0M,                       REGION SIZE FOR EXECUTION      
//         OPT=W,                        WAIT FOR CNTRL PRGRM TO START  
//         PCB=040,                      DEP RGN INTERREGN COM AREA SIZE
//         CL1=600,CL2=000,CL3=000,CL4=000,  TRANSACTION CLASS          
//         NBA=5,                        FP DB BUFFER NUMBER            
//         OBA=5,                        FP PAGE-FIXED BUFFER NUMBER    
//         IMSID=IVP1,              IMSID OF IMS CONTROL REGION        
//         ENVIRON=DFSJVMEV,             JVM ENVIRONMENT SETTINGS      
//         JVMOPMAS=DFSJVMMS,            MASTER/STANDALONE JVM OPTIONS  
//         PWFI=Y,                PSEUDO=WFI                            
//         SSM=ESAF    


With 3 trxs stopped, I insert 500, etc messages into the first trx, then, I start the 3 trx and find that despite having the PROCLIM at 100, IMS does not unschedule the first trx and it continues processing the rest of the messages up to 500, once these 500 messages have been processed, IMS apparently still doesnt unschedule the first transaction, so the second transaction does not begin processing.

If we manually stop the first transaction, the messages are processed, but the same thing happens with the 3rd transaction.

I performed same test with COBOL trx, and see that when a trx finishes processing the messages, it is unschedule and the next one start to process. I tried with one and more JMPs started.

Do you think that I need to parameterize anything else in the trx or in the JAVA region?

Any help is appreciated.